2015-05-04 88 views
0

我正在使用帶有mediacontroller的videoview播放rtmp,rtsp,m3u8和http流。 問題是,他們不工作在我所有的設備上。一些設備播放所有流,一些不能播放rtmp,一些只能播放一些rtmp和一些http流,但不是全部。videoview無法播放rtmp和其他流

我在想這可能是某種解碼/編碼問題?所以我希望有人能給我答案。

我知道某些應用程序使用相同的流,並且它們可以在我的所有設備上工作,當我第一次加載它們的應用程序時,它說「初始化解碼器」,但我似乎找不到任何有用的信息,也許你可以指點我正確的方向。

下面是我使用播放流代碼:

private void playVideo(string link) { 
    videoView.setVisibility(VideoView.VISIBLE); 
    progressBar.setVisibility(ProgressBar.VISIBLE); 
    if (videoView.isPlaying()) { videoView.stopPlayback(); } 
    MediaController media = new MediaController(MainActivity.this); 
    media.setAnchorView(videoView); 
    media.setFocusable(false); 
    media.setClickable(false); 
    media.setLongClickable(false); 
    videoView.setMediaController(media); 
    videoView.setFocusable(false); 
    videoView.setClickable(false); 
    videoView.setLongClickable(false); 
    videoView.setVideoPath(link); 
    videoView.setOnPreparedListener(videoViewPreparedListener); 
    videoView.setOnCompletionListener(videoViewCompletionListener); 
    videoView.setOnErrorListener(videoViewErrorListener); 
} 

回答

0

可以使用維生素護庫所需functionality.You有這個選項很少和維生素護庫it.It之一將你的apk大小增加到8 MB,然後你的平常尺寸,如果你想妥協,那麼它是好的。它也有侷限性,在極少數情況下,它不支持一些CPU架構。總體來說它是好的。

+0

評論是不適合擴展討論;這個談話已經[轉移到聊天](http://chat.stackoverflow.com/rooms/77008/discussion-on-answer-by-jay-shah-videoview-failing-to-play-rtmp-and-some-其他)。 – Taryn