Browse Source

Don't wait for EOS if recording is not active

QGC4.4
Andrew Voznytsa 5 years ago
parent
commit
9d55c0f91d
  1. 6
      src/VideoReceiver/GstVideoReceiver.cc

6
src/VideoReceiver/GstVideoReceiver.cc

@ -247,6 +247,11 @@ GstVideoReceiver::stop(void)
if ((bus = gst_pipeline_get_bus(GST_PIPELINE(_pipeline))) != nullptr) { if ((bus = gst_pipeline_get_bus(GST_PIPELINE(_pipeline))) != nullptr) {
gst_bus_disable_sync_message_emission(bus); gst_bus_disable_sync_message_emission(bus);
gboolean recordingValveClosed = TRUE;
g_object_get(_recorderValve, "drop", &recordingValveClosed, nullptr);
if (recordingValveClosed == FALSE) {
gst_element_send_event(_pipeline, gst_event_new_eos()); gst_element_send_event(_pipeline, gst_event_new_eos());
GstMessage* msg; GstMessage* msg;
@ -263,6 +268,7 @@ GstVideoReceiver::stop(void)
} else { } else {
qCCritical(VideoReceiverLog) << "gst_bus_timed_pop_filtered() failed"; qCCritical(VideoReceiverLog) << "gst_bus_timed_pop_filtered() failed";
} }
}
gst_object_unref(bus); gst_object_unref(bus);
bus = nullptr; bus = nullptr;

Loading…
Cancel
Save