Как мне конвертировать webm в mp4 для MacOSX?

15

Я использую MacOSX Lion и хотел бы получить метод преобразования webm в mp4 (или другой формат, совместимый с iTunes). ffmpegкажется возможным, но документация для меня немного тупая; пошаговые инструкции будут оценены.

Эйвери Чан
источник
Вы также можете использовать Ручной тормоз, если он уже установлен. Это красивый графический интерфейс с открытым исходным кодом для ffmpeg, который делает это очень легко и просто. handbrake.fr
Джошуа Пинтер

Ответы:

21

Получить FFmpeg

Если вы хотите использовать ffmpeg, пойти и либо

Если вы загрузили его вручную (не с Homebrew), я бы предложил скопировать ffmpegисполняемый файл в PATH, чтобы вы могли использовать его из терминала. Допустим, вы загрузили его ~/Downloads/ffmpeg/ffmpeg, затем выполните:

sudo mkdir -p /usr/local/bin
sudo cp ~/Downloads/ffmpeg/ffmpeg /usr/local/bin/
sudo chmod +x !$ /usr/local/bin/ffmpeg

Конвертировать в MP4

Теперь, под "MP4", я предполагаю, что вы имеете в виду использовать H.264 и AAC в качестве видео и аудио кодеков соответственно. Для этого основной командой будет:

ffmpeg -i input.webm -c:v libx264 -c:a aac -strict experimental -b:a 192k output.mp4

Если вы хотите контролировать качество, взгляните на руководство по кодированию x264 . Он устанавливается с -crfопцией, где по умолчанию установлено значение 23, а более низкое означает лучшее качество (типичные значения от 18 до 28). В приведенном выше примере используется качество по умолчанию 23 для видео и постоянная скорость передачи 192 кбит / с для аудио.

Что касается аудио, статические сборки не поддерживают libfdk-aac, но если у вас есть поддержка, вы должны использовать это вместо:

ffmpeg -i input.webm -c:v libx264 -c:a libfdk_aac output.mp4

FDK-AAC обеспечивает лучшее качество, чем внутренний кодер AAC. Для контроля качества звука см. Руководство по кодированию AAC .

slhck
источник
Таким образом, я успешно создаю файлы MP4 во FreeBSD (из MKV и WEBM) и могу воспроизводить их во FreeBSD mplayer, но Apple отказывается открывать их ...
Михаил Т.
Кто такой «Apple» в вашем случае? QuickTime или предварительный просмотр? Вы получаете конкретное сообщение об ошибке? Что выводит `ffmpeg -i <ваш-файл>?
slhck
Под «Apple» я имел в виду их файловый менеджер. Он не будет генерировать изображение предварительного просмотра из файла. Попытка воспроизвести видео (двойным щелчком) также вызвала сообщение об ошибке. Аналогичным образом, iMovie отказался открыть файл.
Михаил Т.
В вашем источнике может быть что-то особенное, что делает его неудачным. Как я уже сказал, команда, которую вы дали ниже, создает более или менее «устаревшее» видео с плохим качеством. Дайте мне знать, что именно не получается, и мы это выясним.
Slhck
Похоже, что параметр FDK-AAC теперь libfdk_aac (подчеркивание вместо тире).
двенадцать17
0

Это то, что я только что успешно использовал во FreeBSD для создания MP4-файлов, которые MacOS распознает как таковые:

ffmpeg -i input_filename -acodec aac -b:a 128k -vcodec mpeg4 -b:v 1200k -flags +aic+mv4 output_filename.mp4

Я начал с командной строки, используя этот учебник , но изменился libfaacна, aacпотому что последний не был найден ...

Должен быть какой-то особый вид безумия, затрагивающий программистов в области мультимедийных кодеков, который заставляет их тонко изменять параметры командной строки от одного выпуска к другому.

Михаил Т.
источник
Хотя это действительно создает контейнер MP4, ваша команда использует (старый) кодек MPEG-4 Part II, который отличается от современного H.264 (см. Здесь ), что означает, что качество вашего видео будет ниже для любого заданного размера файла , Я бы рекомендовал не использовать этот кодек. MacOS должен читать видео H.264 просто отлично. Вы можете « Как задать новый вопрос», включая подробности о видео, которое вы создали, и вашей ОС, а затем проверить связь со мной, и я посмотрю, почему он не работает.
slhck