Як вказати бітрейт аудіо та відео


37

У мене mov-файл із такою інформацією про медіа:

Stream 0
Type: Video
Codec: H264-MPEG-4 AVC (part 10)avc1
Language: English
Resolution: 1280x720
Frame rate: 24

Stream 1
Type: Audio
Codec: MPEG AAC Audio (mp4a)
Language: English
Channels: Stereo
Sample rate: 44100HZ

І я хотів би використовувати FFmpeg для перетворення цього файлу MOV в AVI-файл.

Я знаю, що я можу вказати швидкість передачі звуку та відео (з цієї статті ):

ffmpeg -i InputFile.mpg -ab 128 -b 1200 OutputFile.avi

Але для мого випадку, якщо я хочу зберегти початкову якість, якою має бути швидкість передачі звуку та відео?

Відповіді:


52

Для того щоб вказати цільовий бітрейт для відео та аудіо, використовуйте відповідно -b:vі -b:aпараметри. Ви можете використовувати абревіатури, наприклад, Kдля kBit / s та MMBit / s.

Наприклад:

ffmpeg -i input.mp4 -b:v 1M -b:a 192k output.avi

Примітка:

  • Це простий кодер з одним проходом, який намагається досягти вказаного бітрейта в кінці. Це, ймовірно, призведе до неправильних оцінок бітрейт для відео частини. Рекомендується використовувати режим кодування з двома проходами, якщо ви хочете націлити певний бітрейт. Дивіться посібник з кодування H.264 для отримання додаткових порад.

  • Подивіться на якість: чи потрібно вам це краще? Потім використовуйте більш високий бітрейт. Спробуйте і подивіться, що найкраще підходить для вас. Якщо ви просто використовуєте той самий бітрейт, що і вхід, велика ймовірність, що якість буде набагато гіршою, ніж оригінальна через втрату генерації .

  • ffmpeg вибирає кодек відео та аудіо за замовчуванням для контейнера AVI, який є mpeg4і libmp3lameкодером, відповідно MPEG-4, частина II відео та MP3-аудіо. Тут ви не можете використовувати оригінальні відео- та аудіокодеки (H.264 та AAC), оскільки вони не підтримуються контейнерами AVI.

  • Практично будь-який кодек дозволяє встановити певний бітрейт, але багато кодеків мають змінні режими бітрейта / фіксованої якості. Якщо вам не важливий конкретний розмір файлу, скористайтеся цим режимом замість цього. Прочитайте посібник з кодування H.264 та розділ про коефіцієнт постійної швидкості .


@Visionscaper Це не має сенсу. Ваша опція буде копіювати вхідний аудіопотік і, отже, не виконувати кодування. Вам слід отримати попередження про це.
slhck

хм, ви праві, вибачте за це. Я неправильно зрозумів варіант; я поспішаю, я не думаю, що я плачу. Я отримав повідомлення про помилку без цієї опції, тому у моєму аудіокодеку (налаштуваннях) має бути щось не так.
Visionscaper

Впевнений, не соромтеся розмістити нове запитання з повним журналом, і я ознайомлюсь із ним!
slhck

Ось ви йдете! superuser.com/q/890785/428914
Visionscaper
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.