我想知道有人可以提供帮助。我现在正在将RBGA位图转换为YUV420p,然后使用h264编解码器对帧进行编码,并将编码后的数据包成功转储到文件中。
我也可以在VLC中播放h264视频文件。然而,似乎存在颜色偏移,其中灰色实际上是浅色调的屏幕。我使用了动画视频作为我的例子,它应该在背景中显示蓝天,但是在转换图像后,我得到了橙色的天空背景。您有什么想法我可以解决这个问题吗?
在调用sws_scale之前和编码数据包之前,您是否可能知道是否可以将rgba转换为yuv?
答案 0 :(得分:0)
也许你忘了指定stride
?
或者使用了错误的颜色格式? (BGRA,RGB等)
答案 1 :(得分:0)
我使用了错误的像素格式。
我应该使用BGR24,但我使用的是RGBA。在看完我最初如何将帧解码为位图并将其解码为BGR24
后,我意识到了这一点