<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 使用Java ME以流形式播放Web服務(wù)器上的音樂(lè )文件

使用Java ME以流形式播放Web服務(wù)器上的音樂(lè )文件

作者: 時(shí)間:2012-05-04 來(lái)源:網(wǎng)絡(luò ) 收藏

本文介紹如何在SonyEricsson平臺6或者更新的電話(huà)上,例如W550,W900等,以流上的。當然,可以實(shí)時(shí)流媒體協(xié)議,但是這里的是輸入流。

本文引用地址:http://dyxdggzs.com/article/149134.htm

首先,我們需要和端的建立流連接,然后把音樂(lè )文件存儲在在手機的文件系統上。由于JP6平臺的電話(huà)支持漸進(jìn)音樂(lè )文件,因此我們不必等到所有文件都下載完成后才開(kāi)始播放。

有兩方面的問(wèn)題需要我們考慮好:

1)下載的速度,程序需要建立一個(gè)緩沖區。

2)媒體時(shí)間,程序需要跟蹤媒體時(shí)間,如果下載的速度比媒體播放速度慢,當播放器到達文件終點(diǎn)的時(shí)候,我們需要重新創(chuàng )建一個(gè)緩沖區然后設置正確的媒體時(shí)間開(kāi)始播放。

下面的程序可以在電話(huà)的文件系統上創(chuàng )建一個(gè)文件并打開(kāi)輸出流。

fConn=(FileConnection)Connector.open(file:///c:/other/mymusic.mp3);

fConn.create();

outputStream=fConn.openOutputStream();

接下來(lái)把從輸入流的數據寫(xiě)入到輸出流中。

HttpConnectionconn=(HttpConnection)Connector.open(url);

InputStreamis=conn.openInputStream();

intchunkSize=512;

byte[]data=newbyte[chunkSize];

intlength=0;

do{

length=is.read(data,0,chunkSize);

progress+=length;

if(length!=-1){

outputStream.write(data,0,length);

}

}while(length!=-1);

當下載的緩沖區就緒之后,我們就可以播放文件了。

finalStringfile=file:///c:/other/mymusic.mp3;

player=Manager.createPlayer(file);

player.addPlayerListener(this);

player.realize();

player.setMediaTime(startTime);

記得記錄媒體時(shí)間,當我們重新播放音樂(lè )的時(shí)候用得著(zhù)。

Player應該實(shí)現PlayerListener接口,這樣可以跟蹤媒體的播放狀態(tài),如下所示:

publicvoidplayerUpdate(javax.microedition.media.Playerplayer,Stringstr,Objectobj){

if(str==PlayerListener.END_OF_DIA){

playerBufferAdd();

player.close();

}

}

在playerUpdate()方法中我們跟蹤是否播放器到達了文件的終點(diǎn),如果是的話(huà),創(chuàng )建一個(gè)新的緩沖區和新的播放器,把前面的播放器關(guān)閉,然后繼續播放。



評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>