/[svn]/jsampler/trunk/src/org/jsampler/task/SetAudioOutputChannelCount.java
ViewVC logotype

Annotation of /jsampler/trunk/src/org/jsampler/task/SetAudioOutputChannelCount.java

Parent Directory Parent Directory | Revision Log Revision Log


Revision 911 - (hide annotations) (download)
Mon Aug 7 18:25:58 2006 UTC (17 years, 8 months ago) by iliev
File size: 2229 byte(s)
updating to JSampler 0.3a

1 iliev 787 /*
2     * JSampler - a java front-end for LinuxSampler
3     *
4     * Copyright (C) 2005 Grigor Kirilov Iliev
5     *
6     * This file is part of JSampler.
7     *
8     * JSampler is free software; you can redistribute it and/or modify
9     * it under the terms of the GNU General Public License version 2
10     * as published by the Free Software Foundation.
11     *
12     * JSampler is distributed in the hope that it will be useful,
13     * but WITHOUT ANY WARRANTY; without even the implied warranty of
14     * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15     * GNU General Public License for more details.
16     *
17     * You should have received a copy of the GNU General Public License
18     * along with JSampler; if not, write to the Free Software
19     * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
20     * MA 02111-1307 USA
21     */
22    
23     package org.jsampler.task;
24    
25     import java.util.logging.Level;
26    
27     import org.jsampler.CC;
28     import org.jsampler.HF;
29    
30     import org.linuxsampler.lscp.AudioOutputDevice;
31    
32     import static org.jsampler.JSI18n.i18n;
33    
34    
35     /**
36 iliev 911 * This task changes the channel number of the speicifed audio output device.
37 iliev 787 * @author Grigor Iliev
38     */
39 iliev 842 public class SetAudioOutputChannelCount extends EnhancedTask {
40 iliev 787 private int deviceID;
41     private int channels;
42    
43     /**
44     * Creates new instance of <code>SetAudioOutputChannelCount</code>.
45     * @param deviceID The id of the device whose channels number will be changed.
46     * @param channels The new number of audio channels.
47     */
48     public
49     SetAudioOutputChannelCount(int deviceID, int channels) {
50     setTitle("SetAudioOutputChannelCount_task");
51     setDescription(i18n.getMessage("SetAudioOutputChannelCount.description", deviceID));
52    
53     this.deviceID = deviceID;
54     this.channels = channels;
55     }
56    
57 iliev 911 /** The entry point of the task. */
58 iliev 787 public void
59     run() {
60     try {
61     CC.getClient().setAudioOutputChannelCount(deviceID, channels);
62    
63     // TODO: This must be done through the LinuxSampler notification system.
64     AudioOutputDevice d = CC.getClient().getAudioOutputDeviceInfo(deviceID);
65     CC.getSamplerModel().getAudioDeviceModel(deviceID).setDeviceInfo(d);
66     } catch(Exception x) {
67     setErrorMessage(getDescription() + ": " + HF.getErrorMessage(x));
68     CC.getLogger().log(Level.FINE, getErrorMessage(), x);
69     }
70     }
71     }

  ViewVC Help
Powered by ViewVC