proxy allocation query to fix appsink zero-copy issue
Nicolas Dufresne
nicolas at ndufresne.ca
Thu Jan 30 15:15:10 UTC 2020
Le jeudi 30 janvier 2020 à 05:39 -0600, mksafavi a écrit :
> Hi.
> to fix zero-copy issues I had with appsink. as suggested I tried proxying
> the query allocation based on kmscube decoder.
>
> https://gitlab.freedesktop.org/mesa/kmscube/blob/master/gst-decoder.c#L242
> <https://gitlab.freedesktop.org/mesa/kmscube/blob/master/gst-decoder.c#L242>
> So far I added a probe to my appsink and in the callback function, I checked
> for GST_QUERY_ALLOCATION queries and added GST_VIDEO_META_API_TYPE meta to
> it.
> I logged the queries. after a few Caps and Drain queries, I got a
> GST_QUERY_ALLOCATION.
> query type : 40963
> query type : 35846 <----- GST_QUERY_ALLOCATION
>
> what should I expect to change after adding allocation meta?
> /gst_query_add_allocation_meta(query, GST_VIDEO_META_API_TYPE, NULL);/
>
> Is there any step that I'm missing?
I forgot a lot of the context, but you are proxying I believe, which requires
different code compared to kmscube. Answer these questions and I may be able to
help further:
1. Are you modifying the buffers in-place ?
2. If not, do you have the ability to allocated DMABuf memory ?
3. What do you know about video buffer alignment ?
This is all a bit tricky, since you have to do what the GStreamer elements on
your platform do, which is very complex doe to the assymetry in the HW design.
>
> thanks
>
> PS, my followup question:
> http://gstreamer-devel.966125.n4.nabble.com/appsrc-performance-issue-tt4693030.html
>
>
>
> --
> Sent from: http://gstreamer-devel.966125.n4.nabble.com/
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
More information about the gstreamer-devel
mailing list