Video ffmpeg上的合成与大小不匹配
我试着拍摄3个视频和一幅图像,并制作10秒的合成,大致如下: 这是到目前为止我得到的命令。(我把它格式化了一点,这样更容易阅读) 在前3个过滤器上,我尝试填充/裁剪视频,以匹配512x288 在下一个过滤器上,将图像裁剪/填充到640x874 在接下来的2个过滤器中,我在顶部和中部视频中添加了一些填充,共5个像素 左栏的总高度应为Video ffmpeg上的合成与大小不匹配,video,ffmpeg,Video,Ffmpeg,我试着拍摄3个视频和一幅图像,并制作10秒的合成,大致如下: 这是到目前为止我得到的命令。(我把它格式化了一点,这样更容易阅读) 在前3个过滤器上,我尝试填充/裁剪视频,以匹配512x288 在下一个过滤器上,将图像裁剪/填充到640x874 在接下来的2个过滤器中,我在顶部和中部视频中添加了一些填充,共5个像素 左栏的总高度应为288*3+5*2=874 但当我运行此命令时,会出现以下错误: 输入1高度874与输入0高度872不匹配 那两个像素到哪里去了?如果我用图像代替左边的视频,效果很好
288*3+5*2=874
但当我运行此命令时,会出现以下错误:
输入1高度874与输入0高度872不匹配
那两个像素到哪里去了?如果我用图像代替左边的视频,效果很好。只有在一些视频中,它似乎以某种方式破坏了额外的2像素
发生了什么事?我怎样才能修好它
更新
完全粘贴:
ffmpeg version 3.0.2-1~xenial2 Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 5.3.1 (Ubuntu 5.3.1-14ubuntu2) 20160413
configuration: --prefix=/usr --extra-version='1~xenial2' --libdir=/usr/lib/ffmpeg --shlibdir=/usr/lib/ffmpeg --disable-static --disable-debug --toolchain=hardened --enable-pthreads --enable-runtime-cpudetect --enable-gpl --enable-shared --disable-decoder=libopenjpeg --disable-decoder=libschroedinger --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp --enable-libschroedinger --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzvbi --enable-openal --enable-opengl --enable-x11grab --enable-version3 --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvo-amrwbenc --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r --enable-libx264 --enable-libopencv --enable-libkvazaar --enable-libopenh264 --enable-nonfree --enable-libfdk-aac --enable-libfaac
libavutil 55. 17.103 / 55. 17.103
libavcodec 57. 24.102 / 57. 24.102
libavformat 57. 25.100 / 57. 25.100
libavdevice 57. 0.101 / 57. 0.101
libavfilter 6. 31.100 / 6. 31.100
libavresample 3. 0. 0 / 3. 0. 0
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
Input #0, matroska,webm, from '/home/dbugger/projects/mediabooth/public/uploads/1199c37e0b76e2e322b6473e0c61b7a87fe4b06e/media0':
Metadata:
encoder : libwebm-0.2.1.0
creation_time : 2015-03-08 22:30:14
Duration: 00:00:09.98, start: 0.000000, bitrate: 2254 kb/s
Stream #0:0(eng): Video: vp8, yuv420p, 960x720, SAR 1:1 DAR 4:3, 29.97 fps, 29.97 tbr, 1k tbn, 1k tbc (default)
Input #1, matroska,webm, from '/home/dbugger/projects/mediabooth/public/uploads/1199c37e0b76e2e322b6473e0c61b7a87fe4b06e/media1':
Metadata:
encoder : libwebm-0.2.1.0
creation_time : 2015-03-12 16:22:27
Duration: 00:00:09.97, start: 0.000000, bitrate: 1648 kb/s
Stream #1:0(eng): Video: vp8, yuv420p, 960x720, SAR 1:1 DAR 4:3, 23.98 fps, 23.98 tbr, 1k tbn, 1k tbc (default)
Input #2, matroska,webm, from '/home/dbugger/projects/mediabooth/public/uploads/1199c37e0b76e2e322b6473e0c61b7a87fe4b06e/media2':
Metadata:
encoder : libwebm-0.2.1.0
creation_time : 2015-03-11 04:14:51
Duration: 00:00:09.98, start: 0.000000, bitrate: 2058 kb/s
Stream #2:0(eng): Video: vp8, yuv420p, 960x720, SAR 1:1 DAR 4:3, 29.97 fps, 29.97 tbr, 1k tbn, 1k tbc (default)
[mjpeg @ 0x18d6840] Changing bps to 8
Input #3, jpeg_pipe, from '/home/dbugger/projects/mediabooth/public/uploads/1199c37e0b76e2e322b6473e0c61b7a87fe4b06e/media3':
Duration: N/A, bitrate: N/A
Stream #3:0: Video: mjpeg, yuvj420p(pc, bt470bg/unknown/unknown), 1032x1032 [SAR 1:1 DAR 1:1], 25 tbr, 25 tbn, 25 tbc
[swscaler @ 0x19d0080] deprecated pixel format used, make sure you did set range correctly
[Parsed_hstack_15 @ 0x1914f40] Input 1 height 874 does not match input 0 height 872.
[Parsed_hstack_15 @ 0x1914f40] Failed to configure output pad on Parsed_hstack_15
Error configuring complex filters.
我想出来了。显然,填充不接受奇数,所以当填充到5时,我只是填充到4。粘贴完整的控制台输出。但也可以尝试将
setsar
s放在scale
s完成之前。没用……啊。如果在填充之前添加format=yuv444p
,它应该可以处理奇数。由于您使用的是堆栈过滤器,因此必须将其添加到所有视频输入中。
ffmpeg version 3.0.2-1~xenial2 Copyright (c) 2000-2016 the FFmpeg developers
built with gcc 5.3.1 (Ubuntu 5.3.1-14ubuntu2) 20160413
configuration: --prefix=/usr --extra-version='1~xenial2' --libdir=/usr/lib/ffmpeg --shlibdir=/usr/lib/ffmpeg --disable-static --disable-debug --toolchain=hardened --enable-pthreads --enable-runtime-cpudetect --enable-gpl --enable-shared --disable-decoder=libopenjpeg --disable-decoder=libschroedinger --enable-avresample --enable-avisynth --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libcdio --enable-libflite --enable-libfontconfig --enable-libfreetype --enable-libfribidi --enable-libgme --enable-libgsm --enable-libmodplug --enable-libmp3lame --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librtmp --enable-libschroedinger --enable-libshine --enable-libsnappy --enable-libsoxr --enable-libspeex --enable-libssh --enable-libtheora --enable-libtwolame --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx265 --enable-libxvid --enable-libzvbi --enable-openal --enable-opengl --enable-x11grab --enable-version3 --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvo-amrwbenc --enable-libdc1394 --enable-libiec61883 --enable-libzmq --enable-frei0r --enable-libx264 --enable-libopencv --enable-libkvazaar --enable-libopenh264 --enable-nonfree --enable-libfdk-aac --enable-libfaac
libavutil 55. 17.103 / 55. 17.103
libavcodec 57. 24.102 / 57. 24.102
libavformat 57. 25.100 / 57. 25.100
libavdevice 57. 0.101 / 57. 0.101
libavfilter 6. 31.100 / 6. 31.100
libavresample 3. 0. 0 / 3. 0. 0
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
Input #0, matroska,webm, from '/home/dbugger/projects/mediabooth/public/uploads/1199c37e0b76e2e322b6473e0c61b7a87fe4b06e/media0':
Metadata:
encoder : libwebm-0.2.1.0
creation_time : 2015-03-08 22:30:14
Duration: 00:00:09.98, start: 0.000000, bitrate: 2254 kb/s
Stream #0:0(eng): Video: vp8, yuv420p, 960x720, SAR 1:1 DAR 4:3, 29.97 fps, 29.97 tbr, 1k tbn, 1k tbc (default)
Input #1, matroska,webm, from '/home/dbugger/projects/mediabooth/public/uploads/1199c37e0b76e2e322b6473e0c61b7a87fe4b06e/media1':
Metadata:
encoder : libwebm-0.2.1.0
creation_time : 2015-03-12 16:22:27
Duration: 00:00:09.97, start: 0.000000, bitrate: 1648 kb/s
Stream #1:0(eng): Video: vp8, yuv420p, 960x720, SAR 1:1 DAR 4:3, 23.98 fps, 23.98 tbr, 1k tbn, 1k tbc (default)
Input #2, matroska,webm, from '/home/dbugger/projects/mediabooth/public/uploads/1199c37e0b76e2e322b6473e0c61b7a87fe4b06e/media2':
Metadata:
encoder : libwebm-0.2.1.0
creation_time : 2015-03-11 04:14:51
Duration: 00:00:09.98, start: 0.000000, bitrate: 2058 kb/s
Stream #2:0(eng): Video: vp8, yuv420p, 960x720, SAR 1:1 DAR 4:3, 29.97 fps, 29.97 tbr, 1k tbn, 1k tbc (default)
[mjpeg @ 0x18d6840] Changing bps to 8
Input #3, jpeg_pipe, from '/home/dbugger/projects/mediabooth/public/uploads/1199c37e0b76e2e322b6473e0c61b7a87fe4b06e/media3':
Duration: N/A, bitrate: N/A
Stream #3:0: Video: mjpeg, yuvj420p(pc, bt470bg/unknown/unknown), 1032x1032 [SAR 1:1 DAR 1:1], 25 tbr, 25 tbn, 25 tbc
[swscaler @ 0x19d0080] deprecated pixel format used, make sure you did set range correctly
[Parsed_hstack_15 @ 0x1914f40] Input 1 height 874 does not match input 0 height 872.
[Parsed_hstack_15 @ 0x1914f40] Failed to configure output pad on Parsed_hstack_15
Error configuring complex filters.