Home J2me Video Player MIDlet Example

Related Tutorials


 
 

Share on Google+Share on Google+

Video Player MIDlet Example

Advertisement
This example is all about how to play the MPEG files on your mobile device. To play the video file we have to import the javax.microedition.media.control package and certain sub-package that are required for the application.

Video Player MIDlet Example

     

This example is all about how to play the MPEG files on your mobile device. To play the video file we have to import the javax.microedition.media.control package and certain sub-package that are required for the application. 

Given are the classes and interfaces that are available in the above mentioned package.

 

 

 

 

 

javax.microedition.media

 Interfaces 

  • Control 
  • Controllable 
  • Player 
  • PlayerListener 
  • TimeBase 

Classes 

  • Manager 

Exceptions 

  • MediaException

 

javax.microedition.media.control

 Interfaces 

  • FramePositioningControl 
  • GUIControl 
  • MetaDataControl 
  • MIDIControl 
  • PitchControl 
  • RateControl 
  • RecordControl 
  • StopTimeControl 
  • TempoControl 
  • ToneControl 
  • VideoControl 
  • VolumeControl

The Application is as follows:

 

 

Source Code of VideoPlayer.java

import java.io.*;
import java.util.*;
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;
import javax.microedition.media.*;
import javax.microedition.media.control.*;

public class VideoPlayer extends MIDlet implements CommandListener, 
PlayerListener {  
  private Display display;
  private List itemList;
  private Form form;
  private Command stop, pause, start;
  private Hashtable items, itemsInfo;
  private Player player;

  public VideoPlayer() {
  display = Display.getDisplay(this);
  itemList = new List("Select an item to play", List.IMPLICIT);
  stop = new Command("Stop", Command.STOP, 1);
  pause = new Command("Pause", Command.ITEM, 1);
  start = new Command("Start", Command.ITEM, 1);
  form = new Form("Playing video");
  form.addCommand(stop);
  form.addCommand(pause);
  form.setCommandListener(this);
  items = new Hashtable();
  itemsInfo = new Hashtable();

  items.put("SpringWaterFall...", "file://SpringWaterFall.mpg");
  itemsInfo.put("SpringWaterFall...", "video/mpeg");
  
  items.put("helloboy...", "file://helloboy.mpg");
  itemsInfo.put("helloboy...", "video/mpeg");

  items.put("pilgrim...", "file://pilgrim.mpg");
  itemsInfo.put("pilgrim...", "video/mpeg");

  items.put("pirates...", "file://pirates.mpg");
  itemsInfo.put("pirates...", "video/mpeg");

  items.put("pythag1...", "file://pythag1.mpg");
  itemsInfo.put("pythag1...", "video/mpeg");
  
  items.put("CarelessEnglish...", "file://CarelessEnglish.mpg");
  itemsInfo.put("CarelessEnglish...", "video/mpeg");
  }

  public void startApp() {
  for(Enumeration en = items.keys(); en.hasMoreElements();) {
  itemList.append((String)en.nextElement(), null);
  }
  itemList.setCommandListener(this);
  display.setCurrent(itemList);
  }

  public void pauseApp() {
  try {
  if(player != null) player.stop();
  } catch(Exception e) {}
  }

  public void destroyApp(boolean unconditional) {
  if(player != null) player.close();
  }

  public void commandAction(Command c, Displayable d){
  if(d instanceof List) {
  List list = ((List)d);  
  String key = list.getString(list.getSelectedIndex());
  try {
  playAudio((String)items.get(key), key);
  } catch (Exception e) {
  System.err.println("Unable to play: " + e);
  e.printStackTrace();
  }
  } else if(d instanceof Form){
  try {
  if(c == stop){
  player.close();
  display.setCurrent(itemList);
  form.removeCommand(start);
  form.addCommand(pause);
  } else if(c == pause){
  player.stop();
  form.removeCommand(pause);
  form.addCommand(start);
  } else if(c == start){
  player.start();
  form.removeCommand(start);
  form.addCommand(pause);
  }
  } catch(Exception e) {
  System.err.println(e);
  }
  }
  }

  private void playAudio(String locator, String key) throws Exception {
  String file = locator.substring(locator.indexOf("file://") + 6, 
locator.length());
  player = Manager.createPlayer(getClass().getResourceAsStream(file), 
(String)itemsInfo.get(key));
  player.addPlayerListener(this);
  player.setLoopCount(-1);
  player.prefetch();
  player.realize();
  player.start();
  }

  public void playerUpdate(Player player, String event, Object eventData) {
  if(event.equals(PlayerListener.STARTED) && new Long(0L).equals((Long)
eventData)) {
  VideoControl vc = null;
  if((vc = (VideoControl)player.getControl("VideoControl")) != null) {
  Item videoDisp = (Item)vc.initDisplayMode(vc.USE_GUI_PRIMITIVE, null);
  form.append(videoDisp);
  }
  display.setCurrent(form);
  } else if(event.equals(PlayerListener.CLOSED)) {
  form.deleteAll();
  }
  }
}

Download Source Code

Advertisement

If you enjoyed this post then why not add us on Google+? Add us to your Circles



Liked it!  Share this Tutorial


Follow us on Twitter, or add us on Facebook or Google Plus to keep you updated with the recent trends of Java and other open source platforms.

Posted on: November 5, 2008

Related Tutorials

Discuss: Video Player MIDlet Example   View All Comments

Post your Comment


Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
 
 
Comments:4
ibembe isaac
August 13, 2012
send me mores for phone applications

pliz hopp me send the codes
dlophone
October 3, 2012
thankyo

Thank you Thank you Thank you Thank you
Goutam
November 10, 2012
midlet

I am not getting the output from this code .............. can u explain me how i can get executed with plaing video.....
Goutam
November 10, 2012
Midlet

in this program , where will i keep the file in Neatbean "file://CarelessEnglish.mpg"
DMCA.com