Окт 16

Воспроизведение звуковых файлов

Добавление звука к приложению может сделать его более эффективным для пользователя, а в каких-то случаях и более привлекательным. Например, можно использовать специальные звуки или воспроизведение аудиоклипов, чтобы привлечь внимание пользователя при обнаружении ошибок или при завершении длительной операции. Другие очевидные сферы применения музыкальных и звуковых эффектов — это обучающие программы, а также приложения, предназначенные для презентаций или рекламы.
Win32 API поддерживает работу только со звуковыми файлами, записанными в формате WAVE (waveform audio file fomat). Файлы этого формата имеют расширение .wav. Они содержат оцифрованные с некоторой частотой 8- или 16-битовые звуковые данные. Хотя при записи WAVE-формата информация сжимается как аппаратными, так и программными средствами, она содержит все необходимые данные о реальном звуковом потоке, А потому файлы с расширением .wav, к сожалению, довольно громоздки и занимают сотни килобайтов на каждую минуту записи.
Для воспроизведения звуковых файлов вызывается функция PlaySound, которая имеет следующий прототип:
BOOL PlaySound(
LPCSTR pszSound, // строка, специфицирующая воспроизводимый звук
HMODULE hmod, // дескриптор экземпляра приложения
DWORD fdwSound // флаги воспроизведения ):
Первый параметр функции задает либо имя файла на диске, либо строку имени звукового ресурса. Если при вызове PlaySound первый параметр равен NULL, это вызывает прекращение воспроизведения любого «играемого» файла.
Второй параметр используется только при воспроизведении звука из звукового ресурса. Если же функция вызвана для воспроизведения звука из файла, то второй параметр устанавливается в NULL.