There is no way to know if a live stream is really finished, so try to reload the manifest and check if there are more fragments to download. Else just let know it's the EOS.
case GST_FLOW_OK:
break; /* all is good, let's go */
case GST_FLOW_UNEXPECTED: /* EOS */
case GST_FLOW_OK:
break; /* all is good, let's go */
case GST_FLOW_UNEXPECTED: /* EOS */
- gst_mss_demux_reload_manifest (mssdemux);
- return GST_FLOW_OK;
+ if (gst_mss_manifest_is_live (mssdemux->manifest)) {
+ gst_mss_demux_reload_manifest (mssdemux);
+ return GST_FLOW_OK;
+ }
return GST_FLOW_UNEXPECTED;
case GST_FLOW_ERROR:
goto error;
return GST_FLOW_UNEXPECTED;
case GST_FLOW_ERROR:
goto error;