2012-12-19 34 views
2

我一直在嘗試使用HLS來將視頻流式傳輸到Android設備,這是自HoneyComb以來正式支持的。問題是,當我使用Apple HLS測試流時,似乎沒有適應性。當我有一個良好的連接,我得到一個合適的高質量的流,但是當我使用3G時,我得到相同的質量和流延遲。我已經使用了標準的Android類這是:HTTP Live Streaming(HLS)在Android 4上不適應?

String Url = AppleUrl = "http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8"; 
MediaController mMediaController = new MediaController(this); 
VideoView mVideoView = (VideoView) findViewById(R.id.vid); 
mVideoView.setVideoPath(Url); 
mVideoView.setMediaController(mMediaController); 
mVideoView.setOnPreparedListener(new OnPreparedListener() { 
    @Override 
    public void onPrepared(MediaPlayer mp) { 
     mp.start(); 
    } 
}); 

當使用VLC我得到相同的結果,已經有人測試Android是否真的支持HLS流的適應性?

UPDATE

更新流URL到多軌M3U8播放列表

回答

3

因此,事實證明Android確實支持HLS流,但是自適應比特率切換部分被省略了。一旦連接變得更好或更糟,並選擇了不同的視頻軌道,流將凍結,並在此之後應用程序崩潰。

+1

在Android 4.4.2上,使用[此HLS流](http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8)時,電影會在選擇備用音軌時重新開始。 – fionbio