FFmpeg / avidemux: виправити упаковані B-кадри


12

Я перекодую кілька моїх старих відео mpeg4 (у контейнерах avi) до h.264 з FFmpeg. В основному

ffmpeg -i input.avi -c:v libx264 [x264 settings] -c:a libfdk_aac [aac settings] output.mp4

Роблячи це, mpeg4видає таке попередження

Відео використовує нестандартний і марнотратний спосіб зберігання B-кадрів ("упаковані B-кадри"). Спробуйте скористатися таким інструментом, як VirtualDub або avidemux, щоб виправити його.

Я знаю, що все ще можна успішно перекодувати, але з попередження мені не зрозуміло, чи вплине на якість отриманого відео h.264 .

Так,

  • Зважаючи на те, що я дбаю лише про якість (і розмір), я хочу мінімізувати розмір для своїх мобільних пристроїв, тому я також використовую veryslowпопередньо встановлений вихідний відео h.264, чи повинен я дбати про упакований B- кадри?

  • Якщо мені потрібно, як їх виправити за допомогою avidemux? (Я вже спробував скимінг через посібник.)

Відповіді:


15

B-кадри - це тип кадру, який використовується при стисненні відео для представлення кадрів відео. B-кадри можуть використовувати інформацію як попередніх, так і майбутніх кадрів для представлення кожного відеокадру.

У старих відео, кодованих DivX, зазвичай використовується некрасивий метод, званий пакується бітовий потік, який розміщує декілька відеокадрів в один фрагмент AVI. Упакований бітовий потік не є стандартним MPEG-4, використовує більше місця, потребує більшої потужності процесора для кодування / декодування, і (головне) може виникнути проблеми при скопіюванні в інший тип контейнера. Це головна причина попередження.

Оскільки ви повторно кодуєте відео, а не просто копіюєте його, вам слід добре. Якщо ви хочете зберегти оригінальне відео, але скопіюйте його в інший тип контейнера (скажімо, MP4 або MKV), найкраще буде розпакувати B-кадри спочатку за допомогою фільтра FFmpeg mpeg4_unpack_bframes.

Ви можете розпакувати B-кадри чимось простим, як-от

ffmpeg -i INPUT.avi -codec copy -bsf:v mpeg4_unpack_bframes OUTPUT.avi
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.