对于一个在绿幕前拍摄的2GB原始视频文件,我想要添加alpha通道。但我的问题是,输出文件对我来说太大了(约为输入文件的20倍),并且视频编辑器OpenShot似乎无法处理如此巨大的文件。比较输入和输出文件的属性显示,输入文件的比特率约为15k,而结果文件的比特率为150k-250k,这似乎指出了问题所在。
(顺便说一下,在该过程中,我还想丢弃片段的第一部分以及其音频通道,并将帧速率从30降低到24 fps,这些都能很好地完成。)
这是我的命令:
我理解的参数如下:
(顺便说一下,在该过程中,我还想丢弃片段的第一部分以及其音频通道,并将帧速率从30降低到24 fps,这些都能很好地完成。)
这是我的命令:
ffmpeg.exe -i <in.MOV> -vf chromakey=0x007d06:0.15:0.0 -ss 40.420 -r 24 -b:v 15840k -maxrate 15840k -bufsize 15840k -an -c:v <encoder> <out.mov>
我理解的参数如下:
参数的含义:
-i <in.mov> ... infile
-vf chromakey=0x007d06:0.15:0.0 ... chroma, tolerance & blend of greenscreens
-ss 40.420 ... skip before second 40.420 (this works)
-r 24 ... frame rate (this works, too)
-b:v 15804k ... bitrate (seemingly no effect)
-maxrate 15840k ... maximum BitRate (seemingly no effect)
-bufzise 15840k ... Buffer size (can't tell)
-an ... no audio channel (works fine)
-c:v <encoder> ... Video Encoder (ffvhuff, png, qtrle and tiff were tried, all to the same result)
<out.mov> ... outfile
b、maxrate和bufsize被描述为全局选项。无论设置如何,在处理过程中,最高可报告高达3000000kbits/s(tiff)的比特率。
(我还添加了-pixel_format argb,但似乎被忽略了,ffmpeg始终报告要写yuva420p。)
我错过了什么?
-auto-alt-ref 0
。我的设置仅适用于VPx编码器,它们不是通用的。 - Gyanffmpeg -i input_video.avi -c:v libvpx -pix_fmt yuva420p -crf 20 -b:v 0 -auto-alt-ref 0 output.avi
。感谢这个答案。 - marco