Название поля |
Размер и формат |
Содержание |
Заголовок файла |
4 байта (DWord) |
ASCII текст "RIFF" Процедура, переводящая строку в DWord, включена в модуль Wave
|
Размер файла |
4 байта (DWord) |
Размер файла без строки "RIFF"
(4 байта) и собственно числа размера (4 байта). Это размер_файла - 8.
|
WAV заголовок |
4 байта (DWord) |
ASCII текст "WAVE" |
Описание формата |
4 байта (DWord) |
ASCII текст "fmt " (включая пробел) |
Размер описания формата |
4 байта (DWord) |
Тип WAVE файла (2 байта) + mono/stereo
(2 байта) + частота дискретизации (4 байта) + байт_в_секунду (4 байта) + выравнивание (2 байта) +
разрядность (2 байта). В сумме 16. |
Тип WAVE файла |
2 байта (Word) |
Заголовок PCM = $01 (линейная дискретизация).
Другие значения подразумевают некоторые формы сжатия.
|
Количество каналов |
2 байта (Word) |
mono ($01) или stereo ($02). Можно попробовать больше... |
Частота дискретизации |
4 байта (DWord) |
обычно 44100 Hz, 22050 Hz, ...
|
байт в секунду |
4 байта (DWord) |
Скорость потока данных = Число_каналов*Частота_дискретизации*Разрядность/8 |
Выравнивание |
2 байта (Word) |
Число байт в сэмпле = Число_каналов*Разрядность/8
|
Разрядность |
2 байта (Word) |
Двоичные разряды дискретизации (обычно 32, 24, 16, 8). Интересно, что будет, если установить это равным, например, 5 ..? |
Заголовок данных |
4 байта (DWord) |
ASCII текст "data". |
Размер данных |
4 байта (DWord) |
Число байта собственно звуковых данных |
Данные |
-?- |
Собственно данные. Будьте внимательны при записи стерео (см. ниже) |