example.mmademo
Class SimplePlayerGUI

java.lang.Object
  extended by example.mmademo.SimplePlayerGUI
All Implemented Interfaces:
javax.microedition.lcdui.CommandListener, javax.microedition.lcdui.ItemStateListener, javax.microedition.media.PlayerListener

public class SimplePlayerGUI
extends java.lang.Object
implements javax.microedition.lcdui.CommandListener, javax.microedition.media.PlayerListener, javax.microedition.lcdui.ItemStateListener

GUI functionality for SimplePlayer. This class is used by SimplePlayerCanvas and SimplePlayerForm and provides the actual logic. SimplePlayerCanvas and SimplePlayerForm provide the interaction of the main window with the user.


Nested Class Summary
(package private) static interface SimplePlayerGUI.Parent
          This interface is implemented by the Displayable which uses this class.
 
Field Summary
(package private)  javax.microedition.lcdui.Command backCommand
           
static int KARAOKE_LINE
           
static int KARAOKE_LINE_COUNT
           
static int KARAOKE_LINE_INDEX
           
static int KARAOKE_SYLLABLE_LENGTH
           
 
Fields inherited from interface javax.microedition.media.PlayerListener
BUFFERING_STARTED, BUFFERING_STOPPED, CLOSED, DEVICE_AVAILABLE, DEVICE_UNAVAILABLE, DURATION_UPDATED, END_OF_MEDIA, ERROR, RECORD_ERROR, RECORD_STARTED, RECORD_STOPPED, SIZE_CHANGED, STARTED, STOPPED, STOPPED_AT_TIME, VOLUME_CHANGED
 
Constructor Summary
SimplePlayerGUI()
          Note: parent MUST be Displayable
 
Method Summary
 void changeRate(boolean slowdown)
           
 void changeVolume(boolean decrease)
           
 void closePlayer()
           
 void commandAction(javax.microedition.lcdui.Command c, javax.microedition.lcdui.Displayable s)
           
 javax.microedition.media.Control[] getControls()
           
 java.lang.String[] getKaraokeStr(int[] params)
          OUT: params: 0: number of valid strings in return array 1: index in return array of currently sung line 2: index in current line which is currently sung. if -1: nothing currently sung 3: length of syllable currently sung.
 javax.microedition.lcdui.Image getLogo()
           
 java.lang.String getMediaTimeStr()
           
 java.lang.String getRateStr()
           
 javax.microedition.media.control.RecordControl getRecordControl()
           
 java.lang.String getTempoStr()
           
 javax.microedition.media.control.VideoControl getVideoControl()
           
 boolean hasGUIControls()
           
 boolean hasRateControl()
           
 boolean hasTempoControl()
           
 void initialize(java.lang.String title, SimplePlayerGUI.Parent parent)
           
 boolean isFullScreen()
           
 void itemStateChanged(javax.microedition.lcdui.Item item)
           
 void pauseApp()
          Stop the player and the display thread.
 void pausePlayer()
           
 void playerUpdate(javax.microedition.media.Player plyr, java.lang.String evt, java.lang.Object evtData)
           
 void resumeApp()
          If the player was playing when the MIDlet was paused, then the player will be restarted here.
 void setMediaTime(long time)
           
 void setParent(SimplePlayerGUI.Parent parent)
           
 void setSong(java.lang.String name, java.io.InputStream is, java.lang.String contentType)
           
 void setSong(java.lang.String name, javax.microedition.media.Player player)
           
 void setSong(java.lang.String name, java.lang.String locator)
           
 void setTimerInterval(int millis)
           
 void skip(boolean backwards)
          fast forward or fast backward
 void skipFrame(boolean back)
           
 void startPlayer()
           
 void stepFrame(int frames)
           
 void stopAfterTime()
           
 boolean toggleFullScreen()
           
 void toggleMute()
           
 void togglePlayer()
           
 void transpose(boolean down)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

backCommand

javax.microedition.lcdui.Command backCommand

KARAOKE_LINE_COUNT

public static final int KARAOKE_LINE_COUNT
See Also:
Constant Field Values

KARAOKE_LINE

public static final int KARAOKE_LINE
See Also:
Constant Field Values

KARAOKE_LINE_INDEX

public static final int KARAOKE_LINE_INDEX
See Also:
Constant Field Values

KARAOKE_SYLLABLE_LENGTH

public static final int KARAOKE_SYLLABLE_LENGTH
See Also:
Constant Field Values
Constructor Detail

SimplePlayerGUI

public SimplePlayerGUI()
Note: parent MUST be Displayable

Method Detail

initialize

public void initialize(java.lang.String title,
                       SimplePlayerGUI.Parent parent)

setParent

public void setParent(SimplePlayerGUI.Parent parent)

setSong

public void setSong(java.lang.String name,
                    java.lang.String locator)

setSong

public void setSong(java.lang.String name,
                    java.io.InputStream is,
                    java.lang.String contentType)

setSong

public void setSong(java.lang.String name,
                    javax.microedition.media.Player player)

setTimerInterval

public void setTimerInterval(int millis)

getLogo

public javax.microedition.lcdui.Image getLogo()

getMediaTimeStr

public java.lang.String getMediaTimeStr()

getTempoStr

public java.lang.String getTempoStr()

getRateStr

public java.lang.String getRateStr()

getKaraokeStr

public java.lang.String[] getKaraokeStr(int[] params)
OUT: params: 0: number of valid strings in return array 1: index in return array of currently sung line 2: index in current line which is currently sung. if -1: nothing currently sung 3: length of syllable currently sung.


isFullScreen

public boolean isFullScreen()

toggleFullScreen

public boolean toggleFullScreen()

stepFrame

public void stepFrame(int frames)

hasRateControl

public boolean hasRateControl()

hasTempoControl

public boolean hasTempoControl()

hasGUIControls

public boolean hasGUIControls()

getControls

public javax.microedition.media.Control[] getControls()

getVideoControl

public javax.microedition.media.control.VideoControl getVideoControl()

getRecordControl

public javax.microedition.media.control.RecordControl getRecordControl()

startPlayer

public void startPlayer()

closePlayer

public void closePlayer()

pausePlayer

public void pausePlayer()

togglePlayer

public void togglePlayer()

skip

public void skip(boolean backwards)
fast forward or fast backward


stopAfterTime

public void stopAfterTime()

changeRate

public void changeRate(boolean slowdown)

setMediaTime

public void setMediaTime(long time)

changeVolume

public void changeVolume(boolean decrease)

toggleMute

public void toggleMute()

transpose

public void transpose(boolean down)

skipFrame

public void skipFrame(boolean back)

commandAction

public void commandAction(javax.microedition.lcdui.Command c,
                          javax.microedition.lcdui.Displayable s)
Specified by:
commandAction in interface javax.microedition.lcdui.CommandListener

playerUpdate

public void playerUpdate(javax.microedition.media.Player plyr,
                         java.lang.String evt,
                         java.lang.Object evtData)
Specified by:
playerUpdate in interface javax.microedition.media.PlayerListener

itemStateChanged

public void itemStateChanged(javax.microedition.lcdui.Item item)
Specified by:
itemStateChanged in interface javax.microedition.lcdui.ItemStateListener

pauseApp

public void pauseApp()
Stop the player and the display thread. Some VM's may stop players and threads on their own, but for consistent user experience, it's a good idea to explicitly stop and start resources such as player and threads.


resumeApp

public void resumeApp()
If the player was playing when the MIDlet was paused, then the player will be restarted here.