2012-11-26 1 views
0

У меня есть сценарий, который использует параметры этой команды ffmpeg для кодирования видео.Как присоединиться к двум командам ffmpeg

ffmpeg -i inputfile -acodec libfaac -keyint_min 20 -r 20 -vcodec libx264 -vpre hq -crf 25 -b 300k -bt 300k -y -v 0 -bf 16 -threads 0 outputfile 

и у меня есть пользовательские команды я хотел бы добавить к этому, подобно этому

ffmpeg -i inputfile -vf "movie=watermark.png [watermark]; [in][watermark] overlay=main_w-overlay_w-10:main_h-overlay_h-10 [out]" outputfile 

так я заменил главную команду как этот

ffmpeg -i inputfile -acodec libfaac -keyint_min 20 -r 20 -vcodec libx264 -vpre hq -crf 25 -b 300k -bt 300k -y -v 0 -bf 16 -threads 0 -vf "movie=watermark1.png [watermark]; [in][watermark] overlay=main_w-overlay_w-10:main_h-overlay_h-10 [out]" outputfile 

и попробовал его в команде line, но это ничего не делает, вывод ничего подобного

[[email protected] test1]# ffmpeg -i test1800.mp4 -acodec libfaac -keyint_min 20 -r 20 -vcodec libx264 -vpre hq -crf 25 -b 300k -bt 300k -y -v 0 -bf 16 -threads 0 -vf "movie=watermark1.png [watermark]; [in][watermark] overlay=main_w-overlay_w-10:main_h-overlay_h-10 [out]" outputfile.mp4 
[[email protected] test1]# 

как я могу это решить?

Спасибо за ваше время.

UPDATE Моей FFmpeg деталь команда

[[email protected] test1]# ffmpeg 
ffmpeg version N-47061-gbe2c0bc Copyright (c) 2000-2012 the FFmpeg developers 
    built on Nov 25 2012 09:32:08 with gcc 4.1.2 (GCC) 20080704 (Red Hat 4.1.2-52) 
    configuration: --enable-gpl --enable-libmp3lame --enable-libvorbis --enable-libvpx --enable-libx264 
    libavutil  52. 9.100/52. 9.100 
    libavcodec  54. 77.100/54. 77.100 
    libavformat 54. 37.100/54. 37.100 
    libavdevice 54. 3.100/54. 3.100 
    libavfilter  3. 23.102/3. 23.102 
    libswscale  2. 1.102/2. 1.102 
    libswresample 0. 17.101/0. 17.101 
    libpostproc 52. 2.100/52. 2.100 
Hyper fast Audio and Video encoder 
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}... 

Use -h to get full help or, even better, run 'man ffmpeg' 

благодарит

ответ

1

Вашего билд FFmpeg должен быть очень старым, если вы используете -vpre с libx264. Кроме того, -crf и -b являются взаимоисключающими, поэтому вы можете использовать один или другой, но не оба, что приведет к тому, что ffmpeg игнорирует один из параметров.

Этот пример является приближенным вашей команды, но с недавнего синтаксисом:

ffmpeg -i input -i watermark.png -c:v libx264 -preset slow -crf 25 -c:a libfaac -q:a 100 -filter_complex "overlay=main_w-overlay_w-10:main_h-overlay_h-10" output.mp4 

Если вы слишком ленивы, чтобы скомпилировать увидеть ffmpeg.org download страницу для ссылок на Linux, Windows или OS X строит. Обратите внимание, что libfaac, вероятно, не будет доступен с сторонними сборками, но могут быть доступны другие кодеры AAC, такие как libvo_aacenc, и, конечно же, собственный кодировщик aac всегда является опцией.

Дополнительную информацию см. На сайте FFmpeg and x264 Encoding Guide.


Некоторые вещи, чтобы помнить, в следующий раз:

  • вопросы использования FFmpeg лучше подходят для superuser.com. Stack Overflow специально предназначен для программирования вопросов и ответов.

  • Это обычная проблема, но вместо того, чтобы говорить, «это ничего не делает», пожалуйста, покажите полный вывод консоли ffmpeg, полученный из команды ffmpeg. Он содержит более полезную информацию, чем просто указание «это ничего не делает».

  • Попробуйте использовать последнюю версию ffmpeg, когда это возможно. Разработка очень активна, и любые обнаруженные ошибки имеют хорошие шансы уже исправляться.

+0

Я обновил ffmpeg до последнего verion, но сценарий, который я использую, использует старые параметры. благодаря – AMB