Indeo Audio: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
(fill missing details) |
||
(4 intermediate revisions by 2 users not shown) | |||
Line 3: | Line 3: | ||
* Samples: http://samples.mplayerhq.hu/A-codecs/Indeo_audio/ | * Samples: http://samples.mplayerhq.hu/A-codecs/Indeo_audio/ | ||
This is the next version of [[Intel Music Coder]] with slightly different coding parameters | |||
(all algorithms are the same) and joint stereo mode. Also unlike IMC frequency bands are calculated based on the actual sample rate. | |||
Joint stereo mode is implemented as simple <code>(L+R, L-R)</code> transform after both channels are reconstructed. | |||
=== Header format === | |||
bit 0 - should be zero | |||
bit 1 - should be zero | |||
bit 2 - stereo flag | |||
bits 3-8 - block size code | |||
bit 9 - codebook set selector (0 - no escapes, 1 - with escapes) | |||
bit 10 - codebook selector | |||
bit 11 - use raw coding | |||
bit 12 - SNR offset (-30 or -10) | |||
Block size code: | |||
0, 34-50 - (block_size + 14) 16-bit words | |||
33 - 32 words | |||
1-32 - (block_size + 15) words | |||
51-63 - invalid value | |||
=== Levels === | |||
There are 32 levels, coded with either one of codebooks or in raw form. | |||
Decoding Huffman-coded levels is the same as in [[Intel Music Coder]] but with different tables. | |||
Raw form: | |||
the largest coefficient position - 5 bits | |||
quantised largest coefficient - 7 bits | |||
other coefficients - 4 bits per coefficient | |||
Level reconstruction is also the same as in [[Intel Music Coder]] except for raw form. | |||
Maximum raw coefficient is reconstructed as <code>20000 / pow(10.0, coef * 0.057031251)</code>. Other coefficients are reconstructed as <code>pow(10.0, -idx * 0.4375)</code>. | |||
[[Category:Audio Codecs]] | [[Category:Audio Codecs]] | ||
Latest revision as of 06:21, 22 July 2023
- Format: 0x402
- Company: Intel, now Ligos
- Samples: http://samples.mplayerhq.hu/A-codecs/Indeo_audio/
This is the next version of Intel Music Coder with slightly different coding parameters (all algorithms are the same) and joint stereo mode. Also unlike IMC frequency bands are calculated based on the actual sample rate.
Joint stereo mode is implemented as simple (L+R, L-R)
transform after both channels are reconstructed.
Header format
bit 0 - should be zero bit 1 - should be zero bit 2 - stereo flag bits 3-8 - block size code bit 9 - codebook set selector (0 - no escapes, 1 - with escapes) bit 10 - codebook selector bit 11 - use raw coding bit 12 - SNR offset (-30 or -10)
Block size code:
0, 34-50 - (block_size + 14) 16-bit words 33 - 32 words 1-32 - (block_size + 15) words 51-63 - invalid value
Levels
There are 32 levels, coded with either one of codebooks or in raw form.
Decoding Huffman-coded levels is the same as in Intel Music Coder but with different tables.
Raw form:
the largest coefficient position - 5 bits quantised largest coefficient - 7 bits other coefficients - 4 bits per coefficient
Level reconstruction is also the same as in Intel Music Coder except for raw form.
Maximum raw coefficient is reconstructed as 20000 / pow(10.0, coef * 0.057031251)
. Other coefficients are reconstructed as pow(10.0, -idx * 0.4375)
.