Поверните видео Android для отображения в Интернете

Я создаю веб-сайт. Я пытаюсь загрузить на него свое первое видео. Это видео в формате mp4 имеет портретную ориентацию и было записано на устройстве Android.

Когда я загружаю этот mp4 на свой веб-сайт, он отлично воспроизводится (в портретной ориентации) в Chrome; однако он воспроизводится в альбомной ориентации в Firefox и IE. Я понимаю, что это связано с тем, что Chrome использует метаданные вращения, хранящиеся в mp4, для воспроизведения видео в правильной ориентации, в то время как FF и IE не используют эти метаданные.

Я пытался исправить эту проблему с помощью FFMPEG и различных комбинаций команд Transpose, Metadata и Rotate. Я использую MediaInfo для просмотра метаданных, связанных с файлами, которые я создаю с помощью FFMPEG.

Моя проблема: 1) Если я использую Transpose = 1, то в FF, IE и проигрывателе Windows Media результирующее видео фактически поворачивается на 180 градусов, а метаданные показывают, что ширина и глубина файла такие же, как исходный файл . 2) Если я использую -metadata:s:v rotate=0 (я также пробовал поворачивать=90), то MediaInfo сообщает мне, что результирующие ширина и глубина файлов теперь портретные, но FF, IE и WMP не будут воспроизводить результирующий файл. WMP воспроизводит звук, но не изображение, а FF выдает сообщение об ошибке «Ошибка загрузки этого ресурса».

Какую команду ffmpeg мне нужно использовать для преобразования портретного MP4, записанного на устройстве Android, в mp4, который будет воспроизводиться в правильной ориентации в Firefox?

заранее спасибо


person Kim    schedule 16.06.2017    source источник


Ответы (1)


Вам придется перекодировать его, чтобы «физически» повернуть видео, если вы хотите, чтобы браузеры или проигрыватели, которые не учитывают метаданные поворота, воспроизводили его с правильной ориентацией.

Современная версия ffmpeg будет автоматически поворачивать видео в соответствии с метаданными поворота (и не будет копировать входные метаданные поворота на выход), поэтому просто запустите:

ffmpeg -i input.mp4 -c:a copy -movflags +faststart output.mp4
person llogan    schedule 16.06.2017
comment
Великолепно - ваше решение сработало с первого раза. aboutdogs.co.nz/why-is-video-so-hard Пытался проголосовать за ваш ответ, но у меня еще нет необходимой репутации :-( - person Kim; 20.06.2017