В последнее время я много боролся с воспроизведением видео в приложении для Android. Рассматриваемое видео представляет собой файл M3U8, который, в свою очередь, связан с серией вторичных M3U8, каждый из которых имеет список компонентов видеофайлов MPEG-TS, и один файл M3U8, содержащий аудиокомпоненты в формате AAC. У меня были небольшие проблемы с взаимодействием M3U8, однако теперь это работает нормально.
К сожалению, звук отстает от видео примерно на секунду. Эта задержка присутствует как в моем собственном действии, содержащем MediaPlayer, так и в простом запуске видеоплеера Android по умолчанию, указывающего на поток. При воспроизведении также часто возникают визуальные заикания или искажения. Ни одна из проблем не возникает при воспроизведении с VLC Beta или в версии этого приложения для iPhone, поэтому проблема не в самом видеофайле. Я попробовал библиотеку Vitamio, она работала еще хуже (гораздо более частые повреждения и отсутствие звука). К сожалению, изменить формат видео невозможно.
Мне кажется, что эта проблема может быть вызвана ограниченной поддержкой Android для MPEG-TS — в списке поддерживаемых форматов мультимедиа указано, что он использует звук AAC (тогда как я предполагаю, что версия iOS просто воспроизводит и видео, и аудио из .ts файл). Любые рекомендации/решения для исправления этого отставания?