javazoom.jl.player
Class PlayerApplet

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Panel
              extended by java.applet.Applet
                  extended by javazoom.jl.player.PlayerApplet
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.lang.Runnable, javax.accessibility.Accessible

public class PlayerApplet
extends java.applet.Applet
implements java.lang.Runnable

A simple applet that plays an MPEG audio file. The URL (relative to the document base) is passed as the "audioURL" parameter.

Since:
0.0.8
See Also:
Serialized Form

Nested Class Summary
 
Nested classes/interfaces inherited from class java.applet.Applet
java.applet.Applet.AccessibleApplet
 
Nested classes/interfaces inherited from class java.awt.Panel
java.awt.Panel.AccessibleAWTPanel
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
static java.lang.String AUDIO_PARAMETER
           
 
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
PlayerApplet()
           
 
Method Summary
protected  java.lang.Thread createPlayerThread()
          Creates a new thread used to run the audio player.
 void destroy()
           
protected  AudioDevice getAudioDevice()
          Retrieves the AudioDevice instance that will be used to sound the audio data.
protected  java.lang.String getAudioFileName()
           
protected  java.io.InputStream getAudioStream()
          Retrieves the InputStream that provides the MPEG audio stream data.
protected  java.net.URL getAudioURL()
           
 java.lang.String getFileName()
           
 void init()
          Initializes this applet.
protected  void play(java.io.InputStream in, AudioDevice dev)
          Decompresses audio data from an InputStream and plays it back through an AudioDevice.
 void run()
          The run method for the audio player thread.
 void setFileName(java.lang.String name)
          Sets the URL of the audio stream to play.
 void start()
          Starts this applet.
 void stop()
          Stops this applet.
protected  void stopPlayer()
          Stops the audio player.
 
Methods inherited from class java.applet.Applet
getAccessibleContext, getAppletContext, getAppletInfo, getAudioClip, getAudioClip, getCodeBase, getDocumentBase, getImage, getImage, getLocale, getParameter, getParameterInfo, isActive, newAudioClip, play, play, resize, resize, setStub, showStatus
 
Methods inherited from class java.awt.Panel
addNotify
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getListeners, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, paramString, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, 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, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

AUDIO_PARAMETER

public static final java.lang.String AUDIO_PARAMETER
See Also:
Constant Field Values
Constructor Detail

PlayerApplet

public PlayerApplet()
Method Detail

getAudioDevice

protected AudioDevice getAudioDevice()
                              throws JavaLayerException
Retrieves the AudioDevice instance that will be used to sound the audio data.

Returns:
an audio device instance that will be used to sound the audio stream.
Throws:
JavaLayerException

getAudioStream

protected java.io.InputStream getAudioStream()
Retrieves the InputStream that provides the MPEG audio stream data.

Returns:
an InputStream from which the MPEG audio data is read, or null if an error occurs.

getAudioFileName

protected java.lang.String getAudioFileName()

getAudioURL

protected java.net.URL getAudioURL()

setFileName

public void setFileName(java.lang.String name)
Sets the URL of the audio stream to play.


getFileName

public java.lang.String getFileName()

stopPlayer

protected void stopPlayer()
                   throws JavaLayerException
Stops the audio player. If the player is already stopped this method is a no-op.

Throws:
JavaLayerException

play

protected void play(java.io.InputStream in,
                    AudioDevice dev)
             throws JavaLayerException
Decompresses audio data from an InputStream and plays it back through an AudioDevice. The playback is run on a newly created thread.

Parameters:
in - The InputStream that provides the MPEG audio data.
dev - The AudioDevice to use to sound the decompressed data.
Throws:
JavaLayerException - if there was a problem decoding or playing the audio data.

createPlayerThread

protected java.lang.Thread createPlayerThread()
Creates a new thread used to run the audio player.

Returns:
A new Thread that, once started, runs the audio player.

init

public void init()
Initializes this applet.

Overrides:
init in class java.applet.Applet

start

public void start()
Starts this applet. An input stream and audio device are created and passed to the play() method.

Overrides:
start in class java.applet.Applet

stop

public void stop()
Stops this applet. If audio is currently playing, it is stopped.

Overrides:
stop in class java.applet.Applet

destroy

public void destroy()
Overrides:
destroy in class java.applet.Applet

run

public void run()
The run method for the audio player thread. Simply calls play() on the player to play the entire stream.

Specified by:
run in interface java.lang.Runnable


JavaZOOM 1999-2008