Hi,
the attached (highly WIP) set proposes some steps toward making hwaccelled
frames more usable, both within libav and for the callers.

The basic notion is that a new refcounted struct can be attached to hw frames.
This struct will contain all the (hw-specific) state that's needed to "handle"
the frame --- currently it's just retrieving the data into system memory, but in
the future it should incorporate more, like allowing hwaccel filters and such.

The advantages here are mainly those two:
- a significant amount of code that now has to be mostly duplicated in each
  caller will now be able to live in libav itself, making working with hwaccel
  much easier
- we'll be able to transparently pass hwaccel frames between libraries (I'm
  mainly thinking of lavc<->lavfi here)

The code is still a very rough draft, so I'm mainly looking for comments on the
basic design. An example VDPAU implementation is provided (because it looked the
simplest to write quickly).

-- 
Anton Khirnov
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to