Использование нейросетей для анализа звуковой информации


Формат звуковых файлов Microsoft Wave


Это наиболее распространенный благодаря своей гибкости формат хранения аудиоданных. Данный формат принадлежит к группе форматов файлов для передачи ресурсов RIFF (Resource Interchange File Formats). Обычно файлы имеют расширение wav. Помимо звуковых данных, файл может содержать текстовую информацию, различную служебную информацию и вообще любые (не только звуковые) данные. Каждый фрагмент данных имеет заголовок, в котором уточняется тип данных и размер фрагмента. Глобальный фрагмент имеет заголовок RIFF. Допускается вложенность фрагментов. Звуковые данные могут быть как сжатые, так и не сжатые. Несжатые данные хранятся в формате PCM (Pulse Code Modulation), при этом порядок следования таков: идет первый отсчет первого (например, левого) канала, затем второго, и т.д. (естественно, если звук моно, то канал всего один), затем второй отсчет первого канала, второго, и т.д. Для отсчетов разрядностью 16 бит (слово) данные хранятся в виде знакового целого, сначала младший, затем старший байт. При этом отсутствию сигнала соответствует значение 0, а максимально возможная амплитуда 215.

Структура файла с единственным фрагментом  аудиоданных изображена на рис. 1:

Формат файлов Microsoft Wave RIFF PCM

Рис. 1

Структура WAVEFORMATEX используется для определения формата записанных данных. В Windows она определена следующим образом:

typedef struct {

WORD wFormatTag;         // формат данных, например WAVE_FORMAT_PCM

WORD nChannels;          // количество каналов

DWORD nSamplesPerSec;    // частота дискретизации

WORD nAvgBytesPerSec;    // скорость потока, байт в секунду

                         // для PCM равен nSamplesPerSec*nBlockAlign

WORD nBlockAlign;        // минимальная единица измерения в байтах,

// для PCM равна BitsPerSample/8*nChannels

WORD wBitsPerSample;     // Количество бит на отсчет

WORD cbSize;             // размер доп. информации

} WAVEFORMATEX;



Содержание раздела