d3d12: Add support for UYVY, VYUY, and YVYU

Use already implemented compute shaders

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7092>
This commit is contained in:
Seungha Yang 2024-06-23 22:14:23 +09:00
parent 6fcb5f6ae7
commit c1498851b3
3 changed files with 7 additions and 1 deletions

View file

@ -55,7 +55,7 @@
/* pre/post processing required formats */ /* pre/post processing required formats */
#define GST_D3D12_TIER_LAST_FORMATS \ #define GST_D3D12_TIER_LAST_FORMATS \
"RGB16, BGR16, RGB15, BGR15" "UYVY, VYUY, YVYU, RGB16, BGR16, RGB15, BGR15"
#define GST_D3D12_COMMON_FORMATS \ #define GST_D3D12_COMMON_FORMATS \
GST_D3D12_TIER_0_FORMATS ", " \ GST_D3D12_TIER_0_FORMATS ", " \

View file

@ -151,6 +151,9 @@ gst_d3d12_pack_new (GstD3D12Device * device,
auto format = GST_VIDEO_INFO_FORMAT (converter_output_info); auto format = GST_VIDEO_INFO_FORMAT (converter_output_info);
switch (format) { switch (format) {
case GST_VIDEO_FORMAT_YUY2: case GST_VIDEO_FORMAT_YUY2:
case GST_VIDEO_FORMAT_UYVY:
case GST_VIDEO_FORMAT_VYUY:
case GST_VIDEO_FORMAT_YVYU:
conv_format = GST_VIDEO_FORMAT_AYUV; conv_format = GST_VIDEO_FORMAT_AYUV;
break; break;
case GST_VIDEO_FORMAT_Y410: case GST_VIDEO_FORMAT_Y410:

View file

@ -161,6 +161,9 @@ gst_d3d12_unpack_new (GstD3D12Device * device,
auto format = GST_VIDEO_INFO_FORMAT (converter_input_info); auto format = GST_VIDEO_INFO_FORMAT (converter_input_info);
switch (format) { switch (format) {
case GST_VIDEO_FORMAT_YUY2: case GST_VIDEO_FORMAT_YUY2:
case GST_VIDEO_FORMAT_UYVY:
case GST_VIDEO_FORMAT_VYUY:
case GST_VIDEO_FORMAT_YVYU:
conv_format = GST_VIDEO_FORMAT_AYUV; conv_format = GST_VIDEO_FORMAT_AYUV;
break; break;
case GST_VIDEO_FORMAT_Y210: case GST_VIDEO_FORMAT_Y210: