2013-01-11 76 views
5

我想在Android上使用默認的MediaPlayer Library播放wowza .mp3流。但我曾嘗試使用android自身提供的API演示播放流,但它不起作用。儘管android文檔聲明它確實如此。Wowza .mp3 Android上的RTSP流

http://developer.android.com/guide/appendix/media-formats.html

我檢查了wowza文件和我發現,MP3播放RTSP流無法在任何Android設備上播放。 http://www.wowza.com/forums/content.php?62

我很困惑,這裏真正的問題是什麼,因爲一個文檔聲明它是這樣的,另一個聲明它不是?有人可以告訴我嗎? http://broadcastengineering.com/products/wowza-expands-media-server-2-http-streaming-ability

您還可以找到它們通過多個平臺支持Android的MP4功能,甚至那些和使用這些:

+1

你誤解釋Android文檔 - 以報價*對於被流通過HTTP或RTSP *也差不多了,沒有其他手段的視頻內容!此外,*音頻和視頻播放支持以下網絡協議:*這並不意味着MP3支持使用RTSP進行流式傳輸。 wowza上的文檔是正確的!似乎Android文檔尚未更新,以澄清這一點。沒有可以做! – t0mm13b

+0

@ t0mm13b嗯謝謝。所以底線是我們不能在.rts上播放rtsp,但是如果編碼是根據android提供的視頻編碼要求,我們可以在rtsp上播放.mp4(視頻)?即正常的mp4不會在rtsp上播放,直到按照要求進行編碼。 –

+0

是的,這是正確的。 – t0mm13b

回答

3

您應該使用HTTP流的MP3文件,這是由Wowza,參考支持。根據您的連接帶寬,帶有AAC音頻的480p或720p應該在任何地方工作。

+0

Thanx爲出色的答案。 我在我的Android應用程序中播放mp3音頻時遇到問題。如果我說得對,Wowza現在可以將那個rtsp轉換成蒸汽。 那麼,在我的應用程序中,爲了與原生Android媒體播放器播放聲音,我該怎麼做? 只需切換協議從rtsp:// ...我的網址...到http:// ...我的網址... 我試過了,它不起作用..(一直在緩衝4) –

+0

你將需要相應地配置wowza參數,不幸的是我最近沒有這樣做,目前無法提供具體細節。 – tazzix

+0

Wowza爲Android提供的唯一模型是rtsp,http服務都不起作用 –

0

我在開發Android媒體播放器時遇到了同樣的問題。 我使用iMove從.mp4文件分離音頻。這很容易做到,雙擊視頻並選擇分離音頻,然後刪除音軌。

我分別傳輸視頻軌道和音頻軌道,至於視頻,我正在使用rtsp,至於音頻,我使用apache web服務器,android可以靜態讀取音頻,就像讀取本地文件一樣。

順便說一句,我已經嘗試使用Wowza提供的每個協議流.mp3,都沒有工作。

我的代碼如下:

public void PlayVideo() { 
     MediaController vidControl = new MediaController(this); 
     vidControl.setAnchorView(VideoPlayer); 
     VideoPlayer.setMediaController(vidControl); 


     VideoPlayer.setVideoPath("rtsp://137.110.90.123:1935/vod/SamNoSound.mp4"); 


     VideoPlayer.start(); 

    } 

public void PlayAudio() { 
     //play audio 
     String url = "http://137.110.90.123/~chenyu/sample.mp3"; // your URL here 

     try { 
      AudioPlayer.setDataSource(url); 
      AudioPlayer.setAudioStreamType(AudioManager.STREAM_MUSIC); 
      AudioPlayer.prepare(); 
      AudioPlayer.start(); 
     } catch (IOException e) { 
      e.printStackTrace(); 
     } 

我想說,如果你真的想強調的流,我會建議使用VLC,我的流媒體MP3播放的命令是:

只進流音頻

vlc /Users/chenyu/Sites/XXXX.mp3 -I http --sout "#transcode{ab=128,samplerate=44100,channels=2,acodec=mpga,vcodec=none}:gather:rtp{mp4a-latm,sdp=rtsp://137.110.92.231:5554/stream.sdp}"