Carrying buffer address between elements

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Carrying buffer address between elements

Mert Can Ergun
Hi,

I recently posted another question about having multiple mount points and a simultaneous recording process on the same RTSP server which consists of an element that can't be instantiated twice.

Sugggested way of doing this was to carry buffers with appsrc and appsink and have one static pipeline to include source and appsink and N other pipelines with appsrc as their source elements.

Problem here is, source and some other components use physical memory to store frame data and they negotiate with each other to achieve encoding with zero copy.

Can I copy the location of the frame captured by hardware instead of the frame buffer itself? How would I decode it as frame in appsrc if I do so?
Reply | Threaded
Open this post in threaded view
|

Re: Carrying buffer address between elements

Sebastian Dröge-3
On Tue, 2016-11-22 at 06:24 -0800, Mert Can Ergun wrote:

> Hi,
>
> I recently posted another question about having multiple mount points and a
> simultaneous recording process on the same RTSP server which consists of an
> element that can't be instantiated twice.
>
> Sugggested way of doing this was to carry buffers with appsrc and appsink
> and have one static pipeline to include source and appsink and N other
> pipelines with appsrc as their source elements.
>
> Problem here is, source and some other components use physical memory to
> store frame data and they negotiate with each other to achieve encoding with
> zero copy.
>
> Can I copy the location of the frame captured by hardware instead of the
> frame buffer itself? How would I decode it as frame in appsrc if I do so?
You could build a GstAllocator, GstMemory and possible a GstBufferPool
around your physical memory, negotiate that between the elements with
the ALLOCATION query and then make use of that.

--
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 (981 bytes) Download Attachment