[FFmpeg-devel] Google Summer of Code 2008

Marco Gerards mgerards
Sat Mar 8 12:55:50 CET 2008


Mike Melanson <mike at multimedia.cx> writes:

> Marco Gerards wrote:
>> Sorry, I am to blame for not finishing this yet.  Before Christmas I
>> have updated the code to the spec of that date.  Unfortunately there
>> were some regressions so the decoder output does not match that of the
>> reference implementation.  It's not a hard, but a very frustrating job
>> to fix this.
>> 
>> Furthermore, Dirac should be updated to the current specification (the
>> final version was recently released) and the low delay syntax should
>> be added so the decoder is compatible with VC-2.  It is not that much
>> work, it just has to be done.  At the moment I am working on my master
>> thesis, so I won't have much time during the next two months.  At the
>> moment it is hard to say something about the near future.
>> 
>> Anyways, I do not want to let this code rot.  I put a lot of effort in
>> this and I want to pick it up again, when time permits.  Feel free to
>> contacting me when you have any questions about my code.  Don't worry
>> about this being a wasted effort, I do not intend to let this happen
>> :-)
>> 
>> Sorry this semi off-topic post :-)
>
> Not sure how this could possibly be considered off-topic for
> ffmpeg-devel. :) I'm glad to see you're still around.

Dirac's progress wasn't the topic of this discussion.

> Can you briefly enumerate the discrete tasks that you think need to be
> done before the decoder is complete? Also for the encoder?

Decoder:

- Fixing regressions and updating to the current specifications
- Adding low delay support (required for VC-2)
- Adding missing DWT/IDWT algorithms
- Properly deal with buffer management (related to updating to the
  current spec)
- Interlacing

Encoder:

- Add Motion Estimation
- Make sure it functions according to the current specifications
- Add some sane way to determine when a frame should be an interframe
  or intraframe
- Do quantization

There is also a TODO in SVN, but this covers the most important tasks.

Especially the regressions are frustrating me at the moment.  It is
hard to find them when I have only a few hours to work on this.  I am
quite sure it is in motion compensation, in case someone wants to look
at this before I gruadated.

>>From a testing perspective, is Dirac designed to be bit exact? And I
> suppose it's way too much to hope that the BBC actually has a reference
> suite available. I mean, it's not like they have any library of visual
> test material for which they own the copyright. :)

The specification specifies in detail how the bitstream should be
decoded.  This includes how to round, etc.  So two implementations
should produce the same decoded frames.

There are some HD quality samples on the Dirac website, if anyone
cares.  But this is not encoded yet.  To test my work, I usually use
the reference implementation (instead of Schrodinger).

If someone wants to work on this, feel free to contact me directly.
Poking me from time to time, might also get me to work when I have
some spare time to spend on this :-)

--
Marco





More information about the ffmpeg-devel mailing list