mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2025-06-07 07:58:51 +00:00
Report no signal if not all quadrants have the same format in quad-link mode
This commit is contained in:
parent
569aad78b7
commit
a2d4058c4b
1 changed files with 24 additions and 1 deletions
|
@ -1812,6 +1812,29 @@ restart:
|
||||||
self->device->device->GetInputVideoFormat(
|
self->device->device->GetInputVideoFormat(
|
||||||
self->configured_input_source);
|
self->configured_input_source);
|
||||||
|
|
||||||
|
bool all_quads_equal = true;
|
||||||
|
if (self->quad_mode) {
|
||||||
|
for (int i = 1; i < 4; i++) {
|
||||||
|
NTV2VideoFormat other_video_format =
|
||||||
|
self->device->device->GetInputVideoFormat(
|
||||||
|
(NTV2InputSource)(self->configured_input_source + i));
|
||||||
|
if (other_video_format != current_video_format) {
|
||||||
|
std::string current_string =
|
||||||
|
NTV2VideoFormatToString(current_video_format);
|
||||||
|
std::string other_string =
|
||||||
|
NTV2VideoFormatToString(other_video_format);
|
||||||
|
GST_DEBUG_OBJECT(
|
||||||
|
self,
|
||||||
|
"Not all quadrants had the same format in "
|
||||||
|
"quad-link-mode: %s (%d) on input 1 vs. %s (%d) on input %d",
|
||||||
|
current_string.c_str(), current_video_format,
|
||||||
|
other_string.c_str(), other_video_format, i + 1);
|
||||||
|
all_quads_equal = false;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
ULWord vpid_a = 0;
|
ULWord vpid_a = 0;
|
||||||
ULWord vpid_b = 0;
|
ULWord vpid_b = 0;
|
||||||
self->device->device->ReadSDIInVPID(self->channel, vpid_a, vpid_b);
|
self->device->device->ReadSDIInVPID(self->channel, vpid_a, vpid_b);
|
||||||
|
@ -1831,7 +1854,7 @@ restart:
|
||||||
::GetQuarterSizedVideoFormat(effective_video_format);
|
::GetQuarterSizedVideoFormat(effective_video_format);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (current_video_format == ::NTV2_FORMAT_UNKNOWN) {
|
if (current_video_format == ::NTV2_FORMAT_UNKNOWN || !all_quads_equal) {
|
||||||
if (self->video_format_setting == GST_AJA_VIDEO_FORMAT_AUTO)
|
if (self->video_format_setting == GST_AJA_VIDEO_FORMAT_AUTO)
|
||||||
self->video_format = NTV2_FORMAT_UNKNOWN;
|
self->video_format = NTV2_FORMAT_UNKNOWN;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue