[theora-dev] dead DCSearchPoints code

Mike Melanson melanson at pcisys.net
Wed Jun 18 07:54:24 PDT 2003

On Wed, 18 Jun 2003, Dan Miller wrote:

> Just today, I finally got through the joy that is superblocking.  I am now onto the even greater joy of DC prediction (yuk!), with excellent help from your document (note a slight mistake -- left column (group 1) can only use U & UR predictors, not UL)

        Good catch.

> BTW I think I will scrap the group numbering as it's really an implementation detail, and rather confusing.  Once you get through the smoke, it's actually not *too* complex.  The implementation details make it seem worse than it is (I think -- haven't really got it working yet).

        True, it could probably be described without the group numbering.
However, it will be critical to carefully explain how to make the DC
prediction bit-exact (think about the HIGHBITDUPPED() macro). I know from
experience how quickly the data will be messed up if the process isn't
followed precisely as in the original code.

> Also, sanity check -- DCSearchPointCount is always zero, so the code that looks through the DC search points never gets called, right?  It falls through to Last[WhichFrame], ie last block coded, or zero if no blocks coded...?  Nice if true, less craziness to document.

        From my analysis, DCSearchPoints is mooted in the VP3 source.

> As for that possible bug, I have a vague memory of one of the original VP3 programmers explaining something once about how the color modes are tied to the Y modes, so I suspect it's not really a bug...  but this could be a bad dream...  in any case, if it were a bug, I think things would be way screwed up & we would have noticed.  More likely it's just another of the cruelly subtle coding that makes VP3 analysis such a challenging hobby...

        For anyone following along, here is the original message:
I still contend that it does not make sense. While C-plane macroblock
coding data is unpacked, this information is never used in the decoding
process. The Y-plane macroblock data is applied to the C-planes. Thus,
while the information is present in the bitstream (using precious bits),
it does not affect the decoding process.

> Thanks much for the contribution! Sure you don't wanna do IRC?  Great timewaster, but we sometimes actually talk about this stuff ;*}

        Generous offer, but no thanks. I'm much too busy with the general
multimedia hacking. Besides, as with Wiki, I don't know how IRC works and
I'm too unmotivated to learn...:)

	-Mike Melanson

<p><p><p><p>--- >8 ----
List archives:  http://www.xiph.org/archives/
Ogg project homepage: http://www.xiph.org/ogg/
To unsubscribe from this list, send a message to 'theora-dev-request at xiph.org'
containing only the word 'unsubscribe' in the body.  No subject is needed.
Unsubscribe messages sent to the list will be ignored/filtered.

More information about the Theora-dev mailing list