Hi everyone,
My application requires (potentially mutliple) external applications be able to manipulate a pipeline (possibly multiple pipelines). They also need to be able to get timestamp and sequence information from video and audio passing through those pipelines. I had originally planned on just using a tee and an appsink, until the design scaled beyond one application needing access to the video images in real time... and also it would be nice to avoid the buffer copy in the tee :). So, I thought I would write a plugin that acts as a pass-through for buffers, pulls out the buffer timestamp and sequence information, and makes it available over some form of IPC (probably a socket). I ran the gst-element-maker script using basetransform as the template, although I'm not sure that was the best choice. I did not want to use video/audiofilter, since this will likely need to be applied to both. Using simply 'element' as the base caused the automated tests to fail. Would there be a better template to use? Is there a better way to share this information with other applications? Thanks in advance, Ryan Talbot _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
You could have a look at gst-zeromq (they are not mine but use them from time to time). Although the plugins are far from finished, it does exactly what you want. This will allow you to share data between pipelines on the same machine or even different machines.
|
Thanks for the link! That might be more heavyweight than what I need, though (especially given the notes about having to memcpy buffers... definitely trying to avoid that as much as possible!). Right now, I've got a very simple plugin derived from GstBaseTransform that works in passthrough mode, using the *_transform_ip() function to sniff out timestamps and offsets and write them out to a FIFO. I'm debating how badly we really need multiple simultaneous subscribers to the information... because if it's 1:1 I'll probably stick with a non-blocking named pipe and forgo the extra hassle of a UNIX socket.
________________________________________ From: gstreamer-devel [[hidden email]] on behalf of Arjen Veenhuizen [[hidden email]] Sent: Saturday, April 16, 2016 5:09 AM To: [hidden email] Subject: Re: Sharing timestamps with external applications You could have a look at gst-zeromq <https://github.com/mjhowell/gst-zeromq> (they are not mine but use them from time to time). Although the plugins are far from finished, it does exactly what you want. This will allow you to share data between pipelines on the same machine or even different machines. -- View this message in context: http://gstreamer-devel.966125.n4.nabble.com/Sharing-timestamps-with-external-applications-tp4676929p4676943.html Sent from the GStreamer-devel mailing list archive at Nabble.com. _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
In reply to this post by Arjen Veenhuizen
On Sa, 2016-04-16 at 02:09 -0700, Arjen Veenhuizen wrote:
> You could have a look at gst-zeromq > (they are not mine but use them from time to time). Although the plugins are > far from finished, it does exactly what you want. This will allow you to > share data between pipelines on the same machine or even different machines. That looks certainly useful, and like something that would also be good to have merged into one of the GStreamer plugin modules. Would you like to propose merging it? I see that you have some design questions on your TODO list there, feel free to ask about those here too -- Sebastian Dröge, Centricular Ltd · http://www.centricular.com _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel signature.asc (968 bytes) Download Attachment |
Free forum by Nabble | Edit this page |