Ffmpeg AVFrame是否将AV_PIX_FMT_YUV420P数据存储为YVU?

Ffmpeg AVFrame是否将AV_PIX_FMT_YUV420P数据存储为YVU?,ffmpeg,Ffmpeg,我正在使用avcodec\u decode\u video2api对原始H.265数据进行解码。当我检查AVFrame类型的结果实例pictYUV时,我看到pictYUV->format是AV\u PIX\u FMT\u YUV420P并且pictYUV->data[0]指向Y平面。这两个都是意料之中的。但是,pictYUV->data[1]似乎包含V面数据,pictYUV->data[2]似乎包含U面数据。我的直觉是,pictYUV->data将按该顺序存储YUV平面,而不是YVU平面。想知道

我正在使用
avcodec\u decode\u video2
api对原始H.265数据进行解码。当我检查
AVFrame类型的结果实例
pictYUV
时,
我看到
pictYUV->format
AV\u PIX\u FMT\u YUV420P
并且
pictYUV->data[0]
指向Y平面。这两个都是意料之中的。但是,
pictYUV->data[1]
似乎包含V面数据,
pictYUV->data[2]
似乎包含U面数据。我的直觉是,
pictYUV->data
将按该顺序存储YUV平面,而不是YVU平面。想知道数据是否总是按YVU排序,或者是否有一些标记我没有看到。问候

AV_PIX_FMT_YUV420P是平面YUV格式(参见名称末尾的p),因此Y、U和V分开存储。也有带交错YUV格式的YUV格式。
如果您是从IP摄像头获取数据,则获取平面格式是正常的。

AV_PIX_FMT_YUV420P
是平面YUV格式(请参见其名称末尾的p),因此Y、U和V分开存储。也有带交错YUV格式的YUV格式。
如果您是从IP摄像机获取数据,获取平面格式是正常的。

这里需要什么?你需要非平面格式吗?或者你只是想知道为什么它是平面的?平面很好。我的观察结果是,数据以Y,V,U的顺序存储,而不是Y,U,V的顺序,从哪里检测到pictYUV->data[1]似乎包含V面而不是U面?你是如何验证它的?您是否显示了生成的缓冲区?怎么用?我很想知道!你需要什么?你需要非平面格式吗?或者你只是想知道为什么它是平面的?平面很好。我的观察结果是,数据以Y,V,U的顺序存储,而不是Y,U,V的顺序,从哪里检测到pictYUV->data[1]似乎包含V面而不是U面?你是如何验证它的?您是否显示了生成的缓冲区?怎么用?我很想知道!问题在于飞机的顺序。YUV vs Yvuth问题在飞机的顺序上。YUV vs YVU