![]() predictor = ((sample1 * coeff1) + (sample2 * coeff2)) / 256.The bytes are decoded from the upper nibble (bits 7-4) first, then the lower nibble. The remaining samples are decoded from the ADPCM nibbles, which comprise the rest of the bytes in the block. The initial 2 samples from the block preamble are sent directly to the output. The block predictor value is used as an index into two adaptation coefficient tables in order to initialize two coefficients, coeff1 and coeff2. The initial delta and both samples are signed numbers (so take sign extension into account). The total number of bytes in an individual ADPCM block is obtained through the nBlockAlign field of a media file's WAVEFORMATEX data structure.Ī monaural block begins with the following preamble:īyte 0 block predictor (builtin predictors are in the range but others can be manually defined) Each block has a preamble and a series of coded ADPCM nibbles. ![]() This format is Microsoft's own custom variation of the ADPCM concept. ACM Codec: 'msadp32.acm' (included in Windows 95+).
0 Comments
Leave a Reply. |