<div dir="ltr">The sending of the EOS closes out the file if I just sent it by itself without the block (Half way there!).  But I can't get the sink in order to place the probe and capture the callback.  How do you obtain the sink pad on the splitmuxsink?  I get null back from gst_element_get_static_pad in the code below.  <div><br></div><div>>> <span style="font-size:12.8000001907349px">What I would do is to place a probe on the splitmuxsink sink pad, with the flag GST_PAD_PROBE_TYPE_EVENT_</span><span style="font-size:12.8000001907349px">DOWNSTREAM and then verify the EOS in the callback with </span></div><div><br></div><div>(Note, I also tried to obtain the actual sink in hopes of getting the pad off that, but the sink property is only the provided sink. )<div><br></div><div><div><br></div><div><div><b>void PipelineManager::stopPipeline_writerImpl()</b></div><div>{</div><div>  g_print("stopPipeline_writerImpl, stopping\n");</div><div><br></div><div>  if (!gPipelineMgr->m_writeSink) {</div><div>    g_critical("stopPipeline_writerImpl: m_writeSink is NULL!!\n");</div><div>    exit(-1);</div><div>  }</div><div><br></div><div>  // Block all transmissions past m_queueWriterTee</div><div>  GstPad* writerSinkPad = gst_element_get_static_pad(gPipelineMgr->m_writeSink, "sink");</div><div>  if (!writerSinkPad) {</div><div>    g_critical("stopPipeline_writerImpl: Could not obtain the writer sinkpad!!\n"); // <---- fails here!</div><div>    exit(-1);</div><div>  }</div><div><br></div><div>  gst_pad_add_probe(writerSinkPad,</div><div>                    (GstPadProbeType)(GST_PAD_PROBE_TYPE_EVENT_DOWNSTREAM),</div><div>                    writer_eos_cb,</div><div>                    m_loop,</div><div>                    NULL);</div><div>  gst_object_unref(writerSinkPad);</div><div><br></div><div>  // Send an EOS on the queue</div><div>  GstPad* queueSinkPad = gst_element_get_static_pad (gPipelineMgr->m_queueWriterTee, "sink");</div><div>  gst_pad_send_event(queueSinkPad, gst_event_new_eos ());</div><div>  gst_object_unref(queueSinkPad);</div><div><br></div><div>  g_print("stopPipeline_writerImpl, done...\n");</div><div>}</div></div></div></div><div><br></div><div><br></div><div>Thanks again for your help!</div><div>-David</div><div><br></div></div>


        
        
        
<br/><hr align="left" width="300" />
View this message in context: <a href="http://gstreamer-devel.966125.n4.nabble.com/splitmuxsink-arbitrary-close-tp4672799p4672852.html">Re: splitmuxsink arbitrary close</a><br/>
Sent from the <a href="http://gstreamer-devel.966125.n4.nabble.com/">GStreamer-devel mailing list archive</a> at Nabble.com.<br/>