[FFmpeg-devel] [PATCH 2/2] add libyami.cpp for h264 decoding by libyami

wm4 nfxjfg at googlemail.com
Mon Jan 12 15:04:57 CET 2015

On Mon, 12 Jan 2015 08:24:35 -0500
"Ronald S. Bultje" <rsbultje at gmail.com> wrote:

> Hi,
> On Mon, Jan 12, 2015 at 12:59 AM, Zhao, Halley <halley.zhao at intel.com>
> wrote:
> > I understand you concern.
> > The wrapper doesn't help much to ffmpeg itself, however, it benefits much
> > to the apps uses ffmpeg, to pick up hw capability for codec.
> So specifically, what are the features that you get with yaml that ffmpeg
> doesn't already provide (that is: yaml is itself just a wrapper for other
> stuff; what does it wrap that ffmpeg doesn't have already?). I see
> h264enc/vp8dec/vp8enc/vp9dec/jpegdec/jpegenc vaapi. Anything else? Why not
> just implement these in ffmpeg directly?

From what I can see:

- libyami doesn't require the relatively terrible boilerplate for
  hwaccel (creating the hw decoder yourself, maintaining a surface
  pool, etc.), making this lib very attractive for those who want
  something simple, and who possibly don't even want to depend on ffmpeg
- uses some new APIs (not supported by all drivers yet), which work
  around vaapi suckage, such as requiring a shared context. Namely, the
  dma_buf stuff.

I wonder how well the latter actually works...

> (Note that indeed, we did not link to libvpx to get vp9/vp8 decoding; we
> wrote our own, and it worked _much_ better. That same may be true here
> also.)

More information about the ffmpeg-devel mailing list