Message ID | 20230214024559.1272-1-tong1.wu@intel.com |
---|---|
State | New |
Headers | show |
Series | [FFmpeg-devel,v3,1/3] hwcontext_d3d11va: add mutiple supported DXGI formats | expand |
Context | Check | Description |
---|---|---|
andriy/make_x86 | success | Make finished |
andriy/make_fate_x86 | success | Make fate finished |
On Di, 2023-02-14 at 10:45 +0800, Tong Wu wrote: > Add support for VUYX, YUYV422, Y210, XV30, P012, Y212, XV36. > > The added formats work with qsv acceleration and will not have > impact on d3d11va acceleration(-hwaccel d3d11va) since so far > these formats are still not supported by using d3d11va acceleration. > > Hwupload and hwdownload can work with the added formats. > > Signed-off-by: Tong Wu <tong1.wu@intel.com> > --- > libavutil/hwcontext_d3d11va.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/libavutil/hwcontext_d3d11va.c b/libavutil/hwcontext_d3d11va.c > index 363ec6a47d..aa50538d64 100644 > --- a/libavutil/hwcontext_d3d11va.c > +++ b/libavutil/hwcontext_d3d11va.c > @@ -89,6 +89,13 @@ static const struct { > { DXGI_FORMAT_B8G8R8A8_UNORM, AV_PIX_FMT_BGRA }, > { DXGI_FORMAT_R10G10B10A2_UNORM, AV_PIX_FMT_X2BGR10 }, > { DXGI_FORMAT_R16G16B16A16_FLOAT, AV_PIX_FMT_RGBAF16 }, > + { DXGI_FORMAT_AYUV, AV_PIX_FMT_VUYX }, > + { DXGI_FORMAT_YUY2, AV_PIX_FMT_YUYV422 }, > + { DXGI_FORMAT_Y210, AV_PIX_FMT_Y210 }, > + { DXGI_FORMAT_Y410, AV_PIX_FMT_XV30 }, > + { DXGI_FORMAT_P016, AV_PIX_FMT_P012 }, > + { DXGI_FORMAT_Y216, AV_PIX_FMT_Y212 }, > + { DXGI_FORMAT_Y416, AV_PIX_FMT_XV36 }, > // Special opaque formats. The pix_fmt is merely a place holder, as the > // opaque format cannot be accessed directly. > { DXGI_FORMAT_420_OPAQUE, AV_PIX_FMT_YUV420P }, LGTM, thx - Haihao
On Do, 2023-02-16 at 01:30 +0000, Xiang, Haihao wrote: > On Di, 2023-02-14 at 10:45 +0800, Tong Wu wrote: > > Add support for VUYX, YUYV422, Y210, XV30, P012, Y212, XV36. > > > > The added formats work with qsv acceleration and will not have > > impact on d3d11va acceleration(-hwaccel d3d11va) since so far > > these formats are still not supported by using d3d11va acceleration. > > > > Hwupload and hwdownload can work with the added formats. > > > > Signed-off-by: Tong Wu <tong1.wu@intel.com> > > --- > > libavutil/hwcontext_d3d11va.c | 7 +++++++ > > 1 file changed, 7 insertions(+) > > > > diff --git a/libavutil/hwcontext_d3d11va.c b/libavutil/hwcontext_d3d11va.c > > index 363ec6a47d..aa50538d64 100644 > > --- a/libavutil/hwcontext_d3d11va.c > > +++ b/libavutil/hwcontext_d3d11va.c > > @@ -89,6 +89,13 @@ static const struct { > > { DXGI_FORMAT_B8G8R8A8_UNORM, AV_PIX_FMT_BGRA }, > > { DXGI_FORMAT_R10G10B10A2_UNORM, AV_PIX_FMT_X2BGR10 }, > > { DXGI_FORMAT_R16G16B16A16_FLOAT, AV_PIX_FMT_RGBAF16 }, > > + { DXGI_FORMAT_AYUV, AV_PIX_FMT_VUYX }, > > + { DXGI_FORMAT_YUY2, AV_PIX_FMT_YUYV422 }, > > + { DXGI_FORMAT_Y210, AV_PIX_FMT_Y210 }, > > + { DXGI_FORMAT_Y410, AV_PIX_FMT_XV30 }, > > + { DXGI_FORMAT_P016, AV_PIX_FMT_P012 }, > > + { DXGI_FORMAT_Y216, AV_PIX_FMT_Y212 }, > > + { DXGI_FORMAT_Y416, AV_PIX_FMT_XV36 }, > > // Special opaque formats. The pix_fmt is merely a place holder, as the > > // opaque format cannot be accessed directly. > > { DXGI_FORMAT_420_OPAQUE, AV_PIX_FMT_YUV420P }, > > LGTM, thx > Is there any comment about this patchset? I will push it in the next few days if there are no objections for v3, Thanks Haihao
On So, 2023-02-19 at 01:57 +0000, Xiang, Haihao wrote: > On Do, 2023-02-16 at 01:30 +0000, Xiang, Haihao wrote: > > On Di, 2023-02-14 at 10:45 +0800, Tong Wu wrote: > > > Add support for VUYX, YUYV422, Y210, XV30, P012, Y212, XV36. > > > > > > The added formats work with qsv acceleration and will not have > > > impact on d3d11va acceleration(-hwaccel d3d11va) since so far > > > these formats are still not supported by using d3d11va acceleration. > > > > > > Hwupload and hwdownload can work with the added formats. > > > > > > Signed-off-by: Tong Wu <tong1.wu@intel.com> > > > --- > > > libavutil/hwcontext_d3d11va.c | 7 +++++++ > > > 1 file changed, 7 insertions(+) > > > > > > diff --git a/libavutil/hwcontext_d3d11va.c b/libavutil/hwcontext_d3d11va.c > > > index 363ec6a47d..aa50538d64 100644 > > > --- a/libavutil/hwcontext_d3d11va.c > > > +++ b/libavutil/hwcontext_d3d11va.c > > > @@ -89,6 +89,13 @@ static const struct { > > > { DXGI_FORMAT_B8G8R8A8_UNORM, AV_PIX_FMT_BGRA }, > > > { DXGI_FORMAT_R10G10B10A2_UNORM, AV_PIX_FMT_X2BGR10 }, > > > { DXGI_FORMAT_R16G16B16A16_FLOAT, AV_PIX_FMT_RGBAF16 }, > > > + { DXGI_FORMAT_AYUV, AV_PIX_FMT_VUYX }, > > > + { DXGI_FORMAT_YUY2, AV_PIX_FMT_YUYV422 }, > > > + { DXGI_FORMAT_Y210, AV_PIX_FMT_Y210 }, > > > + { DXGI_FORMAT_Y410, AV_PIX_FMT_XV30 }, > > > + { DXGI_FORMAT_P016, AV_PIX_FMT_P012 }, > > > + { DXGI_FORMAT_Y216, AV_PIX_FMT_Y212 }, > > > + { DXGI_FORMAT_Y416, AV_PIX_FMT_XV36 }, > > > // Special opaque formats. The pix_fmt is merely a place holder, as > > > the > > > // opaque format cannot be accessed directly. > > > { DXGI_FORMAT_420_OPAQUE, AV_PIX_FMT_YUV420P }, > > > > LGTM, thx > > > > Is there any comment about this patchset? I will push it in the next few days > if > there are no objections for v3, Pushed, thx - Haihao
On 2/13/2023 11:45 PM, Tong Wu wrote: > Add support for VUYX, YUYV422, Y210, XV30, P012, Y212, XV36. > > The added formats work with qsv acceleration and will not have > impact on d3d11va acceleration(-hwaccel d3d11va) since so far > these formats are still not supported by using d3d11va acceleration. > > Hwupload and hwdownload can work with the added formats. > > Signed-off-by: Tong Wu <tong1.wu@intel.com> > --- > libavutil/hwcontext_d3d11va.c | 7 +++++++ > 1 file changed, 7 insertions(+) > > diff --git a/libavutil/hwcontext_d3d11va.c b/libavutil/hwcontext_d3d11va.c > index 363ec6a47d..aa50538d64 100644 > --- a/libavutil/hwcontext_d3d11va.c > +++ b/libavutil/hwcontext_d3d11va.c > @@ -89,6 +89,13 @@ static const struct { > { DXGI_FORMAT_B8G8R8A8_UNORM, AV_PIX_FMT_BGRA }, > { DXGI_FORMAT_R10G10B10A2_UNORM, AV_PIX_FMT_X2BGR10 }, > { DXGI_FORMAT_R16G16B16A16_FLOAT, AV_PIX_FMT_RGBAF16 }, > + { DXGI_FORMAT_AYUV, AV_PIX_FMT_VUYX }, Shouldn't this be VUYA? > + { DXGI_FORMAT_YUY2, AV_PIX_FMT_YUYV422 }, > + { DXGI_FORMAT_Y210, AV_PIX_FMT_Y210 }, > + { DXGI_FORMAT_Y410, AV_PIX_FMT_XV30 }, > + { DXGI_FORMAT_P016, AV_PIX_FMT_P012 }, > + { DXGI_FORMAT_Y216, AV_PIX_FMT_Y212 }, > + { DXGI_FORMAT_Y416, AV_PIX_FMT_XV36 }, > // Special opaque formats. The pix_fmt is merely a place holder, as the > // opaque format cannot be accessed directly. > { DXGI_FORMAT_420_OPAQUE, AV_PIX_FMT_YUV420P },
> On 2/13/2023 11:45 PM, Tong Wu wrote: > > Add support for VUYX, YUYV422, Y210, XV30, P012, Y212, XV36. > > > > The added formats work with qsv acceleration and will not have impact > > on d3d11va acceleration(-hwaccel d3d11va) since so far these formats > > are still not supported by using d3d11va acceleration. > > > > Hwupload and hwdownload can work with the added formats. > > > > Signed-off-by: Tong Wu <tong1.wu@intel.com> > > --- > > libavutil/hwcontext_d3d11va.c | 7 +++++++ > > 1 file changed, 7 insertions(+) > > > > diff --git a/libavutil/hwcontext_d3d11va.c > > b/libavutil/hwcontext_d3d11va.c index 363ec6a47d..aa50538d64 100644 > > --- a/libavutil/hwcontext_d3d11va.c > > +++ b/libavutil/hwcontext_d3d11va.c > > @@ -89,6 +89,13 @@ static const struct { > > { DXGI_FORMAT_B8G8R8A8_UNORM, AV_PIX_FMT_BGRA }, > > { DXGI_FORMAT_R10G10B10A2_UNORM, AV_PIX_FMT_X2BGR10 }, > > { DXGI_FORMAT_R16G16B16A16_FLOAT, AV_PIX_FMT_RGBAF16 }, > > + { DXGI_FORMAT_AYUV, AV_PIX_FMT_VUYX }, > > Shouldn't this be VUYA? Please refer to https://learn.microsoft.com/en-us/windows/win32/api/dxgiformat/ne-dxgiformat-dxgi_format According to the doc, The mapping to the view channel is V->R8, U->G8, Y->B8, and A->A8. It is equivalent to AV_PIX_FMT_VUYX in FFmpeg. Thanks. > > > + { DXGI_FORMAT_YUY2, AV_PIX_FMT_YUYV422 }, > > + { DXGI_FORMAT_Y210, AV_PIX_FMT_Y210 }, > > + { DXGI_FORMAT_Y410, AV_PIX_FMT_XV30 }, > > + { DXGI_FORMAT_P016, AV_PIX_FMT_P012 }, > > + { DXGI_FORMAT_Y216, AV_PIX_FMT_Y212 }, > > + { DXGI_FORMAT_Y416, AV_PIX_FMT_XV36 }, > > // Special opaque formats. The pix_fmt is merely a place holder, as the > > // opaque format cannot be accessed directly. > > { DXGI_FORMAT_420_OPAQUE, AV_PIX_FMT_YUV420P }, > _______________________________________________ > ffmpeg-devel mailing list > ffmpeg-devel@ffmpeg.org > https://ffmpeg.org/mailman/listinfo/ffmpeg-devel > > To unsubscribe, visit link above, or email ffmpeg-devel-request@ffmpeg.org > with subject "unsubscribe".
diff --git a/libavutil/hwcontext_d3d11va.c b/libavutil/hwcontext_d3d11va.c index 363ec6a47d..aa50538d64 100644 --- a/libavutil/hwcontext_d3d11va.c +++ b/libavutil/hwcontext_d3d11va.c @@ -89,6 +89,13 @@ static const struct { { DXGI_FORMAT_B8G8R8A8_UNORM, AV_PIX_FMT_BGRA }, { DXGI_FORMAT_R10G10B10A2_UNORM, AV_PIX_FMT_X2BGR10 }, { DXGI_FORMAT_R16G16B16A16_FLOAT, AV_PIX_FMT_RGBAF16 }, + { DXGI_FORMAT_AYUV, AV_PIX_FMT_VUYX }, + { DXGI_FORMAT_YUY2, AV_PIX_FMT_YUYV422 }, + { DXGI_FORMAT_Y210, AV_PIX_FMT_Y210 }, + { DXGI_FORMAT_Y410, AV_PIX_FMT_XV30 }, + { DXGI_FORMAT_P016, AV_PIX_FMT_P012 }, + { DXGI_FORMAT_Y216, AV_PIX_FMT_Y212 }, + { DXGI_FORMAT_Y416, AV_PIX_FMT_XV36 }, // Special opaque formats. The pix_fmt is merely a place holder, as the // opaque format cannot be accessed directly. { DXGI_FORMAT_420_OPAQUE, AV_PIX_FMT_YUV420P },
Add support for VUYX, YUYV422, Y210, XV30, P012, Y212, XV36. The added formats work with qsv acceleration and will not have impact on d3d11va acceleration(-hwaccel d3d11va) since so far these formats are still not supported by using d3d11va acceleration. Hwupload and hwdownload can work with the added formats. Signed-off-by: Tong Wu <tong1.wu@intel.com> --- libavutil/hwcontext_d3d11va.c | 7 +++++++ 1 file changed, 7 insertions(+)