我正在尝试使用以下命令生成仅具有亮度(单色、YUV400)8 位像素数据的原始视频流:
ffmpeg -i input.mp4 -vcodec rawvideo -pix_fmt raw.yuv
之后,我想使用支持单色像素数据的配置文件对原始流进行 h.264 编码(例如:高)
ffmpeg -f rawvideo -vcodec rawvideo -pix_fmt gray -s 640x512 -r 60 -i raw.yuv -codec:v libx264 -profile:v high -c:a copy out.mp4
但是,我总是收到以下错误,这表明原始流不是我预期的单色格式:
x264 [error]: high profile doesn't support 4:4:4
我一般是 ffmpeg 和视频格式的新手。有人可以指出我缺少什么吗?
谢谢!
编辑:
我还尝试使用以下过滤器仅提取亮度 channel 。不幸的是,最终的结果是一样的。
ffmpeg -i input.mp4 -vcodec rawvideo -pix_fmt gray -filter_complex 'extractplanes=y[y]' -map '[y]' raw.yuv
最佳答案
安装的 ffmpeg 版本相当旧(3.4.7)。安装 4.2.3 后一切正常。
关于encoding - ffmpeg 单色 rawvideo,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62191688/