当我尝试在 ASUS padfone (http://www.asus.com/Mobile/PadFone/) 上播放 HLS m3u8 文件 (http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8) 时,它显示没有视频和音频的黑屏。logcat中没有错误报告。
ASUS padfone 上安装的操作系统是 Android 4.0.3。
我使用的代码可以在 Sansumg Galaxy S2 等其他 Android 手机上完美运行。华硕 padfone 是否缺少用于解码 m3u8 流的 HLS 解码器?其他文件如 3gp、mp4 工作正常。任何建议,将不胜感激!
代码:
package com.videoview;
import android.app.Activity;
import android.net.Uri;
import android.os.Bundle;
import android.widget.MediaController;
import android.widget.VideoView;
public class videoview extends Activity {
/**
* TODO: Set the path variable to a streaming video URL or a local media
* file path.
*/
private String path = "http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8";
// private String path = "http://www.pocketjourney.com/downloads/pj/video/famous.3gp";
private VideoView mVideoView;
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
try {
setContentView(R.layout.videoview);
mVideoView = (VideoView) findViewById(R.id.surface_view);
// mVideoView.setVideoPath(path);
mVideoView.setVideoURI(Uri.parse(path));
mVideoView.setMediaController(new MediaController(this));
mVideoView.requestFocus();
mVideoView.start();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
XML 布局文件:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<VideoView
android:id="@+id/surface_view"
android:layout_height="fill_parent" android:layout_width="fill_parent"/>
</LinearLayout>