net.java.sip.communicator.impl.neomedia.jmfext.media.protocol.portaudio
Class PortAudioStream
java.lang.Object
net.java.sip.communicator.impl.neomedia.control.AbstractControls
net.java.sip.communicator.impl.neomedia.jmfext.media.protocol.AbstractBufferStream
net.java.sip.communicator.impl.neomedia.jmfext.media.protocol.AbstractPullBufferStream
net.java.sip.communicator.impl.neomedia.jmfext.media.protocol.portaudio.PortAudioStream
- All Implemented Interfaces:
- javax.media.Controls, javax.media.protocol.PullBufferStream, javax.media.protocol.SourceStream
public class PortAudioStream
- extends AbstractPullBufferStream
Implements PullBufferStream for PortAudio.
- Author:
- Damian Minkov, Lyubomir Marinov
| Fields inherited from interface javax.media.protocol.SourceStream |
LENGTH_UNKNOWN |
|
Constructor Summary |
PortAudioStream(DataSource dataSource,
javax.media.control.FormatControl formatControl,
boolean audioQualityImprovement)
Initializes a new PortAudioStream instance which is to have its
Format-related information abstracted by a specific
FormatControl. |
|
Method Summary |
protected javax.media.Format |
doGetFormat()
Gets the Format of this PullBufferStream as directly
known by it. |
void |
read(javax.media.Buffer buffer)
Reads media data from this PullBufferStream into a specific
Buffer with blocking. |
(package private) void |
setDeviceIndex(int deviceIndex)
Sets the device index of the PortAudio device to be read through this
PullBufferStream. |
void |
start()
Starts the transfer of media data from this PullBufferStream. |
void |
stop()
Stops the transfer of media data from this PullBufferStream. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface javax.media.protocol.PullBufferStream |
getFormat |
| Methods inherited from interface javax.media.protocol.SourceStream |
endOfStream, getContentDescriptor, getContentLength |
| Methods inherited from interface javax.media.Controls |
getControl, getControls |
PortAudioStream
public PortAudioStream(DataSource dataSource,
javax.media.control.FormatControl formatControl,
boolean audioQualityImprovement)
- Initializes a new PortAudioStream instance which is to have its
Format-related information abstracted by a specific
FormatControl.
- Parameters:
dataSource - the DataSource which is creating the new
instance so that it becomes one of its streamsformatControl - the FormatControl which is to abstract the
Format-related information of the new instanceaudioQualityImprovement - true to enable audio quality
improvement for the new instance in accord with the preferences of the
user or false to completely disable audio quality improvement
doGetFormat
protected javax.media.Format doGetFormat()
- Gets the Format of this PullBufferStream as directly
known by it.
- Overrides:
doGetFormat in class AbstractBufferStream
- Returns:
- the Format of this PullBufferStream as directly
known by it or null if this PullBufferStream does not
directly know its Format and it relies on the
PullBufferDataSource which created it to report its
Format
- See Also:
AbstractBufferStream.doGetFormat()
read
public void read(javax.media.Buffer buffer)
throws IOException
- Reads media data from this PullBufferStream into a specific
Buffer with blocking.
- Parameters:
buffer - the Buffer in which media data is to be read from
this PullBufferStream
- Throws:
IOException - if anything goes wrong while reading media data from
this PullBufferStream into the specified buffer
setDeviceIndex
void setDeviceIndex(int deviceIndex)
throws IOException
- Sets the device index of the PortAudio device to be read through this
PullBufferStream.
- Parameters:
deviceIndex - the device index of the PortAudio device to be read
through this PullBufferStream
- Throws:
IOException - if input/output error occurred
start
public void start()
throws IOException
- Starts the transfer of media data from this PullBufferStream.
- Overrides:
start in class AbstractBufferStream
- Throws:
IOException - if anything goes wrong while starting the transfer of
media data from this PullBufferStream
stop
public void stop()
throws IOException
- Stops the transfer of media data from this PullBufferStream.
- Overrides:
stop in class AbstractBufferStream
- Throws:
IOException - if anything goes wrong while stopping the transfer of
media data from this PullBufferStream
Jitsi, the OpenSource Java VoIP and Instant Messaging client.
Distributable under LGPL license.