Skip to content
This repository has been archived by the owner on Oct 23, 2023. It is now read-only.

Media Framework support

Xu Guangxin edited this page Oct 8, 2016 · 4 revisions

FFmpeg support

You can refer to https://github.com/01org/ffmpeg_libyami for ffmpeg integration

Wayland support

We support wayland, you can refer to https://github.com/01org/libyami-utils/blob/master/tests/decodeoutput.cpp#L730 for details

GStreamer Support

HW video buffer are platform dependent, but GStreamer requires to wrap them in a generic way. We have to wrap the buffer in flexible way: we do a lot in decoder to wrap a platform dependent handle into a subclass of base video buffer, then unwrap it in video sink. and tries best to hide hw detail when a sw component request to access the frame data.

it becomes simple when hw codec support dma_buf, since dma_buf is Linux generic. it is possible that hw video become not the 2nd class citizen any more. we don't need additional wrapper in decoder side, and we don't need a special video sink for each hw video type.

dma_buf rendering for legacy support

in the above ideas, we usually consider EGL/GLES rendering context, how about legacy usage? it is simple as well. DRI3 protocol support dma_buf, it means a dma_buf handle can be sent to server for window update. Keith said mesa is using it, and on server side glamor handle the dma_buf. the remaining gap is that YUV buffer hasn't been supported yet, but not hard to add it.

Clone this wiki locally