Consolidate zero copy multimedia support in gstreamer and xvideo stacks

Registered by Alexander Sack

Improve and consolidate multimedia frameworks to support zero copy multimedia playback. This potentially involves changes to
 * gstreamer, gstreamer-omax
 * xvideo

Blueprint information

Tom Gall
Needs approval
Benjamin Gaignard
Series goal:
Accepted for trunk
Milestone target:
milestone icon backlog
Started by
Sachin Gupta
Completed by
Jesse Barker

Related branches



[asac Nov 17]: work items in whiteboard are missing and check that wiki page name is CamelCase
[asac Nov 21]: work items still missing; I named the wiki page to be CamelCase now
[asac jan 3]: fixing work items ... approving. Plese split up work items in milestones still though!!
[gsachin,rajeev,Jan 4]: Updated work items with moree details. Added few more work items. Updated Milestone as per new added work itesms. Jian and Benjig - Please review updated work items and align your tasks.
[benjiG, April 27]: updated work items and details

First draft delivered

[jian-li] Develop gstreamer egl sink element interoperable with ffmpeg colorspace converter and software decoders: POSTPONED
[benjamin-gaignard] Test auto plugging for hw accelerated color space converter element from different vendors: DONE

[jian-li] Continue Development of gstreamer egl sink element interoperable with ffmpeg colorspace converter and software decoders: POSTPONED
[jian-li] Add support for querying physically contiguous buffer information and exposing this information through extended gstbuffer class to gstreamer egl sink based on standardised kernel API: POSTPONED
[benjamin-gaignard] Test gstbufferpool base class from Gstreamer experimental test branch: DONE
[benjamin-gaignard] Define a zero copy proposal for zero copy between gstomx elements: DONE

[benjamin-gaignard] Modify gstomx according to zero copy proposal: DONE
[benjamin-gaignard,jian-li] Test and package zero copy implementation with modified gstomx,demuxers and egl sink: POSTPONED
[wei-feng] Make eglsink for direct rendering work based on freescale private eglimage extensions (upstream plugin ffmpeg CSC or iMx53 VPU decoder): DONE
[wei-feng] Make gst-plugins-gl work with texture uploading: DONE
[wei-feng] Make gst-plugins-gl work with direct rendering based on standardised egl extensions : POSTPONED


Work Items

Work items for 11.01:
[benjamin-gaignard] Develop auto color converter plugging mechanism: DONE
[benjamin-gaignard] Study difference in buffer allocation mechanisms between different vendor's gstomx implementations: POSTPONED
[benjamin-gaignard] Define standard kernel API for buffer allocations taking care of difference in vendor requirements in cooperation with kernel working group: POSTPONED
[sachin-gupta] Request landing teams to provide OMX compliant with the standardise kernel hw buffer driver: POSTPONED
[jian-li] Define gstreamer egl sink specs: DONE
[jian-li] Define design document for gstreamer egl sink: DONE
[jian-li] Set up work environment for eglsink development based on gstreamergl package: POSTPONED

Dependency tree

* Blueprints in grey have been implemented.