gnu.javax.sound.sampled.gstreamer.lines

Class GstDataLine

Implemented Interfaces:
DataLine, Line
Known Direct Subclasses:
GstSourceDataLine

public abstract class GstDataLine
extends Object
implements DataLine

Nested Class Summary

static class
GstDataLine.State

Field Summary

static int
DEFAULT_BUFFER_SIZE
protected Boolean
open
Represents if this Line is opened or not.
protected GstDataLine.State
state
Represents the playing state of this Line.

Constructor Summary

GstDataLine(AudioFormat format)
GstDataLine(AudioFormat format, int bufferSize)

Method Summary

void
addLineListener(LineListener listener)
int
getBufferSize()
Returns the size of the DataLine's internal buffer, in bytes.
Control
getControl(Control.Type what)
Control[]
getControls()
AudioFormat
getFormat()
Return the current format of the data associated with this DataLine.
float
getLevel()
Return the volume level for this DataLine.
Line.Info
getLineInfo()
boolean
isControlSupported(Control.Type what)
boolean
isOpen()
boolean
isRunning()
Return true if this line is running, meaning that it has been started.
void
open()
void
removeLineListener(LineListener listener)

Methods inherited from class java.lang.Object

clone, equals, extends Object> getClass, finalize, hashCode, notify, notifyAll, toString, wait, wait, wait

Field Details

DEFAULT_BUFFER_SIZE

public static final int DEFAULT_BUFFER_SIZE
Field Value:
1024

open

protected Boolean open
Represents if this Line is opened or not.

state

protected GstDataLine.State state
Represents the playing state of this Line.

Constructor Details

GstDataLine

public GstDataLine(AudioFormat format)

GstDataLine

public GstDataLine(AudioFormat format,
                   int bufferSize)

Method Details

addLineListener

public void addLineListener(LineListener listener)
Specified by:
addLineListener in interface Line

getBufferSize

public int getBufferSize()
Returns the size of the DataLine's internal buffer, in bytes.
Specified by:
getBufferSize in interface DataLine

getControl

public Control getControl(Control.Type what)
Specified by:
getControl in interface Line

getControls

public Control[] getControls()
Specified by:
getControls in interface Line

getFormat

public AudioFormat getFormat()
Return the current format of the data associated with this DataLine.
Specified by:
getFormat in interface DataLine

getLevel

public float getLevel()
Return the volume level for this DataLine.
Specified by:
getLevel in interface DataLine

getLineInfo

public Line.Info getLineInfo()
Specified by:
getLineInfo in interface Line

isControlSupported

public boolean isControlSupported(Control.Type what)
Specified by:
isControlSupported in interface Line

isOpen

public boolean isOpen()
Specified by:
isOpen in interface Line

isRunning

public boolean isRunning()
Return true if this line is running, meaning that it has been started. When the line is stopped, this method will return false.
Specified by:
isRunning in interface DataLine

open

public void open()
            throws LineUnavailableException
Specified by:
open in interface Line

removeLineListener

public void removeLineListener(LineListener listener)
Specified by:
removeLineListener in interface Line

GstDataLine.java -- Abstract DataLine. Copyright (C) 2007 Free Software Foundation, Inc. This file is part of GNU Classpath. GNU Classpath is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version. GNU Classpath is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Classpath; see the file COPYING. If not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Linking this library statically or dynamically with other modules is making a combined work based on this library. Thus, the terms and conditions of the GNU General Public License cover the whole combination. As a special exception, the copyright holders of this library give you permission to link this library with independent modules to produce an executable, regardless of the license terms of these independent modules, and to copy and distribute the resulting executable under terms of your choice, provided that you also meet, for each linked independent module, the terms and conditions of the license of that module. An independent module is a module which is not derived from or based on this library. If you modify this library, you may extend this exception to your version of the library, but you are not obligated to do so. If you do not wish to do so, delete this exception statement from your version.