* [FFmpeg-devel] [PATCH 2/3] hwcontext_dxva2: add mutiple supported formats
2023-01-31 8:41 [FFmpeg-devel] [PATCH 1/3] hwcontext_d3d11va: add mutiple supported DXGI formats Tong Wu
@ 2023-01-31 8:41 ` Tong Wu
2023-02-07 5:50 ` Xiang, Haihao
2023-01-31 8:41 ` [FFmpeg-devel] [PATCH 3/3] qsv: remove CONFIG_VAAPI Tong Wu
2023-02-07 5:45 ` [FFmpeg-devel] [PATCH 1/3] hwcontext_d3d11va: add mutiple supported DXGI formats Xiang, Haihao
2 siblings, 1 reply; 5+ messages in thread
From: Tong Wu @ 2023-01-31 8:41 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Tong Wu
Add support for VUYX, YUYV422, Y210, XV30, P012, Y212, XV36.
The added formats work with qsv acceleration and will not have
impact on dxva2 acceleration(-hwaccel dxva2) since so far
these formats are still not supported by using dxva2 acceleration.
Signed-off-by: Tong Wu <tong1.wu@intel.com>
---
libavutil/hwcontext_dxva2.c | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/libavutil/hwcontext_dxva2.c b/libavutil/hwcontext_dxva2.c
index 53d00fa815..ea378df720 100644
--- a/libavutil/hwcontext_dxva2.c
+++ b/libavutil/hwcontext_dxva2.c
@@ -82,6 +82,13 @@ static const struct {
} supported_formats[] = {
{ MKTAG('N', 'V', '1', '2'), AV_PIX_FMT_NV12 },
{ MKTAG('P', '0', '1', '0'), AV_PIX_FMT_P010 },
+ { MKTAG('A', 'Y', 'U', 'V'), AV_PIX_FMT_VUYX },
+ { MKTAG('Y', 'U', 'Y', '2'), AV_PIX_FMT_YUYV422 },
+ { MKTAG('Y', '2', '1', '0'), AV_PIX_FMT_Y210 },
+ { MKTAG('Y', '4', '1', '0'), AV_PIX_FMT_XV30 },
+ { MKTAG('P', '0', '1', '6'), AV_PIX_FMT_P012 },
+ { MKTAG('Y', '2', '1', '6'), AV_PIX_FMT_Y212 },
+ { MKTAG('Y', '4', '1', '6'), AV_PIX_FMT_XV36 },
{ D3DFMT_P8, AV_PIX_FMT_PAL8 },
{ D3DFMT_A8R8G8B8, AV_PIX_FMT_BGRA },
};
--
2.35.1.windows.2
_______________________________________________
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".
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [FFmpeg-devel] [PATCH 2/3] hwcontext_dxva2: add mutiple supported formats
2023-01-31 8:41 ` [FFmpeg-devel] [PATCH 2/3] hwcontext_dxva2: add mutiple supported formats Tong Wu
@ 2023-02-07 5:50 ` Xiang, Haihao
0 siblings, 0 replies; 5+ messages in thread
From: Xiang, Haihao @ 2023-02-07 5:50 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Wu, Tong1
On Di, 2023-01-31 at 16:41 +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 dxva2 acceleration(-hwaccel dxva2) since so far
> these formats are still not supported by using dxva2 acceleration.
hwupload and hwdownload can work with the added formats, please update the
commit log.
Thanks
Haihao
>
> Signed-off-by: Tong Wu <tong1.wu@intel.com>
> ---
> libavutil/hwcontext_dxva2.c | 7 +++++++
> 1 file changed, 7 insertions(+)
>
> diff --git a/libavutil/hwcontext_dxva2.c b/libavutil/hwcontext_dxva2.c
> index 53d00fa815..ea378df720 100644
> --- a/libavutil/hwcontext_dxva2.c
> +++ b/libavutil/hwcontext_dxva2.c
> @@ -82,6 +82,13 @@ static const struct {
> } supported_formats[] = {
> { MKTAG('N', 'V', '1', '2'), AV_PIX_FMT_NV12 },
> { MKTAG('P', '0', '1', '0'), AV_PIX_FMT_P010 },
> + { MKTAG('A', 'Y', 'U', 'V'), AV_PIX_FMT_VUYX },
> + { MKTAG('Y', 'U', 'Y', '2'), AV_PIX_FMT_YUYV422 },
> + { MKTAG('Y', '2', '1', '0'), AV_PIX_FMT_Y210 },
> + { MKTAG('Y', '4', '1', '0'), AV_PIX_FMT_XV30 },
> + { MKTAG('P', '0', '1', '6'), AV_PIX_FMT_P012 },
> + { MKTAG('Y', '2', '1', '6'), AV_PIX_FMT_Y212 },
> + { MKTAG('Y', '4', '1', '6'), AV_PIX_FMT_XV36 },
> { D3DFMT_P8, AV_PIX_FMT_PAL8 },
> { D3DFMT_A8R8G8B8, AV_PIX_FMT_BGRA },
> };
_______________________________________________
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".
^ permalink raw reply [flat|nested] 5+ messages in thread
* [FFmpeg-devel] [PATCH 3/3] qsv: remove CONFIG_VAAPI
2023-01-31 8:41 [FFmpeg-devel] [PATCH 1/3] hwcontext_d3d11va: add mutiple supported DXGI formats Tong Wu
2023-01-31 8:41 ` [FFmpeg-devel] [PATCH 2/3] hwcontext_dxva2: add mutiple supported formats Tong Wu
@ 2023-01-31 8:41 ` Tong Wu
2023-02-07 5:45 ` [FFmpeg-devel] [PATCH 1/3] hwcontext_d3d11va: add mutiple supported DXGI formats Xiang, Haihao
2 siblings, 0 replies; 5+ messages in thread
From: Tong Wu @ 2023-01-31 8:41 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Tong Wu
Make 8-bit, 10-bit, 12-bit YUV 4:2:2 video sources as well as YUV 4:4:4
video sources supported by d3d11va and dxva2 just like what VAAPI does.
Sign-off-by: Tong Wu <tong1.wu@intel.com>
---
libavcodec/qsv.c | 4 ----
libavutil/hwcontext_qsv.c | 4 ----
2 files changed, 8 deletions(-)
diff --git a/libavcodec/qsv.c b/libavcodec/qsv.c
index 7af154202c..8eabf46b45 100644
--- a/libavcodec/qsv.c
+++ b/libavcodec/qsv.c
@@ -208,7 +208,6 @@ enum AVPixelFormat ff_qsv_map_fourcc(uint32_t fourcc)
case MFX_FOURCC_P8: return AV_PIX_FMT_PAL8;
case MFX_FOURCC_A2RGB10: return AV_PIX_FMT_X2RGB10;
case MFX_FOURCC_RGB4: return AV_PIX_FMT_BGRA;
-#if CONFIG_VAAPI
case MFX_FOURCC_YUY2: return AV_PIX_FMT_YUYV422;
case MFX_FOURCC_Y210: return AV_PIX_FMT_Y210;
case MFX_FOURCC_AYUV: return AV_PIX_FMT_VUYX;
@@ -217,7 +216,6 @@ enum AVPixelFormat ff_qsv_map_fourcc(uint32_t fourcc)
case MFX_FOURCC_P016: return AV_PIX_FMT_P012;
case MFX_FOURCC_Y216: return AV_PIX_FMT_Y212;
case MFX_FOURCC_Y416: return AV_PIX_FMT_XV36;
-#endif
#endif
}
return AV_PIX_FMT_NONE;
@@ -245,7 +243,6 @@ int ff_qsv_map_pixfmt(enum AVPixelFormat format, uint32_t *fourcc, uint16_t *shi
*fourcc = MFX_FOURCC_RGB4;
*shift = 0;
return AV_PIX_FMT_BGRA;
-#if CONFIG_VAAPI
case AV_PIX_FMT_YUV422P:
case AV_PIX_FMT_YUYV422:
*fourcc = MFX_FOURCC_YUY2;
@@ -277,7 +274,6 @@ int ff_qsv_map_pixfmt(enum AVPixelFormat format, uint32_t *fourcc, uint16_t *shi
*fourcc = MFX_FOURCC_Y416;
*shift = 1;
return AV_PIX_FMT_XV36;
-#endif
#endif
default:
return AVERROR(ENOSYS);
diff --git a/libavutil/hwcontext_qsv.c b/libavutil/hwcontext_qsv.c
index ec0f72b329..ba0ac8cda5 100644
--- a/libavutil/hwcontext_qsv.c
+++ b/libavutil/hwcontext_qsv.c
@@ -115,7 +115,6 @@ static const struct {
{ AV_PIX_FMT_BGRA, MFX_FOURCC_RGB4, 0 },
{ AV_PIX_FMT_P010, MFX_FOURCC_P010, 1 },
{ AV_PIX_FMT_PAL8, MFX_FOURCC_P8, 0 },
-#if CONFIG_VAAPI
{ AV_PIX_FMT_YUYV422,
MFX_FOURCC_YUY2, 0 },
{ AV_PIX_FMT_Y210,
@@ -142,7 +141,6 @@ static const struct {
{ AV_PIX_FMT_XV36,
MFX_FOURCC_Y416, 1 },
#endif
-#endif
};
extern int ff_qsv_get_surface_base_handle(mfxFrameSurface1 *surf,
@@ -1524,7 +1522,6 @@ static int map_frame_to_surface(const AVFrame *frame, mfxFrameSurface1 *surface)
surface->Data.R = frame->data[0] + 2;
surface->Data.A = frame->data[0] + 3;
break;
-#if CONFIG_VAAPI
case AV_PIX_FMT_YUYV422:
surface->Data.Y = frame->data[0];
surface->Data.U = frame->data[0] + 1;
@@ -1556,7 +1553,6 @@ static int map_frame_to_surface(const AVFrame *frame, mfxFrameSurface1 *surface)
// use the value from the frame.
surface->Data.A = frame->data[0] + 6;
break;
-#endif
default:
return MFX_ERR_UNSUPPORTED;
}
--
2.35.1.windows.2
_______________________________________________
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".
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [FFmpeg-devel] [PATCH 1/3] hwcontext_d3d11va: add mutiple supported DXGI formats
2023-01-31 8:41 [FFmpeg-devel] [PATCH 1/3] hwcontext_d3d11va: add mutiple supported DXGI formats Tong Wu
2023-01-31 8:41 ` [FFmpeg-devel] [PATCH 2/3] hwcontext_dxva2: add mutiple supported formats Tong Wu
2023-01-31 8:41 ` [FFmpeg-devel] [PATCH 3/3] qsv: remove CONFIG_VAAPI Tong Wu
@ 2023-02-07 5:45 ` Xiang, Haihao
2 siblings, 0 replies; 5+ messages in thread
From: Xiang, Haihao @ 2023-02-07 5:45 UTC (permalink / raw)
To: ffmpeg-devel; +Cc: Wu, Tong1
On Di, 2023-01-31 at 16:41 +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.
Thanks
Haihao
>
> 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 },
_______________________________________________
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".
^ permalink raw reply [flat|nested] 5+ messages in thread