Мой пример кода:
mciSendString(L"open \"c:\\ZSIP\\media\\ringin.mp3\" alias ring wait", 0, 0, 0);
mciSendString(L"set ring output 1 wait", 0, 0, 0);
mciSendString(L"setaudio ring volume to 200 wait", 0, 0, 0);
mciSendString(L"play ring", 0, 0, 0);
Если я использую mp3-файл, команда changeind устройства воспроизведения игнорируется (используется windows default), но громкость правильная. Если я использую файл wav, команда, изменяющая громкость, игнорируется (используется максимальная громкость), но устройство вывода корректно.
Что я должен сделать для одновременного воспроизведения звука в гарнитуре и на более низкой громкости? Или еще одна простая в использовании библиотека, реализующая эту функциональность?
Также пробовал ogg (не поддерживается) и wma (так же, как mp3). Также попытался изменить порядок команд, добавив или удалив параметр «ожидания» и поток, спящий между командами. Также добавляем параметр «type» в mpegvideo или waveaudio.
Задача ещё не решена.
Других решений пока нет …