Re: QDM* IMDCT
Benjamin Larsson <[email protected]>
| Newsgroups | gmane.comp.video.xine.codec.devel |
|---|---|
| Message-ID | <[email protected]> |
Sascha Sommer wrote:
>>Hi,
>>I did a little digging in QDesign tonight and found an interesting
>>function. I'm no expert on the matter, but I think this may be one of them
>>IMDCT doohickeys that are so prevalent in perceptual audio codecs. Can
>>anyone "skilled in the art" (as they say in the patent literature) confirm
>>or deny, compare or contrast with known IMDCTs? Note that I may have a few
>>functional details mixed up, so don't take it as authoritative (and a few
>>detals are missing at the end right now).
>>
>>
>>
>
>You probably already compared this with dct36.c in mp3lib but are the
>constants cosinus values?
>
After long wasted time, how the h*** can you convert single presicion
float in dword hexform to a base 10 float that I can understand.
This sort of works but I want to be able to test many different
hexstrings without recompiling, and the other way around would be nice
to know also:
void main(){
unsigned int x = 0xABCDEF123;
printf("%f", *(float *)&x);
}
Anyway I found a table with ca 125 values:
0FB17F3F = 0.998795 Beginning
30FB48BD = -0.049068
6DC47E3F = 0.995185
.
.
.
D86B67BF midle
EA5AF1BE
98C561BF
3D9C03BF
.
.
.
F85378BF end
CCCF78BE
BE147BBF
C2C547BE
AC3A7DBF = -0.000000
Anyway if someone could help with some program that easily could convert
hex to understandable numbers that would be most helpfull. I think this
could be a cos table.
>
>
>Sascha
>
>
The step after finding the structure I found earlier is that the decoder
starts shifting out bits and doing stuff.
Anyway thanks Mike and Sascha for the good support. Think we found
another technique used in qdm*. Something is atleast done in 64byte
blocks in qdm*, I guess that 64bytes should suffice for a usefull
frequency resolution. Maybe it even matches the reduction that the
quantisation(ulaw) imposes. Anyway I don't think it will take more then
a few more weeks before the codec is reverse engineered. I will revise
my paper when I have the time. I have some more details that I will
update the paper with.
/Benjamin
-------------------------------------------------------
This SF.net email is sponsored by: IBM Linux Tutorials.
Become an expert in LINUX or just sharpen your skills. Sign up for IBM's
Free Linux Tutorials. Learn everything from the bash shell to sys admin.
Click now! http://ads.osdn.com/?ad_id=1278&alloc_id=3371&op=click