Dynamic linking for custom bins

waldemar valdemar at gmail.com
Fri May 9 20:15:22 PDT 2014


Thank you so much!

Indeed, that solved the freezing of the pipeline, I'm just queuing for the
pipeline position and setting the offset to this value before adding the
second custom bin to the mixers.

long int Pipeline::GetPosition() {
  gst_element_query_position(pipeline, GST_FORMAT_TIME, &position_nano);
  return position_nano;
};

...

long int position = parent_pipeline->GetPosition();
gst_pad_set_offset(video_src_pad, position);
gst_pad_set_offset(audio_src_pad, position);
gst_bin_add(GST_BIN(parent_pipeline->pipeline), this->bin);
gst_element_sync_state_with_parent(this->bin);
gst_pad_link(video_src_pad, video_sink_pad);
gst_pad_link(audio_src_pad, audio_sink_pad);

Now I'm getting a problem with audio out of sync with video on the second
custom bin, this is probably because I'm using an adder element instead of
the new audiomixer from 1.3 (I've read this element handles better the
synchronization).

I'm moving my code to work with GStreamer Editing Services now, seems like
this library has a lot of features we need for the future (and would be less
daunting than using GStreamer alone).



--
View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Dynamic-linking-for-custom-bins-tp4666704p4666897.html
Sent from the GStreamer-devel mailing list archive at Nabble.com.


More information about the gstreamer-devel mailing list