作者:wuhua
空間:htt://wuhua.3geye.net
轉(zhuǎn)載請(qǐng)保留上面的信息(請(qǐng)尊重知識(shí)產(chǎn)品)謝謝
記得以前看過一篇高手寫的文章。
http://www.cnblogs.com/zhengyun_ustc/archive/2006/03/28/j2me_streaming_demo.html
這種思想需要用到兩個(gè)線程去控制視頻的播放,感覺思路是好的,不過比較復(fù)雜。
上個(gè)禮拜我結(jié)合了上面高手的思路,自己總結(jié)了另外一直播放的方式。 那就是隊(duì)列的方式。
我們可以采用一些元數(shù)據(jù)的描述方式。來指導(dǎo)媒體播放類型,播放名車,已經(jīng)播放路徑,播放隊(duì)列的。我們的程序只需要解釋下這個(gè)元數(shù)據(jù),并且按照這種元素局的格式來獲取媒體播放隊(duì)列,最后采用一個(gè)線程構(gòu)造播放隊(duì)列的方式進(jìn)行播放。
下面看看我是怎么樣描述這些數(shù)據(jù)的
<root name="wuhua">
<li url="/video.xml">MTV</li>
<li url="/music.xml">MUSIC</li>
</root>
上面的是一些xml播放列表描述文件。
這段是指定一些參數(shù)以及一些媒體編碼。跟播放隊(duì)列。
<video name="信樂團(tuán)--離歌" desc="about" encode="audio/x-wav" >
<item>/0.wav</item>
<item>/1.wav</item>
<item>/2.wav</item>
<item>/3.wav</item>
<item>/4.wav</item>
<item>/5.wav</item>
<item>/6.wav</item>
<item>/7.wav</item>
<item>/8.wav</item>
<item>/9.wav</item>
<item>/10.wav</item>
<item>/11.wav</item>
<item>/12.wav</item>
<item>/13.wav</item>
<item>/14.wav</item>
<item>/15.wav</item>
<item>/16.wav</item>
<item>/17.wav</item>
<item>/18.wav</item>
<item>/19.wav</item>
<item>/20.wav</item>
<item>/21.wav</item>
<item>/22.wav</item>
</video>
這是一部小電影的播放隊(duì)列
<video name="一部很簡(jiǎn)單的電影" desc="about" encode="video/mpeg" >
<item>/0.mpg</item>
<item>/1.mpg</item>
<item>/2.mpg</item>
<item>/3.mpg</item>
<item>/4.mpg</item>
<item>/5.mpg</item>
<item>/6.mpg</item>
<item>/7.mpg</item>
<item>/8.mpg</item>
<item>/9.mpg</item>
<item>/10.mpg</item>
<item>/11.mpg</item>
<item>/12.mpg</item>
<item>/13.mpg</item>
<item>/14.mpg</item>
<item>/15.mpg</item>
</video>
我基本已經(jīng)實(shí)現(xiàn)了上面的流媒體播放方式,不過在測(cè)試的過程中發(fā)現(xiàn)在播放音頻,或者視頻設(shè)備的時(shí)候,感覺到
兩個(gè)Player之間切換有點(diǎn)卡,大概卡那么0.1秒。暫時(shí)還沒有想到解決辦法。
有好東西需要跟大家分享。你有好思路嗎,大家分享下吧。
PS: 實(shí)現(xiàn)上面的流媒體方法,采用了EasyMF 框架