我试图制作一个绿色屏幕背景,我可以使用它覆盖其他东西。我使用this answer中的信息并使用以下命令:
ffmpeg -f lavfi -i color=color=green -s 1920x1080 -t 3600 -r 60 small_green.mp4
然而,当我在Quicktime中打开它时,检查员窗口似乎在说它实际上是1440x1080而不是1920x1080。
但ffprobe
似乎在说它是1920x1080:
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'small_green.mp4': Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
encoder : Lavf56.36.100 Duration: 01:00:00.00, start: 0.000000, bitrate: 40 kb/s
Stream #0:0(und): Video: h264 (High) (avc1 / 0x31637661), yuv420p, 1920x1080 [SAR 3:4 DAR 4:3], 34 kb/s, 60 fps, 60 tbr, 15360 tbn, 120 tbc (default)
Metadata:
handler_name : VideoHandler
当我将其带入Garmin VIRB Edit
时,它会报告它是1440x1080。那么如何让ffmpeg
吐出真正高清1920x1080分辨率的视频?
答案 0 :(得分:2)
FFmpeg源过滤器具有输出的默认大小(如果未指定)。在彩色滤光片的情况下,它是320x240。您的scale参数会将滤镜的输出大小调整为1920x1080,但ffmpeg认为您希望保留源宽高比,在本例中为4:3,这是它写入文件的显示宽高比。具有4:3比例的1920x1080视频实际上是1440x1080,这是QT报道的。
您需要直接在颜色内设置尺寸(或者之后设置正确的纵横比)。
ffmpeg -f lavfi -i color=color=green:s=1920x1080 -t 3600 -r 60 small_green.mp4