[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:
http://www.xiph.org/archives/theora-dev/200305/0002.html
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