gpt4 book ai didi

video - ffmpeg 上的合成与大小不匹配

转载 作者:行者123 更新时间:2023-12-04 22:48:35 24 4
gpt4 key购买 nike

我正在尝试拍摄 3 个视频和一张图像,并制作 10 秒的构图,大致如下:

enter image description here

这是我到目前为止得到的命令。 (我把它格式化了一点,这样更具可读性)

ffmpeg
-i /home/dbugger/projects/mediabooth/public/uploads/5fa87d68edd8190351c42f02c2ebbaeea0e786fe/media0
-i /home/dbugger/projects/mediabooth/public/uploads/5fa87d68edd8190351c42f02c2ebbaeea0e786fe/media1
-i /home/dbugger/projects/mediabooth/public/uploads/5fa87d68edd8190351c42f02c2ebbaeea0e786fe/media2
-i /home/dbugger/projects/mediabooth/public/uploads/5fa87d68edd8190351c42f02c2ebbaeea0e786fe/media3
-filter_complex "
[0:v]scale='if(gt(a,512/288),-1,512)':'if(gt(a,512/288),288,-1)',setsar=1,crop=512:288[v0c];
[1:v]scale='if(gt(a,512/288),-1,512)':'if(gt(a,512/288),288,-1)',setsar=1,crop=512:288[v1c];
[2:v]scale='if(gt(a,512/288),-1,512)':'if(gt(a,512/288),288,-1)',setsar=1,crop=512:288[v2c];
[3:v]scale='if(gt(a,640/874),-1,640)':'if(gt(a,640/874),874,-1)',setsar=1,crop=640:874[p0c];
[v0c]pad=iw+0:ih+5:0:0:color=black[v0cp];
[v1c]pad=iw+0:ih+5:0:0:color=black[v1cp];
[v0cp][v1cp][v2c]vstack=inputs=3[col0];
[col0][p0c]hstack=inputs=2[videoout]
"
-map '[videoout]' -c:v libx264 -b:v 3000k -t 00:00:10.0 /home/dbugger/projects/mediabooth/public/uploads/5fa87d68edd8190351c42f02c2ebbaeea0e786fe/output.mp4

在前 3 个过滤器上,我尝试填充/裁剪视频,以匹配 512x288
在下一个过滤器上,将图像裁剪/填充为 640x874
在接下来的 2 个 filtes 中,我在顶部和中间的视频中添加了一些 5 像素的填充。

左列的总高度应为 288*3 + 5*2 = 874
但是当我运行这个命令时,我得到了这个错误:

Input 1 height 874 does not match input 0 height 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。

关于video - ffmpeg 上的合成与大小不匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37418785/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com