Я написал очень простое приложение, которое перебирает список видео и передает их с сервера nodejs.
Я просто выполняю базовую настройку потокового видео с помощью Android MediaPlayer API, и все отлично работает, кроме объемного звука.
С Dolby Digital (ac3) я вообще не слышу звука. Я попробовал aac 5.1 и получил звук, но он был преобразован в стерео.
public void setupVideoView(Uri videoAddress) {
emVideoView.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
@Override
public void onPrepared(MediaPlayer mediaPlayer) {
// Prepared Listener
}
});
emVideoView.setOnErrorListener(new MediaPlayer.OnErrorListener() {
@Override
public boolean onError(MediaPlayer mp, int what, int extra) {
// Error Listener
}
});
emVideoView.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
@Override
public void onCompletion(MediaPlayer mediaPlayer) {
setupVideoView(Uri.parse(video_url));
}
});
emVideoView.setVideoURI(videoAddress);
}
Я искал часы и не смог найти решение. Я ожидаю, что Android, если аудиокодек не поддерживается, просто пропустит его, чтобы что-то еще в цепочке могло его декодировать. Может я не совсем понимаю как это работает? Любая помощь приветствуется.