J2ME多媒体开发_摄像头操作

//开始摄像头视频

private void startPlay()

{
  try {
   //创建摄像头视频采集播放器对象
   player = Manager.createPlayer("capture://video");
   player.realize();

   vc = (VideoControl)player.getControl("VideoControl");
   vc.initDisplayMode(VideoControl.USE_DIRECT_VIDEO, this);

   setSuitedSize();

   //设置视频控制可见
   vc.setVisible(true);

   //设置无限循环
   player.setLoopCount(-1);
   //开始播放
   player.start();
  }
  catch (MediaException e) {
   e.printStackTrace();
  }
  catch (IOException e) {
   e.printStackTrace();
  }

}

 

private void setSuitedSize()

{
  try

  {
   vc.setDisplaySize(getWidth(),
         (int)(1.0D * vc.getSourceHeight() * getWidth() / vc.getSourceWidth()) );
  }
  catch (MediaException e) {}

  //设置居中显示
  vc.setDisplayLocation((getWidth() - vc.getDisplayWidth() ) / 2,
         (getHeight() - vc.getDisplayHeight() ) / 2);

}

 

//采集数据

private void doSnapshot()

{
   byte[] data = null;

   try 

   {
       //获取视频快照数据
       data = vc.getSnapshot("png"); //jpeg
       //使用视频数据创建图片对象
       snapshotImage = Image.createImage(data, 0, data.length);

       endPlay();
   }
   catch (MediaException e) {}

}

 

J2ME多媒体开发_音乐文件的播放

private Player player;

//加载及播放
try

{
    InputStream is = getClass().getResourceAsStream(fileName);
    player = Manager.createPlayer(is, "audio/midi");

    player.setLoopCount(-1);
    player.realize();
    player.prefetch();
    player.start();
}

catch (Exception ex) {}

 

//设置音量 

public void setMusicVolume(int level)

{

    if (player != null)
    { 
        VolumeControl control = (VolumeControl) player.getControl("VolumeControl");
        control.setLevel(level);
    }

}

 

//暂停音乐

public void stopMusic()

{
    if (isPlayMusic && player != null)

    {
        try

        {
            player.stop();
            playState = 0;
        } catch (MediaException ex) {}
     }
}

 

//关闭音乐
public void closeMusic()

{
    if (isPlayMusic && player != null)

    {
         player.close();// 关闭播放器
         player = null;
     }
}

 

J2ME多媒体开发_动画播放

通过Image类添加GIF文件所显示的图像,实际上是GIF文件中第一帧动画的内容

怎么让GIF动画动起来呢?MMAPI来解决!

 

private Player player = null;
private VideoControl vc = null;
private Item item = null;

 

try

{
   player = Manager.createPlayer(getClass().getResourceAsStream("/**.gif", "image/gif");
   player.realize();

   vc = (VideoControl)player.getControl("VideoControl");

   //生成项目
   item = (Item)vc.initDisplayMode(VideoControl.USE_GUI_PRIMITIVE, null);
   //设置布局
   item.setLayout(Item.LAYOUT_CENTER | Item.LAYOUT_VCENTER);

   //设置合适大小

   setSuitedSize();

   //设置无限循环
   player.setLoopCount(-1);
   player.start();  
  }
  catch (Exception e) {}

 

public void setSuitedSize()

{
    try

    {
       vc.setDisplaySize(mainPanel.getWidth(), 
            (int)(1.0D * vc.getSourceHeight() * mainPanel.getWidth() / vc.getSourceWidth()) );
    }
    catch (MediaException e) {}
}

posted on 2013-03-06 14:24  爱哎唉  阅读(163)  评论(0)    收藏  举报