Zero copying from shmsrc to shmsink possible

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

Zero copying from shmsrc to shmsink possible

Peter Maersk-Moller-2
Hi.

Assuming you have a pipeline ending in a shmsink like this

  gst-launch-1.0 ...something ! shmsink socket-path=/tmp/sockA wait-for-connnection=0

And then you in a second pipeline have something like this

  gst-launch-1.0 shmsrc socket-path=/tmp/sockA ! queue ! shmsink socket-path=/tmp/sockB wait-for-connnection=0

Is there then a way that the second shmsink (sockB) can reuse the the shmarea allocated by the shmsink sockA so this can work with zero copying ? Or will there always have to be a buffer copying from shmsrc sockA to shmsink sockB in the above example?

Regards
Peter MM

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Zero copying from shmsrc to shmsink possible

Olivier Crête-3
Hi,

Right now, no there isn't. I think we could create some kind of src/sink that uses fd passing, I don't think it would be very hard to do. I think we could either have a sink/src combo that passes fds, or even have shmsink/shmsrc handle that somehow.

Olivier

On Sun, 2017-08-06 at 23:44 +0200, Peter Maersk-Moller wrote:
Hi.

Assuming you have a pipeline ending in a shmsink like this

  gst-launch-1.0 ...something ! shmsink socket-path=/tmp/sockA wait-for-connnection=0

And then you in a second pipeline have something like this

  gst-launch-1.0 shmsrc socket-path=/tmp/sockA ! queue ! shmsink socket-path=/tmp/sockB wait-for-connnection=0

Is there then a way that the second shmsink (sockB) can reuse the the shmarea allocated by the shmsink sockA so this can work with zero copying ? Or will there always have to be a buffer copying from shmsrc sockA to shmsink sockB in the above example?

Regards
Peter MM
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
-- 
Olivier Crête [hidden email]

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Loading...