class InDataSourceDesc
extends java.lang.Object
Private to AudioMixer and AudioMixerPushBufferStream but extracted into its own file for the sake of clarity.
Modifier and Type | Field and Description |
---|---|
javax.media.protocol.DataSource |
inDataSource
The DataSource for which additional information is described by
this instance.
|
AudioMixingPushBufferDataSource |
outDataSource
The AudioMixingPushBufferDataSource in which the mix
contributions of
inDataSource are to not be included. |
Constructor and Description |
---|
InDataSourceDesc(javax.media.protocol.DataSource inDataSource,
AudioMixingPushBufferDataSource outDataSource)
Initializes a new InDataSourceDesc instance which is to
describe additional information about a specific input
DataSource of an AudioMixer.
|
Modifier and Type | Method and Description |
---|---|
(package private) void |
connect(AudioMixer audioMixer)
Connects the effective input DataSource described by this
instance upon request from a specific AudioMixer.
|
(package private) boolean |
createTranscodingDataSource(javax.media.Format outFormat)
Creates a DataSource which attempts to transcode the tracks of
the input DataSource described by this instance into a specific
output Format.
|
(package private) void |
disconnect()
Disconnects the effective input DataSource described by this
instance if it is already connected.
|
java.lang.Object |
getControl(java.lang.String controlType)
Gets the control available for the effective input DataSource
described by this instance with a specific type.
|
javax.media.protocol.DataSource |
getEffectiveInDataSource()
Gets the actual DataSource from which the associated
AudioMixer directly reads in order to retrieve the mix
contribution of the DataSource described by this instance.
|
javax.media.protocol.DataSource |
getInDataSource()
Returns this instance's inDataSource
|
javax.media.protocol.SourceStream[] |
getStreams()
Gets the SourceStreams of the effective input
DataSource described by this instance.
|
TranscodingDataSource |
getTranscodingDataSource()
Returns the TranscodingDataSource object used in this instance.
|
(package private) void |
start()
Starts the effective input DataSource described by this instance
if it is connected.
|
(package private) void |
stop()
Stops the effective input DataSource described by this instance
if it is connected.
|
public final javax.media.protocol.DataSource inDataSource
public final AudioMixingPushBufferDataSource outDataSource
inDataSource
are to not be included.public InDataSourceDesc(javax.media.protocol.DataSource inDataSource, AudioMixingPushBufferDataSource outDataSource)
inDataSource
- a DataSource for which additional
information is to be described by the new instanceoutDataSource
- the AudioMixingPushBufferDataSource in
which the mix contributions of inDataSource are to not be
includedvoid connect(AudioMixer audioMixer) throws java.io.IOException
AudioMixer.connected(InDataSourceDesc)
.audioMixer
- the AudioMixer requesting the effective input
DataSource described by this instance to be connectedjava.io.IOException
- if anything wrong happens while connecting the
effective input DataSource described by this instanceboolean createTranscodingDataSource(javax.media.Format outFormat)
outFormat
- the Format in which the tracks of the input
DataSource described by this instance are to be transcodedvoid disconnect()
public java.lang.Object getControl(java.lang.String controlType)
controlType
- a String value which specifies the type of
the control to be retrievedpublic javax.media.protocol.DataSource getEffectiveInDataSource()
public javax.media.protocol.DataSource getInDataSource()
public javax.media.protocol.SourceStream[] getStreams()
public TranscodingDataSource getTranscodingDataSource()
void start() throws java.io.IOException
java.io.IOException
- if starting the effective input DataSource
described by this instance failsvoid stop() throws java.io.IOException
java.io.IOException
- if stopping the effective input DataSource
described by this instance fails
Jitsi, the OpenSource Java VoIP and Instant Messaging client.
Distributable under Apache license.