Добрый день,
Не могу найти способ просто и без хлопот проиграть аудио sample на заданное устройство в Windows.
Я пробовал это сделать двумя способами. Первый очень простой — PlaySound(MAKEINTRESOURCE(a_res_id), hInst, flags);
Все отлично работает но — нет способа задать выходное устройство

А надо
Второй — использовал waveOut API. Декодируем звук в PCM (Или сразу его храним в ресурсах или файле как PCM). Задаем устройство используя информацию из waveOutGetDevCaps и открыая его через waveOutOpen.
Все отлично — но для очень коротких сэмплов.
Что нибудь мало мальски длинное (больше ~ 15 сек) или непрерывный повтор одного и того же сэмпла начнет щелкать. Причина рассинхронизация таймера системы используемого для посыла сэмпла в линию и таймера звуковой платы. Писать синхронизацию не хочу, это уже перебор.
Подскажите пожалуйста ПРОСТОЙ способ проигрывания аудио в Windows для заданного устройства.
Заранее спасибо.