I'm writing a manager element (derived from GstBin) that, at the moment, contains only a source element, derived from GstBaseSrc and based heavily on GstFileSrc. I've confirmed the source works in a playbin with gst-launch, but I've run into a problem using it as the only child of my bin. The bin is a GstUriHandler and creates the child src when a URI is set. At that point it creates a ghost pad with the src's static pad as its target, and adds the ghost to the bin. But I get this error:
(gjs:76527): GStreamer-CRITICAL **: 20:25:37.143: getrange on pad source:ts_src but it was not activated in pull mode
"ts_src" is the name of the ghost pad.
The same page says push mode is the default and this can be changed by overriding the activate function, but the
API docs for gst_pad_set_activate_function_full say: "Only makes sense to set on sink pads." So I don't think I can simply override the ghost pad's activate function. The ghost pad has a proxy pad in the reverse direction (a sink in this case), but that in turn has an unexplained internal pad, so I'm getting lost down a rabbit hole.
Can anybody help? I feel like this should just work, so is it actually a bug in ghost pads, or at least a known limitation?
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel