Android Потоковое видео MOV с аудио в формате ACC (mp4a) и видео H264

StackOverflow https://stackoverflow.com//questions/23054215

Вопрос

Я хотел бы показать некоторое видео в моем приложении для Android.Видео похожи: http://myserver.com/video/myvideo.mov Все видео находятся в .мов и некоторые в .flv.

.мов иметь H264 - MPEG-4 AVC (avc1) видеоканал, и MPEG ACC Audio (mp4a) аудиоканал.

.flv иметь Flash Video (flv1) видеоканал, и MPEG Audio layer 1/2/3 (mpga) аудиоканал.

Если я сыграю в .мов с помощью проигрывателя Android по умолчанию я могу видеть видеоизображение, но ничего не слышу.С помощью .flv Я могу видеть и слышать файл в проигрывателе Android по умолчанию.

Есть ли способ правильно воспроизвести .мов с помощью MPEG ACC Audio (mp4a) аудиоканал?Кто-нибудь знает, существует ли пользовательская библиотека для воспроизведения этих файлов .mov?Заранее благодарю вас!

Это было полезно?

Решение

Как указано здесь Контейнер MOV даже с H264 / AAC внутри не поддерживается в Android.Основная причина заключается в том, что MOV (он же файловый формат quicktime) является проприетарным контейнером от Apple (он близок к MP4, но все же не то же самое) - большую часть времени он работает на 100% только на устройстве Apple и / или quicktime Player.

Контейнер FLV от Adobe также не поддерживается в Android (FLV может быть упакован с видео H263 или H264 внутри).

Это может работать на каком-то устройстве, но, как вы уже испытали, это может быть неуклюжим и, безусловно, непоследовательным для разных устройств.

Лучше всего упаковать / перекодировать ваш файл в формате, который, как вы знаете, будет совместим с Android.

Если вы сильно этого хотите, вы могли бы подумать о создании собственного видеоплеера / декодера для воспроизведения файлов mov / flv (например, с помощью ffmpeg), но это сам по себе продвинутый проект, и предоставление кода для этого выходит за рамки stackoverflow - возможно, взгляните здесь.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top