GNOME Bugzilla – Bug 779132
waylandsink: memory:DMABuf preferred in caps
Last modified: 2018-11-03 14:04:57 UTC
Created attachment 346565 [details] [review] waylandsink-memory-DMABuf-preferred-while-negotiation waylandsink supports both SystemMemory buffers and DMABufMemory buffers. Both are exposed in caps. If we consider that DMABuf is an optimization, then it is better to have it proposed with a higher priority (=before) than SystemMemory. Instead of: video/x-raw, format=(string){ xxx }, ...; video/x-raw(memory:DMABuf), format=(string){ xxx }, ... Propose: video/x-raw(memory:DMABuf), format=(string){ xxx }, ...; video/x-raw, format=(string){ xxx }, ... Hence, when negotiating caps with a DMABuf-compatible upstream element, DMABuf becomes the default choice.
It's all theoretical, I think the preference would be to have DMABuf as SystemMemory. In any case, upstream decides (not downstream), no matter what the order is, upstream should follow a certain semantic. The upstream preferred order shall be: - DMABuf as SysMem (within the format exposed with the caps feature) - DMABuf with caps feature (not mapable dmabufs) - DMABuf as SysMem (within the format supported for SHM) - And finally resort to SysMem / Copies Can you show what the upstream part of your use case is doing ? The DMABuf caps feature won't negotiate with filters like textoverlay or even videoconvert.
Any update ?
-- GitLab Migration Automatic Message -- This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity. You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/523.