Zebediah Figura (@zfigura) commented about dlls/winegstreamer/wg_muxer.c:
- {
link_ok = !link_src_to_sink(stream->my_src, muxer_sink_pad);
- }
- gst_object_unref(muxer_sink_pad);
- if (!link_ok)
return false;
- /* Active pad and push events to prepare for streaming. */
- sprintf(buffer, "wg_muxer_stream_src_%u", stream->id);
- gst_segment_init(&stream->segment, GST_FORMAT_BYTES);
- if (!gst_pad_set_active(stream->my_src, 1))
return false;
- if (!push_event(stream->my_src, gst_event_new_stream_start(buffer))
|| !push_event(stream->my_src, gst_event_new_caps(stream->my_src_caps))
|| !push_event(stream->my_src, gst_event_new_segment(&stream->segment)))
return false;
I don't know if this code was tested, but I'm under the impression that this part needs to be done *after* setting the bin to paused, or these events will be dropped.