mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-03-30 20:59:44 +00:00
Add NTSC/PAL widescreen formats always to the template caps
This commit is contained in:
parent
3d40e2f547
commit
420a90b00b
1 changed files with 24 additions and 23 deletions
|
@ -166,33 +166,34 @@ GstCaps *gst_ntv2_supported_caps(NTV2DeviceID device_id) {
|
||||||
|
|
||||||
for (gsize i = 0; i < G_N_ELEMENTS(format_map); i++) {
|
for (gsize i = 0; i < G_N_ELEMENTS(format_map); i++) {
|
||||||
const FormatMapEntry &format = format_map[i];
|
const FormatMapEntry &format = format_map[i];
|
||||||
|
GstCaps *tmp = NULL;
|
||||||
|
|
||||||
if (device_id == DEVICE_ID_INVALID) {
|
if (device_id == DEVICE_ID_INVALID) {
|
||||||
gst_caps_append(caps, gst_aja_video_format_to_caps(format.gst_format));
|
tmp = gst_aja_video_format_to_caps(format.gst_format);
|
||||||
} else {
|
} else if ((format.aja_format != NTV2_FORMAT_UNKNOWN &&
|
||||||
if ((format.aja_format != NTV2_FORMAT_UNKNOWN &&
|
::NTV2DeviceCanDoVideoFormat(device_id, format.aja_format)) ||
|
||||||
::NTV2DeviceCanDoVideoFormat(device_id, format.aja_format)) ||
|
(format.quad_format != NTV2_FORMAT_UNKNOWN &&
|
||||||
(format.quad_format != NTV2_FORMAT_UNKNOWN &&
|
::NTV2DeviceCanDoVideoFormat(device_id, format.quad_format))) {
|
||||||
::NTV2DeviceCanDoVideoFormat(device_id, format.quad_format))) {
|
tmp = gst_aja_video_format_to_caps(format.gst_format);
|
||||||
GstCaps *tmp = gst_aja_video_format_to_caps(format.gst_format);
|
}
|
||||||
|
|
||||||
// Widescreen PAL/NTSC
|
if (tmp) {
|
||||||
if (format.gst_format == GST_AJA_VIDEO_FORMAT_525_2398 ||
|
// Widescreen PAL/NTSC
|
||||||
format.gst_format == GST_AJA_VIDEO_FORMAT_525_2400 ||
|
if (format.gst_format == GST_AJA_VIDEO_FORMAT_525_2398 ||
|
||||||
format.gst_format == GST_AJA_VIDEO_FORMAT_525_5994) {
|
format.gst_format == GST_AJA_VIDEO_FORMAT_525_2400 ||
|
||||||
GstCaps *tmp2 = gst_caps_copy(tmp);
|
format.gst_format == GST_AJA_VIDEO_FORMAT_525_5994) {
|
||||||
gst_caps_set_simple(tmp2, "pixel-aspect-ratio", GST_TYPE_FRACTION, 40,
|
GstCaps *tmp2 = gst_caps_copy(tmp);
|
||||||
33, NULL);
|
gst_caps_set_simple(tmp2, "pixel-aspect-ratio", GST_TYPE_FRACTION, 40,
|
||||||
gst_caps_append(tmp, tmp2);
|
33, NULL);
|
||||||
} else if (format.gst_format == GST_AJA_VIDEO_FORMAT_625_5000) {
|
gst_caps_append(tmp, tmp2);
|
||||||
GstCaps *tmp2 = gst_caps_copy(tmp);
|
} else if (format.gst_format == GST_AJA_VIDEO_FORMAT_625_5000) {
|
||||||
gst_caps_set_simple(tmp2, "pixel-aspect-ratio", GST_TYPE_FRACTION, 16,
|
GstCaps *tmp2 = gst_caps_copy(tmp);
|
||||||
11, NULL);
|
gst_caps_set_simple(tmp2, "pixel-aspect-ratio", GST_TYPE_FRACTION, 16,
|
||||||
gst_caps_append(tmp, tmp2);
|
11, NULL);
|
||||||
}
|
gst_caps_append(tmp, tmp2);
|
||||||
|
|
||||||
gst_caps_append(caps, tmp);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
gst_caps_append(caps, tmp);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue