mirror of
https://github.com/DSheirer/sdrtrunk.git
synced 2026-11-12 08:37:25 -05:00
Resolves issue #23.
Adds audio output display and management options supporting mono and stereo output options. Provides audio output supporting prioritization by talkgroup and/or channel selection. Supports muting all channels, or muting individual channels and individual audio gain/volume controls.
This commit is contained in:
@@ -2,35 +2,23 @@ package audio;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import javax.sound.sampled.BooleanControl;
|
||||
import javax.sound.sampled.FloatControl;
|
||||
|
||||
import sample.Listener;
|
||||
import audio.metadata.AudioMetadata;
|
||||
import source.mixer.MixerChannelConfiguration;
|
||||
import audio.output.AudioOutput;
|
||||
|
||||
/**
|
||||
* Interface for controlling one or more audio channels
|
||||
*/
|
||||
public interface IAudioController
|
||||
{
|
||||
public List<String> getAudioChannels();
|
||||
/* Current Mixer and MixerChannel configuration */
|
||||
public void setMixerChannelConfiguration( MixerChannelConfiguration entry ) throws AudioException;
|
||||
public MixerChannelConfiguration getMixerChannelConfiguration() throws AudioException;
|
||||
|
||||
public BooleanControl getMuteControl( String channel ) throws AudioException;
|
||||
|
||||
public boolean hasMuteControl( String channel );
|
||||
|
||||
public FloatControl getGainControl( String channel ) throws AudioException;
|
||||
|
||||
public boolean hasGainControl( String channel );
|
||||
|
||||
public void addAudioEventListener( String channel, Listener<AudioEvent> listener )
|
||||
throws AudioException;
|
||||
|
||||
public void removeAudioEventListener( String channel, Listener<AudioEvent> listener );
|
||||
|
||||
public void setAudioMetadataListener( String channel, Listener<AudioMetadata> listener );
|
||||
|
||||
public void removeAudioMetadataListener( String channel );
|
||||
|
||||
public void setConfigurationChangeListener( Listener<AudioEvent> listener );
|
||||
/* Audio Output(s) */
|
||||
public List<AudioOutput> getAudioOutputs();
|
||||
|
||||
/* Controller Audio Event Listener */
|
||||
public void addControllerListener( Listener<AudioEvent> listener );
|
||||
public void removeControllerListener( Listener<AudioEvent> listener );
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user