簡體   English   中英

HTTP Live Streaming(HLS)無法在Android 4上自適應嗎?

[英]HTTP Live Streaming (HLS) not adaptive on Android 4?

我一直在嘗試使用HLS將視頻流式傳輸到Android設備,這是HoneyComb以來的正式支持。 問題是,當我使用Apple HLS測試流時,似乎沒有適應性。 當我擁有良好的連接時,我將獲得高質量的適當流,但是當我使用3G時,我將獲得相同的質量和流滯。 我一直在使用標准的Android類:

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播放列表

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

在您的代碼示例中,播放列表的URL適用於特定的比特率,除非Android客戶端知道備用格式,否則無法進行自適應流式傳輸。

您需要為VideoView設置其他URL。 嘗試包含多個比特率的一個: http : //devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM