Насколько я разбирался, идентификатор звук.данных может иметь только такие значения (это кусок из заголовка wav-файла):
Как-то mp3 в этом конверте я до сих пор не встречал. Какое значение идентификатора int type ему соответствует?typedef struct {
int type; - тип звуковых данных, бывает:1 - просто выборка, PCM-поток;int channels; - число каналов 1/2
0x101 - IBM mu-law;
0x102 - IBM a-law;
0x103 - ADPCM.
long SamplesPerSec; - частота выборки
long AvgBytesPerSec; - частота выдачи байтов
int align; - выравнивание
int bits; - число бит на выборку
} IDWave;
А самым распространенной начинкой конверта является как раз ADPCM, причем настолько, что принимается по-умолчанию: wav = pcm.
P.S. ... вот разве что IBM mu-law, тут действительно сжатие на базе мпег.
Но это экзотика, реального хождения практически не имеющая.
Формально WAV может нести сжатые данные. Реально - никто этим не пользуется, и де-факто WAV используется только с PCM-потоком. При попытке любому аппаратному плееру подоткнуть wav с начинкой IBM mu-law, 99.9% случаев получим ответ "Not supported бла-бла-бла...." Поэтому я бы не стал про эту возможность даже вспоминать.
Социальные закладки