encoding - ffmpeg 单色 rawvideo

标签 encoding ffmpeg monochrome

我正在尝试使用以下命令生成仅具有亮度(单色、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/

相关文章:

c++:将 24bpp 转换为 8bpp 或 1bpp 图像

FFMPEG - 视频中带有 Splash 图像的绿色转换

java - 在使用 JAXB 解码期间覆盖声明的编码

ffmpeg - 视频编码帮助

c++ - “_snprintf”未在此范围内声明

flash - 如何使用 FFMPEG 最好地转换 Flash 兼容的 mp4 文件?

colors - RGB 到单色的转换

audio - 用 ffmpeg 和 libvorbis 编码 webm 不起作用

mysql - 如何在 MySql 中将拉丁字符转换为相应的 unicode 转义序列?

python - 有没有一种简单的方法可以在 Python 列表中表示 base64 字母表?