Revert "splitmuxsink: Avoid assertion when WAITING_GOP_COLLECT on reference context"
authorSebastian Dröge <sebastian@centricular.com>
Thu, 27 Apr 2023 13:33:25 +0000 (16:33 +0300)
committerTim-Philipp Müller <tim@centricular.com>
Sun, 30 Apr 2023 14:16:00 +0000 (15:16 +0100)
This reverts commit f29c19be5821d26a6b7682d0c69ff31d0815e072. If this is
called for the reference context then we would run into an infinite
loop, which is not really better than an assertion.

By fixing up DTS to never be ahead of the PTS in the previous commit
this situation should be impossible to hit now.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4515>

subprojects/gst-plugins-good/gst/multifile/gstsplitmuxsink.c

index 0d66185..012ca3e 100644 (file)
@@ -3184,13 +3184,11 @@ handle_mq_input (GstPad * pad, GstPadProbeInfo * info, MqStreamCtx * ctx)
         }
         break;
       case SPLITMUX_INPUT_STATE_WAITING_GOP_COLLECT:{
-        /* We're collecting a GOP, this is normally only called for non-reference
+        /* We're collecting a GOP, this is only ever called for non-reference
          * contexts as the reference context would be waiting inside
          * check_completed_gop() */
-        if (G_UNLIKELY (ctx->is_reference)) {
-          check_completed_gop (splitmux, ctx);
-          break;
-        }
+
+        g_assert (!ctx->is_reference);
 
         /* If we overran the target timestamp, it might be time to process
          * the GOP, otherwise bail out for more data. */