[MPlayer-dev-eng] video filter layer

Michael Niedermayer michaelni at gmx.at
Sat Apr 21 13:41:07 CEST 2007


On Sat, Apr 21, 2007 at 03:27:13PM +0900, Bobby Bingham wrote:
> Hi all,
> I'm working on a video filter layer for FFmpeg for this year's Summer of
> Code.  I'm trying to look at the designs of libmpcodecs and some other
> existing systems out there to get an idea of what works and what doesn't.
> As part of that, I'd like to ask all the MPlayer developers about your
> experiences with libmpcodecs.  What are some of the things you think it
> handles better than the competition.  More importantly perhaps, what are
> some of the areas where it could use work?  Are there any things that
> just flat out can't be accomplished with it?  Or can't be done as easily
> or effectively as they should?

* libmpcodecs is limited to a single linear filter chain
* inserting frames is not fully working
* many parts are undocumented and noone really understands the whole
  libmpcodecs, RTFS also doesnt help as the authors of various filters
  might have had a different idea on how things work ...
* the IPB limitation reimar already mentioned

> Also, I'm starting to turn the whole buffer management and direct
> rendering infrastructure over in my head, and trying to play with some
> ideas relating to that.  If anybody's run into some cases which cause
> particularly interesting issues in buffer management, I'd love to hear
> about them so I can make sure that whatever I come up with works well in
> all cases.

direct rendering with slices is "fun"

the problem is that while frames are output in display order from codecs
(at least all current codecs behave that way, ...) slices are output
for the currently coded frame which is generally a future frame

so for example a filter (independant of the filter API) would get with 
a common mpeg2 (IBBPBBP) video

frame 0 slice 0
frame 0 slice 1
frame 3 slice 0
frame 3 slice 1
frame 1 slice 0
frame 1 slice 1
frame 2 slice 0
frame 2 slice 1
frame 6 slice 0
frame 6 slice 1
frame 4 slice 0
frame 4 slice 1

Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Democracy is the form of government in which you can choose your dictator
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/attachments/20070421/f7a0c171/attachment.pgp>

More information about the MPlayer-dev-eng mailing list