sound.recorder
Class CapturePlaybackPanel

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by sound.recorder.CapturePlaybackPanel
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, OpenCloseInterface

public class CapturePlaybackPanel
extends javax.swing.JPanel
implements java.awt.event.ActionListener, OpenCloseInterface

Capture/Playback sample. Record audio in different formats and then playback the recorded audio. The captured audio can be saved either as a WAVE, AU or AIFF. Or load an audio file for streaming playback.

Version:
@(#)CapturePlaybackPanel.java 1.12 02/02/06
Author:
Brian Lichtenwalter
See Also:
Serialized Form

Nested Class Summary
 class CapturePlaybackPanel.Playback
          Write data to the OutputChannel.
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Field Summary
 javax.swing.JButton aiffB
           
 javax.swing.JButton auB
           
 javax.sound.sampled.AudioInputStream audioInputStream
           
 javax.swing.JButton captB
           
 double duration
           
 java.lang.String errStr
           
 FormatControls formatControls
           
 javax.swing.JButton loadB
           
 javax.swing.JButton pausB
           
 javax.swing.JButton playB
           
 sound.recorder.CapturePlaybackPanel.SamplingGraph samplingGraph
           
 double seconds
           
 javax.swing.JButton waveB
           
 
Fields inherited from class javax.swing.JComponent
TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
CapturePlaybackPanel()
           
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent e)
           
 void close()
           
 void createAudioInputStream(java.io.File file, boolean updateComponents)
           
 javax.swing.JButton getAiffB()
           
 javax.swing.JButton getAuB()
           
 javax.sound.sampled.AudioInputStream getAudioInputStream()
           
 int getBufSize()
           
 javax.swing.JButton getCaptB()
           
 Capture getCapture()
           
 double getDuration()
           
 java.lang.String getErrStr()
           
 java.io.File getFile()
           
 java.lang.String getFileName()
           
 FormatControls getFormatControls()
           
 java.util.Vector getGraphicLineData()
           
 javax.swing.JButton getLoadB()
           
 javax.swing.JButton getPausB()
           
 javax.swing.JButton getPlayB()
           
 CapturePlaybackPanel.Playback getPlayback()
           
 sound.recorder.CapturePlaybackPanel.SamplingGraph getSamplingGraph()
           
 double getSeconds()
           
 javax.swing.JTextField getTextField()
           
 javax.swing.JButton getWaveB()
           
static void main(java.lang.String[] s)
           
 void open()
           
 void saveToFile(java.lang.String name, javax.sound.sampled.AudioFileFormat.Type fileType)
           
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, 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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, 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, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, 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, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

formatControls

public FormatControls formatControls

audioInputStream

public javax.sound.sampled.AudioInputStream audioInputStream

samplingGraph

public sound.recorder.CapturePlaybackPanel.SamplingGraph samplingGraph

playB

public javax.swing.JButton playB

captB

public javax.swing.JButton captB

pausB

public javax.swing.JButton pausB

loadB

public javax.swing.JButton loadB

auB

public javax.swing.JButton auB

aiffB

public javax.swing.JButton aiffB

waveB

public javax.swing.JButton waveB

errStr

public java.lang.String errStr

duration

public double duration

seconds

public double seconds
Constructor Detail

CapturePlaybackPanel

public CapturePlaybackPanel()
Method Detail

open

public void open()
Specified by:
open in interface OpenCloseInterface

close

public void close()
Specified by:
close in interface OpenCloseInterface

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent e)
Specified by:
actionPerformed in interface java.awt.event.ActionListener

createAudioInputStream

public void createAudioInputStream(java.io.File file,
                                   boolean updateComponents)

saveToFile

public void saveToFile(java.lang.String name,
                       javax.sound.sampled.AudioFileFormat.Type fileType)

main

public static void main(java.lang.String[] s)

getBufSize

public int getBufSize()

getFormatControls

public FormatControls getFormatControls()

getCapture

public Capture getCapture()

getPlayback

public CapturePlaybackPanel.Playback getPlayback()

getAudioInputStream

public javax.sound.sampled.AudioInputStream getAudioInputStream()

getSamplingGraph

public sound.recorder.CapturePlaybackPanel.SamplingGraph getSamplingGraph()

getPlayB

public javax.swing.JButton getPlayB()

getCaptB

public javax.swing.JButton getCaptB()

getPausB

public javax.swing.JButton getPausB()

getLoadB

public javax.swing.JButton getLoadB()

getAuB

public javax.swing.JButton getAuB()

getAiffB

public javax.swing.JButton getAiffB()

getWaveB

public javax.swing.JButton getWaveB()

getTextField

public javax.swing.JTextField getTextField()

getFileName

public java.lang.String getFileName()

getErrStr

public java.lang.String getErrStr()

getDuration

public double getDuration()

getSeconds

public double getSeconds()

getFile

public java.io.File getFile()

getGraphicLineData

public java.util.Vector getGraphicLineData()