我正在从流中解码视频帧,而sws_scale为我提供了已解码RGB图像数据(PIX_FMT_RGB24)的缓冲区。我有一个现有的前端应用程序,要求输入为DIB。所以我需要知道如何将该缓冲区转换为DIB?

据我了解,Windows上的DIB是BGR,自下而上,并且需要标题。而不是手动执行此操作,我希望此问题已解决。我也想知道sws_scale是否可以本地完成。

最佳答案

这不是您要的答案。但是,这就是我所拥有的。

DIB代表设备独立位图,它是一个带有额外(DIB)标头的位图,其中指定了一些有关图像数据的信息,以便多个设备/平台可以理解。您可以轻松地链接到免费的外部库(例如DevIL)来生成位图,但是我不知道有任何库可以为您创建DIB标头。但是,wiki page上有很多有关DIB头的信息,您自己做起来并不难,让其他库(我建议DevIL)进行图像转换。

我希望其他人能提出一个很好的第三方库,该库可以完全满足您的要求。祝好运!

09-05 09:45