繁体   English   中英

如何更改在C ++中通过FFMPEG库提取的帧的配色方案?

[英]How to change color scheme of frame extracted via FFMPEG library on C++?

我已经能够使用FFMPEG解码视频文件并将其保存为* .ppm文件。

我想知道如何在解码后并保存之前立即更改每个帧的颜色?

例如:如果我有一个彩色帧,我从视频文件中解码并提取了该帧,现在我想将其更改为黑白帧,然后将其保存到文件中。

我对FFMPEG库很陌生,并且开发人员可以从中获取更多的文档。 因此,对此的任何帮助将是非常可贵的。

谢谢

我已经能够使用sws_getContext方法将其转换为灰度。

我的方法在这里:

mpFrameSwsContext = sws_getContext(mpAVCodecContext->width, 
                mpAVCodecContext->height, mpAVCodecContext->pix_fmt, mpAVCodecContext->width, 
                mpAVCodecContext->height, PIX_FMT_GRAY8, PIX_FMT_GRAY8 , NULL, NULL, NULL);

但最后得到的图像如下所示:

在此处输入图片说明

有人可以建议任何更正吗?

谢谢

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM