From 81ac09cfda70c4fc5567c0549bb3123deafa341c Mon Sep 17 00:00:00 2001 From: Seungha Yang Date: Thu, 6 May 2021 01:35:04 +0900 Subject: [PATCH] decklinkvideosrc: Fix crash when mode is not specified In that case, we will get "VideoInputFrameArrived" callback without "VideoInputFormatChanged" Part-of: --- sys/decklink/gstdecklink.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/sys/decklink/gstdecklink.cpp b/sys/decklink/gstdecklink.cpp index 4534180597..3f79debef2 100644 --- a/sys/decklink/gstdecklink.cpp +++ b/sys/decklink/gstdecklink.cpp @@ -991,7 +991,7 @@ public: GstClockTime stream_time, GstClockTime stream_duration, GstClockTime hardware_time, GstClockTime hardware_duration, gboolean no_signal) = NULL; - GstDecklinkModeEnum mode; + GstDecklinkModeEnum mode = GST_DECKLINK_MODE_AUTO; GstClockTime capture_time = GST_CLOCK_TIME_NONE; GstClockTime base_time = 0; gboolean no_signal = FALSE; @@ -1009,7 +1009,9 @@ public: base_time = gst_element_get_base_time (videosrc); got_video_frame = m_input->got_video_frame; } - mode = gst_decklink_get_mode_enum_from_bmd (m_input->mode->mode); + + if (m_input->mode) + mode = gst_decklink_get_mode_enum_from_bmd (m_input->mode->mode); if (m_input->audiosrc) { audiosrc = GST_ELEMENT_CAST (gst_object_ref (m_input->audiosrc));