Найшвидший спосіб конвертувати відео (пакетне чи одиночне)?


26

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

Для своєї щоденної роботи мені потрібно часто конвертувати відео з багатьох випадкових форматів (як правило, великих AVI , M4V , а що ні) та конвертувати їх і стискати їх в ефективні файли, які ми можемо використовувати в Інтернеті для завантаження. Формати, які я повинен створити, це:

Мені потрібно створити загальні шаблони для декількох випадків використання (перетворити на такі ж джерела, 1080p або 720p ) і мати можливість їх швидко обробляти, і в чергу.

Будь-які ідеї, як найкраще пройти цей процес в Ubuntu?


Я знаю, що в Windows є Avanti, і я думаю, що найближчим, що ви можете отримати в Linux, є або командний рядок avconv, або інтерфейс, як WinFF або ConvertMe ... можливо, в крайньому випадку ви можете спробувати Avanti у Wine.
Річард

Відповіді:


52

Якщо ви віддаєте перевагу командному рядку, ви можете використовувати ffmpeg(або handbrake-cli).

MP4

Якщо припустимо, що ви використовуєте останню версію ffmpeg:

ffmpeg -i input -c:v libx264 -crf 23 -preset medium -c:a aac -b:a 128k \
-movflags +faststart -vf scale=-2:720,format=yuv420p output.mp4
  • -crf: Якість. Діапазон логарифмічний від 0 (без втрат) до 51 (найгірша якість). За замовчуванням - 23. Суб'єктивний діапазон здорового звуку становить ~ 18-28 або близько того. Використовуйте найвище значення, яке все ще дає прийнятну якість. Якщо ви повторно кодуєте непрактично великі входи для завантаження на YouTube чи подібні, тоді спробуйте значення 17 або 18, оскільки ці відео-послуги все одно перекодуються.

  • -preset: Швидкість кодування. Більш повільне встановлення забезпечує кращу компресію (якість на розмір файлу), але повільніше. Використовуйте найповільніші, до яких у вас є терпіння: ультрашвидкий, надшвидкий, дуже швидкий, швидший, швидкий, середній (за замовчуванням), повільний, повільніший, найпотужніший.

  • -movflags +faststart: Дозволяє відтворювати відео до повного завантаження у випадку прогресивного перегляду завантаження. Корисно, якщо ви розміщуєте відео, інакше зайвим, якщо ви завантажуєте до відео-сервісу, такого як YouTube.

  • -vf scale=-2:720,format=yuv420p: Фільтр, що використовує фільтри масштабування та форматування відео. Масштабуйте до 720 пікселів у висоту та автоматично вибирайте ширину, яка збереже аспект, а потім переконайтесь, що формат пікселів сумісний із тупими плеєрами.

  • -b:a 128k: Бітрейт аудіо Якщо ваш ffmpegзастарів, то вам потрібно буде додати його -strict experimentalдо використання -c:a aac.

MOV

Оскільки ваші файли MOV та MP4, ймовірно, містять однакові формати відео та аудіо, ви можете кодувати MP4 та зробити MOV шляхом повторного відключення музики (у режимі потокової копії ) замість повторного кодування:

ffmpeg -i input.mp4 -codec copy output.mov

WMV

FFmpeg підтримує лише WMV 7 та 8. Я не знаю кодера з відкритим кодом для версії 9.

$ ffmpeg -encoders | grep -i windows
[...]
 V..... = Video
 A..... = Audio
 ------
 V..... wmv1                 Windows Media Video 7
 V..... wmv2                 Windows Media Video 8
 A..... wmav1                Windows Media Audio 1
 A..... wmav2                Windows Media Audio 2

Оскільки я не знайомий з цими кодерами, я можу навести лише неперевірений приклад:

ffmpeg -i input -c:v wmv2 -b:v 1024k -c:a wmav2 -b:a 192k output.wmv

Як отримати ffmpeg

Ви можете завантажити збірку Linux з ffmpeg або дотримуватися покрокового посібника з компіляції ffmpeg, щоб налаштувати збірку.

Використання bash "for loop" для виконання пакетного кодування

Для кодування всіх відео в каталозі:

$ mkdir encoded
$ for f in *.avi; do ffmpeg -i "$f" -c:v libx264 -crf 23 -preset medium \
  -c:a aac -b:a 128k -movflags +faststart -vf scale=-2:720,format=yuv420p \
  "encoded/${f%.avi}.mp4"; done

Також див


5

Спробуйте HandBrake .

HandBrake - це інструмент для перетворення відео з майже будь-якого формату на вибір сучасних широко підтримуваних кодеків. Щоб встановити, просто натисніть Ctrl+ Alt+ Tна клавіатурі, щоб відкрити Terminal. Коли він відкриється, запустіть команди (и) нижче:

sudo add-apt-repository ppa:stebbins/handbrake-releases
sudo apt-get update
sudo apt-get install handbrake
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.