Інструмент терміналу для приєднання mp4 відео


14

Я хотів би приєднатися до mp4 відео, як я приєднуюся до pdfs by pdfjoin.

Чи є інструмент за замовчуванням для приєднання відео?

Відповіді:


15

Так, ви можете об'єднати кілька відео в один файл, використовуючи команди терміналу за замовчуванням. Використовуючи простий catбуде робити все, що хочете.

cat video1.avi video2.avi videon.avi > output.avi

Є велика, але тут - цей метод виведе заголовок video1.avi на output.avi. Отже, заголовок output.avi такий же, як і video1.avi, тому для більшості відеоплеєрів він буде схожий на video2.avi та videon.avi - втрачено - джерело 1 , джерело 2 .

Для виправлення цього потрібні додаткові інструменти. Є багато інших термінальних інструментів для приєднання фільмів, які також оновлюють заголовок. Найвідоміші інструменти для редагування відео - це mencoder (який входить до MPlayer) та ffmpeg . У обох є величезна кількість варіантів та налаштувань, і поза цим форумом слід детальніше розглянути, але я наведу короткі команди нижче.

Використання та встановлення mencoder або ffmpeg може залякати, але можливості редагування відео - це найпотужніший, з яким я стикався до цих пір. Оскільки установка з джерела може скласти клопот для рідних користувачів ОС X, я раджу використовувати Homebrew .

Щоб встановити ці інструменти за допомогою Homebrew , запустіть цей одноклапник у своєму терміналі:

ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

Зараз встановлено Homebrew, розумно дотримуватися пропозицій інсталятора після встановлення. Тепер ми встановлюємо ffmpeg та mencoder за допомогою brew.

brew install ffmpeg mplayer

Тепер ми можемо використовувати mencoder для об'єднання двох відео:

mencoder -oac copy -ovc copy -idx -o output.mp4 video1.mp4 video2.mp4 video3.mp4

Або ми можемо використовувати ffmpeg для об'єднання двох відео:

 ffmpeg -i concat:"video1.mp4|video2.mp4" -codec copy output.mp4

Ви спеціально запитуєте файли .mp4. mp4це формат контейнера, можливо, що за замовчуванням установка ffmpegабо mencoderне має правильних пакетів кодування / декодування ('кодеків') за замовчуванням, і вам потрібно встановити їх окремо. Але це виходить за межі цієї теми.


Зауважте, що вам може знадобитися уникнути символу "|" який особливий для багатьох снарядів, тому ffmpeg -i concat: video1.mp4 \ | video2.mp4
CousinCocaine

2
Використання одинарних лапок ('') може бути простішим, ніж уникнути символу труби. У команді, що використовується у відповіді, це не має жодного значення.
nohillside

Дуже гарна відповідь з чітким поясненням. Дякую!
Лео Леопольд Герц 준영

2
Спробував встановити Homebrew за допомогою термінальної команди, як описано в цій відповіді, і отримав "The requested URL returned error: 400 Bad Request". Згідно з веб-сторінкою Homebrew , нова команда терміналу/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Sparky

@Sparky перейдіть до brew.shінструкцій із встановлення.
CousinCocaine
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.