Вы должны понимать, что WAV-файлы (и уж тем более AAC-файлы) не все одинаковы. Я объясню только про WAV-файлы, тогда вы, надеюсь, поймете, как обстоят дела с AAC-файлами. Как вы указали, WAV-файл содержит данные в кодировке PCM. Однако это может быть: 8-бит, 16-бит, 32-бит, ... моно, стерео, 5.1, ..., 8 кГц, 16 кГц, 44,1 кГц и т. д. В зависимости от этих значений вы должны интерпретировать данные ( например, при чтении с помощью функции fread()) по-разному. Поэтому WAV-файлы имеют заголовок. Вы должны сначала прочитать этот заголовок стандартным способом (я не знаю подробностей). Тогда вы знаете, как читать фактические данные. Поскольку это не так просто, я предлагаю вам использовать одну из библиотек, которые читают WAV-файлы для вас, например. http://www.mega-nerd.com/libsndfile/ . Конечно, вы также можете использовать Google или использовать SO, чтобы найти других. Или вы делаете это сложным путем и выясняете, как выглядят заголовки WAV-файлов, и сначала декодируете эти данные, а затем переходите к фактическим данным, закодированным в PCM.
person
AudioDroid
schedule
11.03.2011