一般:我的目标是Android 4.1(API 16)及以上。我主要通过Android Studio在Android模拟器上进行测试,因为我无法访问较旧的物理设备。我正在尝试从外部存储播放.webm视频。视频编解码器是VP8,音频编解码器是Vorbis。
问题:我正在将VideoView注入LinearLayout(videoHolderLayout
),如下所示:
VideoView videoView = new VideoView(this);
MediaController mediaController = new MediaController(videoView.getContext());
mediaController.setAnchorView(videoView);
videoView.setMediaController(mediaController);
videoHolderLayout.addView(videoView);
videoView.setVideoPath(videoPath);
如果我尝试从头开始播放视频,则会出现以下错误:
W/AudioSystem: AudioFlinger server died!
W/IMediaDeathNotifier: media server died
E/MediaPlayer: error (100, 0)
E/MediaPlayer: Error (100,0)
D/VideoView: Error: 100,0
如果我使用MediaController在视频中寻找(或videoView.seekTo(...)
)几秒钟,它就可以正常播放。使用MediaController,如果我回到视频的开头,我将再次收到错误/崩溃。
有什么想法吗?
答案 0 :(得分:0)
在onPrepared方法中编写以下代码
int position = 0;
videoView.seekTo(position);
if (position == 0) {
videoView.start();
} else {
videoView.pause();
}