Package org.xiph.speex.player
Class Recorder
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- org.xiph.speex.player.Player
-
- org.xiph.speex.player.Recorder
-
- All Implemented Interfaces:
java.awt.event.ActionListener,java.awt.image.ImageObserver,java.awt.MenuContainer,java.io.Serializable,java.util.EventListener,javax.accessibility.Accessible
public class Recorder extends Player
JavaSound Recorder.- Version:
- $Revision: 1.2 $
- Author:
- Marc Gimpel, Wimba S.A. (mgimpel@horizonwimba.com)
- See Also:
- Serialized Form
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected classRecorder.CaptureCapture thread-
Nested classes/interfaces inherited from class org.xiph.speex.player.Player
Player.Playback
-
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
-
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
-
-
Field Summary
Fields Modifier and Type Field Description protected byte[]audioprotected Recorder.Capturecapturestatic java.lang.StringCHANNELS_MONOMono Audio (1 channel).static java.lang.StringCHANNELS_STEREOStereo Audio (2 channels).protected javax.swing.JButtonrecordButtonRecord Buttonstatic java.lang.StringREVISIONRevision Numberstatic java.lang.StringSAMPLERATE_11KHZAudio sampled at 11 kHz.static java.lang.StringSAMPLERATE_16KHZAudio sampled at 16 kHz (wideband).static java.lang.StringSAMPLERATE_22KHZAudio sampled at 22 kHz (FM radio quality).static java.lang.StringSAMPLERATE_32KHZAudio sampled at 32 kHz (ultra-wideband).static java.lang.StringSAMPLERATE_44KHZAudio sampled at 44 kHz (CD quality).static java.lang.StringSAMPLERATE_8KHZAudio sampled at 8 kHz (telephone quality).protected static intSTATE_REC_PAUSEDFinite State Machine State: Recording Pausedprotected static intSTATE_RECORDINGFinite State Machine State: Recording-
Fields inherited from class org.xiph.speex.player.Player
audioFile, audioFilename, audioLength, BUILD, oldstate, pauseButton, playback, playButton, playerButtonPane, playerScrollPane, progressBar, state, STATE_BUFFERING, STATE_ERROR, STATE_INIT, STATE_PAUSED, STATE_PLAYING, STATE_STOPPED, stopButton, timer, VERSION
-
Fields inherited from class javax.swing.JComponent
listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
-
Constructor Summary
Constructors Constructor Description Recorder(java.lang.String file)Build a Recorder.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidactionPerformed(java.awt.event.ActionEvent e)Process Actions when button are pressed.protected voidcreateButtonPanel()Create the ButtonPanel for the recorder.protected java.io.InputStreamgetAudioStream()Returns an InputSteam containing the Audio to playback.protected intgetProgress()Return the progress of the playback.voidinit()Initialize the Player Component.static voidmain(java.lang.String[] args)Command Line entrance.voidpauseIt()PausevoidplayIt()voidrecordIt()voidstopIt()-
Methods inherited from class org.xiph.speex.player.Player
buildButton, createGUI, createImageIcon, createScrollPanel, start, stop
-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingOrigin, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate, validateTree
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
REVISION
public static final java.lang.String REVISION
Revision Number- See Also:
- Constant Field Values
-
SAMPLERATE_8KHZ
public static final java.lang.String SAMPLERATE_8KHZ
Audio sampled at 8 kHz (telephone quality).- See Also:
- Constant Field Values
-
SAMPLERATE_11KHZ
public static final java.lang.String SAMPLERATE_11KHZ
Audio sampled at 11 kHz.- See Also:
- Constant Field Values
-
SAMPLERATE_16KHZ
public static final java.lang.String SAMPLERATE_16KHZ
Audio sampled at 16 kHz (wideband).- See Also:
- Constant Field Values
-
SAMPLERATE_22KHZ
public static final java.lang.String SAMPLERATE_22KHZ
Audio sampled at 22 kHz (FM radio quality).- See Also:
- Constant Field Values
-
SAMPLERATE_32KHZ
public static final java.lang.String SAMPLERATE_32KHZ
Audio sampled at 32 kHz (ultra-wideband).- See Also:
- Constant Field Values
-
SAMPLERATE_44KHZ
public static final java.lang.String SAMPLERATE_44KHZ
Audio sampled at 44 kHz (CD quality).- See Also:
- Constant Field Values
-
CHANNELS_MONO
public static final java.lang.String CHANNELS_MONO
Mono Audio (1 channel).- See Also:
- Constant Field Values
-
CHANNELS_STEREO
public static final java.lang.String CHANNELS_STEREO
Stereo Audio (2 channels).- See Also:
- Constant Field Values
-
STATE_RECORDING
protected static final int STATE_RECORDING
Finite State Machine State: Recording- See Also:
- Constant Field Values
-
STATE_REC_PAUSED
protected static final int STATE_REC_PAUSED
Finite State Machine State: Recording Paused- See Also:
- Constant Field Values
-
recordButton
protected javax.swing.JButton recordButton
Record Button
-
capture
protected Recorder.Capture capture
-
audio
protected byte[] audio
-
-
Method Detail
-
main
public static void main(java.lang.String[] args)
Command Line entrance.- Parameters:
args-
-
getAudioStream
protected java.io.InputStream getAudioStream() throws java.io.IOExceptionReturns an InputSteam containing the Audio to playback.- Overrides:
getAudioStreamin classPlayer- Returns:
- an InputSteam containing the Audio to playback.
- Throws:
java.io.IOException
-
actionPerformed
public void actionPerformed(java.awt.event.ActionEvent e)
Process Actions when button are pressed. Implemented from ActionListener interface.- Specified by:
actionPerformedin interfacejava.awt.event.ActionListener- Overrides:
actionPerformedin classPlayer
-
pauseIt
public void pauseIt()
Description copied from class:PlayerPause
-
recordIt
public void recordIt()
-
getProgress
protected int getProgress()
Return the progress of the playback.- Overrides:
getProgressin classPlayer- Returns:
- the progress of the playback.
-
createButtonPanel
protected void createButtonPanel()
Create the ButtonPanel for the recorder. The recorder button panel that should look something like this:+--------------------------------+ | +------+ +----+ +-----+ +----+ | | |record| |play| |pause| |stop| | Button Panel | +------+ +----+ +-----+ +----+ | +--------------------------------+
- Overrides:
createButtonPanelin classPlayer
-
-