Мои проблемы с синхронизацией Android MediaPlayer
У меня есть простой мультимедийный проигрыватель Android, который может воспроизводить несколько видео одновременно на одном экране. Таким образом, в основном один экран медиа-проигрывателя разделен на 4 части, с 4mediaPlayer
Экземпляр склеен, и каждая часть воспроизводит данное видео.
Это работает почти нормально, когда мои видео файлы хранятся локально на устройстве. Есть проблемы с синхронизацией, но незначительные. Но при вводе URL-адреса для потоковой передачи по HTTP возникают значительные проблемы с синхронизацией. В чем проблема? Как я могу удалить проблемы с синхронизацией?
Единственное, что я мог сделать, это сначала создать экземпляр медиаплеера и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();