国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

在J2ME程序中實(shí)現(xiàn)聲音播放

2019-11-17 06:21:40
字體:
供稿:網(wǎng)友

  在J2ME中,處理聲音需要使用到Mobile Media API(MMAPI),該包是MIDP1.0的可選包,在MIDP2.0中已經(jīng)包含了這個(gè)包。所以假如你使用MIDP1.0的話,請確認(rèn)你的運(yùn)行環(huán)境是否支持。

  一般手機(jī)支持的聲音文件格式為wav、mid和mpg等。具體請查閱你的手機(jī)說明文檔。

  在聲音處理中,有很多處理的方式,這里說一下最常用的情況,播放JAR文件中的wav文件。

  播放聲音文件的流程:

   1、按照一定的格式讀取聲音文件。

  播放JAR文件中的聲音文件一般是將聲音文件處理成流的形式。示例代碼:

InputStream is = this.getClass().getResourceAsStream("/Autorun.wav");

  其中Autorun.wav文件位于JAR文件的根目錄下,假如位于別的目錄,需要加上目錄名稱,如/res /Autorun.wav。

   2、將讀取到的內(nèi)容傳遞給播放器。

  將流信息傳遞給播放器,播放器按照一定的格式來進(jìn)行解碼操作,示例代碼:

Player player = Manager.createPlayer(is,"audio/x-wav");

  其中第一個(gè)參數(shù)為流對象,第二個(gè)參數(shù)為聲音文件的格式。

   3、播放聲音。

  使用Player對象的start方法,可以將聲音播放出來,示例代碼:

player.start();

  在播放聲音時(shí)也可以設(shè)定聲音播放的次數(shù),可以使用Player類中的setLoopCount方法來實(shí)現(xiàn),具體可查閱API文檔。

  下面是在NOKIA S60模擬器中測試通過。代碼如下:

package sound;
import javax.microedition.midlet.*;
import javax.microedition.lcdui.*;
import javax.microedition.media.*;
import java.io.*;

public class SoundMIDlet extends MIDlet
{
  PRivate Player player = null;
  /** ConstrUCtor */
  public SoundMIDlet()
  {
   try
   {
    InputStream is = this.getClass().getResourceAsStream("/Autorun.wav");
    player = Manager.createPlayer(is,"audio/x-wav");
   }
   catch(IOException e)
   {
    System.out.println("1:" + e);
   }
   catch(MediaException e)
   {
    System.out.println("2:" + e);
   }
   catch(Exception e)
   {
    System.out.println("3:" + e);
   }
  }
 
  /** Main method */
  public void startApp()
  {
   if(player != null)
   {
    try
    {
     player.start();
    }
    catch(MediaException e)
    {
     System.out.println("4:" + e);
    }
   }
  }

  /** Handle pausing the MIDlet */
  public void pauseApp()
  {}

  /** Handle destroying the MIDlet */
  public void destroyApp(boolean unconditional)
  {}
}進(jìn)入討論組討論。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 黄山市| 华容县| 广南县| 新巴尔虎左旗| 旺苍县| 湘乡市| 宁国市| 手游| 含山县| 杭锦旗| 札达县| 阳曲县| 东辽县| 扶沟县| 龙岩市| 富锦市| 平湖市| 玉龙| 灵川县| 平原县| 成安县| 隆安县| 蒙山县| 顺昌县| 奉节县| 吴忠市| 青神县| 海淀区| 西藏| 阜新市| 万载县| 新乡县| 桃园县| 新源县| 樟树市| 华阴市| 龙游县| 凤庆县| 台州市| 即墨市| 楚雄市|