1

Я пытаюсь объединить два видео друг на друга. Я уже сделал эти две команды ffmpeg:

ffmpeg -i 2_Out_of_Control.VOB -aspect 16:9 \
-vf "yadif=0:-1:0,crop=w=714:h=476:x=6:y=0,scale=1280:720,boxblur=lp=13" \
-c:v libx264 -preset medium \
-c:a copy \
'2(blurred)Out_of_Control.mp4'

ffmpeg -i 2_Out_of_Control.VOB \
-vf "yadif=0:-1:0,crop=w=714:h=476:x=6:y=0,scale=1080:720" \
-c:v libx264 -preset medium \
-c:a copy \
'2(clear)Out_of_Control.mp4'

В настоящее время я застрял в создании "чистой" версии по центру и поверх "размытой" версии. Я не уверен, как это сделать. Добился этого только с помощью OpenShot, но, да, предпочел бы, если есть команда ffmpeg, чтобы объединить два видео друг с другом.

Детали входного файла:

$ ffmpeg -i 2_Out_of_Control.VOB 
ffmpeg version git-2013-10-03-c7fe2a3 Copyright (c) 2000-2013 the FFmpeg developers
  built on Oct  4 2013 05:22:06 with gcc 4.6 (Ubuntu/Linaro 4.6.3-1ubuntu5)
  configuration: --prefix=/home/username/ffmpeg_build --extra-cflags=-I/home/username/ffmpeg_build/include --extra-ldflags=-L/home/username/ffmpeg_build/lib --bindir=/home/username/bin --extra-libs=-ldl --enable-gpl --enable-libass --enable-libfdk-aac --enable-libmp3lame --enable-libopus --enable-libtheora --enable-libvorbis --enable-libvpx --enable-libx264 --enable-nonfree --enable-x11grab
  libavutil      52. 46.100 / 52. 46.100
  libavcodec     55. 34.100 / 55. 34.100
  libavformat    55. 19.100 / 55. 19.100
  libavdevice    55.  3.100 / 55.  3.100
  libavfilter     3. 88.101 /  3. 88.101
  libswscale      2.  5.100 /  2.  5.100
  libswresample   0. 17.103 /  0. 17.103
  libpostproc    52.  3.100 / 52.  3.100
Input #0, mpeg, from '2_Out_of_Control.VOB':
  Duration: 00:05:00.01, start: 0.500000, bitrate: 4574 kb/s
    Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, smpte170m), 720x480 [SAR 8:9 DAR 4:3], max. 9334 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 59.94 tbc
    Stream #0:1[0x80]: Audio: ac3, 48000 Hz, stereo, fltp, 384 kb/s
At least one output file must be specified

1 ответ1

1

Наложение обычного видео поверх размытой версии

нормальное изображение наложено поверх размытой версии
Пример наложения размера 1/2 поверх размытого оригинала (или он может представлять фон размером 2x за наложением оригинала)

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

ffmpeg -i input -filter_complex \
"[0:v]yadif=0:-1:0,crop=w=714:h=476:x=6:y=0,split[v1][v2]; \
 [v1]scale=1280:720,boxblur=lp=13[bg]; \
 [v2]scale=1080:720[fg]; \
 [bg][fg]overlay=main_w/2-overlay_w/2:main_h/2-overlay_h/2,setdar=16/9[video]" \
 -map "[video]" -c:v libx264 -preset medium -crf 20 -c:a copy \
 output.mp4

Фильтрограф

  1. Deinterlace с yadif, crop, а затем split результаты. Назовите эти выходы [v1] и [v2] .

  2. scale и boxblur [v1] . Назовите выход [bg] как в "background".

  3. scale [v2] . Назовите выход [fg] как в "переднем плане".

  4. overlay [fg] поверх [bg] . Сделать это по центру. Затем установите соотношение сторон дисплея с помощью setdar . Назовите этот вывод [video] чтобы вы могли обращаться к нему с -map .

Также см

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .