gst_adapter_clear (self->adapter);
self->started = FALSE;
+ if (self->wait_for_keyframe)
+ self->waiting_for_keyframe = TRUE;
+ if (self->request_keyframe)
+ gst_pad_push_event (GST_RTP_BASE_DEPAYLOAD_SINKPAD (depay),
+ gst_video_event_new_upstream_force_key_unit (GST_CLOCK_TIME_NONE,
+ TRUE, 0));
+
send_new_lost_event (self, GST_BUFFER_PTS (rtp->buffer), picture_id,
"Incomplete frame detected");
sent_lost_event = TRUE;
send_last_lost_event (self);
self->stop_lost_events = FALSE;
}
+
+ if (self->wait_for_keyframe)
+ self->waiting_for_keyframe = TRUE;
+ if (self->request_keyframe)
+ gst_pad_push_event (GST_RTP_BASE_DEPAYLOAD_SINKPAD (depay),
+ gst_video_event_new_upstream_force_key_unit (GST_CLOCK_TIME_NONE,
+ TRUE, 0));
+
goto done;
}