【发布时间】:2016-07-27 01:18:09
【问题描述】:
我有一个简单的 Android 媒体播放器,可以在一个屏幕上同时播放多个视频。所以基本上一个媒体播放器屏幕分为 4 个部分,4 个 mediaPlayer 实例粘在一起,每个部分播放一个给定的视频。
当我的视频文件本地存储在设备上时,它几乎可以正常工作。有同步问题,但很小。但是当我输入 HTTP 流的 URL 时,会出现严重的同步问题。问题是什么?一般来说,我怎样才能消除同步问题?
我唯一能做的就是首先实例化媒体播放器和prepare() 它们,然后一个接一个地调用start(),这样至少开始时间彼此接近。不过效果不大。
这里我有一个返回每个 mediaplayer 实例的方法:
MediaPlayer mediaPreparation(String filename, boolean setMute) {
String url = "myURL"; // your URL here
// create mediaplayer instance
MediaPlayer mediaPlayer = new MediaPlayer();
if (setMute) {
mediaPlayer.setVolume(0, 0);
}
try {
mediaPlayer.setDataSource(url);
mediaPlayer.prepare();
} catch (IOException e) {
}
mediaPlayer.setLooping(true);
// mediaPlayer.start();
return mediaPlayer;
}
然后我一一开始:
mp[0].start();
mp[1].start();
mp[2].start();
mp[3].start();
【问题讨论】:
-
Tina J,你解决了这个问题吗?我有同样的问题,我想知道是否有任何解决方案。
标签: android performance video video-streaming android-mediaplayer