mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-15 13:53:19 +00:00
vafilter: Increase the caps for HDR.
As they might be other medatadata types. Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3473>
This commit is contained in:
parent
b25b1be70d
commit
cccbf1f02d
1 changed files with 13 additions and 8 deletions
|
@ -442,7 +442,7 @@ static const struct VaFilterCapMap {
|
||||||
F(SkinToneEnhancement, 1),
|
F(SkinToneEnhancement, 1),
|
||||||
F(TotalColorCorrection, VAProcTotalColorCorrectionCount),
|
F(TotalColorCorrection, VAProcTotalColorCorrectionCount),
|
||||||
F(HVSNoiseReduction, 0),
|
F(HVSNoiseReduction, 0),
|
||||||
F(HighDynamicRangeToneMapping, 1),
|
F(HighDynamicRangeToneMapping, VAProcHighDynamicRangeMetadataTypeCount),
|
||||||
#if VA_CHECK_VERSION (1, 12, 0)
|
#if VA_CHECK_VERSION (1, 12, 0)
|
||||||
F(3DLUT, 16),
|
F(3DLUT, 16),
|
||||||
#endif
|
#endif
|
||||||
|
@ -480,7 +480,8 @@ struct VaFilter
|
||||||
VAProcFilterCapDeinterlacing deint[VAProcDeinterlacingCount];
|
VAProcFilterCapDeinterlacing deint[VAProcDeinterlacingCount];
|
||||||
VAProcFilterCapColorBalance cb[VAProcColorBalanceCount];
|
VAProcFilterCapColorBalance cb[VAProcColorBalanceCount];
|
||||||
VAProcFilterCapTotalColorCorrection cc[VAProcTotalColorCorrectionCount];
|
VAProcFilterCapTotalColorCorrection cc[VAProcTotalColorCorrectionCount];
|
||||||
VAProcFilterCapHighDynamicRange hdr;
|
VAProcFilterCapHighDynamicRange
|
||||||
|
hdr[VAProcHighDynamicRangeMetadataTypeCount];
|
||||||
#if VA_CHECK_VERSION (1, 12, 0)
|
#if VA_CHECK_VERSION (1, 12, 0)
|
||||||
VAProcFilterCap3DLUT lut[16];
|
VAProcFilterCap3DLUT lut[16];
|
||||||
#endif
|
#endif
|
||||||
|
@ -665,12 +666,16 @@ gst_va_filter_install_properties (GstVaFilter * self, GObjectClass * klass)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case VAProcFilterHighDynamicRangeToneMapping:{
|
case VAProcFilterHighDynamicRangeToneMapping:{
|
||||||
const VAProcFilterCapHighDynamicRange *caps = &filter->caps.hdr;
|
guint j;
|
||||||
|
for (j = 0; j < filter->num_caps; j++) {
|
||||||
|
const VAProcFilterCapHighDynamicRange *caps = &filter->caps.hdr[j];
|
||||||
if (caps->metadata_type == VAProcHighDynamicRangeMetadataHDR10
|
if (caps->metadata_type == VAProcHighDynamicRangeMetadataHDR10
|
||||||
&& (caps->caps_flag & VA_TONE_MAPPING_HDR_TO_SDR)) {
|
&& (caps->caps_flag & VA_TONE_MAPPING_HDR_TO_SDR)) {
|
||||||
g_object_class_install_property (klass, GST_VA_FILTER_PROP_HDR,
|
g_object_class_install_property (klass, GST_VA_FILTER_PROP_HDR,
|
||||||
g_param_spec_boolean ("hdr-tone-mapping", "HDR tone mapping",
|
g_param_spec_boolean ("hdr-tone-mapping", "HDR tone mapping",
|
||||||
"Enable HDR to SDR tone mapping", FALSE, common_flags));
|
"Enable HDR to SDR tone mapping", FALSE, common_flags));
|
||||||
|
break;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
|
|
Loading…
Reference in a new issue