Вопрос

Я ищу способ повернуть видео, выстрел с моим Nexus 4 на моем дебиальном хрипоте Сытем. Видео снимаются в портретном режиме, и я хотел бы повернуть их в ландшафтный режим. Предпочтительно вращение является командной строкой.

Я нашел несколько предыдущих вопросов, которые намекаются на хорошее решение, но я не могу справиться с этим работать.

начать с этого вопроса: Вращающиеся видео с FFMPEG

Но это указывает на то, что FFMPEG устарел и что я должен использовать avconv. Я нашел этот вопрос, подробно опираясь на путь вперед. https://shubuntu.com/questions/269429/ Как-Can-I-Rotate-Video-by-180-градусы - с AVConv

Это сделало меня с помощью следующей команды:

avconv -i original.mp4 -vf "transpose=1" -codec:v libx264 -preset slow -crf 25 -codec:a copy flipped.mp4
.

Однако это кропотливо медленно (последний тест взял меня более чем на 6 часов менее чем за 3 минуты кадров) и не приводит к воспроизвому фильму. Я также получаю ошибку в выходе в журнал, который состояния скорости MB> предела уровня.

Есть ли проблема здесь с переназначением? Должен ли я сначала перенаправить видео с моего телефона на другой, более «работоспособный» кодировку перед применением вращений? Или я упускаю еще один важный момент?

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

Решение

Если вы просто хотите изменить метаданные, такие, как MediaPlayers, которые считают флаг, воспроизводят файл, повернутые, попробуйте что-то вроде:

ffmpeg -i input.mp4 -c copy -metadata:s:v:0 rotate=90 output.mp4
.

Как нашел в других странах на стековерфле .

Другие советы

Вращение= 0 Исправлена моя проблема.Я начал записывать видео в портретном режиме, осознал мою ошибку и сразу же повернул свой телефон к пейзаже, чтобы продолжить запись.Мой iPhone пометил видео как портрет для всего видео.

ffmpeg -i input.mp4 -c copy -metadata:s:v:0 rotate=0 output.mp4
.

Исправлено.

Генеракодицетагкод и аналогичные программы Изменение метаданных Даже с опцией FFmpeg. -map_metadata может прочитать матрицу вращения и флаг вращения, а с версии 10.89 также записывает его, как описано ниже.

Чтобы получить истинное вращение без потерь (включая метаданные), я не мог найти решение, поэтому я схватил шестнадцатеричный редактор (например, HXD ) и проанализировал повернутые видеофайлы.

Вращение без потерь MP4:

    .
  • Открыть MP4 с помощью шестнадцатеричного редактора и поиск exiftool, чтобы найти метаданные видеокауса
  • некоторые строки выше (для моих файлов в основном 9, иногда 12) вы должны увидеть vide
  • между между ним должен быть знак генеракодицетагкода (Hex 40)
  • в двух рядах до него хранится матрица вращения
  • Нет вращения:

    00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    00 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    40
    
  • 180 °:

    FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    FF FF 00 00 00 00 00 00 00 00 00 00 00 00 00 00
    40
    
  • 90 ° CW:

    00 00 00 00 00 01 00 00 00 00 00 00 FF FF 00 00 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    40 
    
  • 90 ° CCW:

    00 00 00 00 FF FF 00 00 00 00 00 00 00 01 00 00 
    00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 
    40
    

Измените файл, поскольку вам это нужно, и его следует повернуть в игроках, которые поддерживают флаг вращения (делают большинство текущих игроков).

В случае, если ваше видео содержит стереозвук, это, очевидно, не переключается, поэтому, если вы хотите, чтобы звук соответствовал с вращением видео (180 °), вам необходимо включить влево и правильные каналы.

Есть несколько вещей, которые вы затронули в вашем вопросе:

  1. есть почти нет шансов, что вы сможете повернуть без наряжения. Исключение к этому правилу (MJPEG Codec) уже указывалось, но вряд ли вы его используете, поэтому выходит за рамки этого вопроса. Я отмечу, что причина этой способности заключается в том, что JPEG может быть преобразован через метаданные. Таким образом, если вы сможете найти контейнер, который имеет вращение метаданных, вы сможете повернуть, но никто не существует (или достаточно широко распространен) до сих пор.
  2. Если потребовалось время, чтобы повернуть и реконструировать 3 минуты видео, то проблема может лежать на резолюции enormous . И я имею в виду огромный ! Можете ли вы предоставить вывод генеракодицетагкода, чтобы его можно было установлено.
  3. Либав по сравнению с дебатами FFMPEG очень контрпродуктивны (вы можете увидеть, что на сумму Fud, размещенного здесь). В основном то, что произошло раскол проекта с некоторыми разработчиками, идущими в одностороннем направлении, а какой-то другой, тот факт, что проект FFMPEG удалось сохранить имя, это просто случайность, и это не имеет смысла вызывать один проект оригинал и другой вилкой. Различия между проектами в основном в стиле развития и на философии. Если вы будете характеризовать FFMPEG как более открытый источник и LIBAV как более бесплатное программное обеспечение, вы не будете иметь все, что ошибается. Рациональные люди надеются, что в конечном итоге разработчики придут к их чувствам, и, возможно, не объединяет проекты, но сотрудничать в большей степени. Когда Убунту вышла изначально, на каждом чате Dobian GNU / Linux были огромные сообщения по линии «Ubuntu не является Debian !!!!!!!», но теперь ситуация успокоилась, и обе стороны довольно довольны одним другой.

Этот ответ - это просто краткое изложение комментариев, предоставленных LordneckBeard.

вращается без кодировки

Вращающийся без повторного кодирования невозможен, если:

    .
  • Ваш вход - mjpeg
  • Вы вращаете при воспроизведении

вращается с кодировкой, используя правильный FFMPEG

Чтобы правильно понять, что шаги, необходимые для этого, нужно начать с чтения или, по крайней мере, выбрать этот вопрос:

Каковы различия и сходства между FFMPEG, LIBAV и AVConv?

Сводка: avconv - это вилка FFMPEG, сопровождающий Debian выбрал AVConv, вы должны составить правильный FFMPEG от источника.

Следующий шаг будет компилировать правильный FFMPEG из источника, как подробно описан здесь:

Руководство по компиляции FFMPEG для Debian

Последний шаг использует команды, найденные на других сообщениях:

Как перевернуть видео 180 ° (вертикальные / вверх ногами) с ffmpeg? или же Вращающиеся видео с FFMPEG

Сводка: ffmpeg -vfilters "Rotate= 90" -I input.mp4 Вывод .mp4

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