Системный звук игнорирует уровень громкости - PullRequest
5 голосов
/ 30 марта 2011

Я работаю над игрой.И у меня есть некоторые проблемы со звуками.

Я использую системные звуки для подтверждения игрока, когда он нажимает кнопку.Эти звуки соответствуют громкости, установленной игроком, когда воспроизводятся другие звуки (я использую AVAudioPlayer с и AudioQueue с).Но когда системный звук только для воспроизведения, он игнорирует громкость, установленную игроком, и воспроизводится на громкости звонка.

Как заставить системные звуки соблюдать громкость, установленную игроком, даже когда другие звуки не воспроизводятся

Ответы [ 2 ]

4 голосов
/ 13 августа 2011

Предполагается, что вы имеете в виду, что игроки настраивают громкость с помощью боковых кнопок громкости на устройстве:

У меня была такая же проблема, когда SystemSound соблюдал кнопки регулировки громкости, но нашел параметр в "Настройках" / "Звуки "/" Звонок и оповещения "/" Изменить с помощью кнопок ", которые по умолчанию были выключены.Переключение на «ON» заставило его работать.

0 голосов
/ 25 апреля 2011

Как ваши игроки (я полагаю, вы имеете в виду людей, играющих в игру) устанавливают громкость - с помощью регулятора громкости устройства или через интерфейс вашего приложения?Если последнее, то это не сработает, поскольку системные звуки всегда должны воспроизводиться на уровне громкости устройства.

В соответствии с Руководство по программированию мультимедиа , «Звук воспроизводится при текущей громкости звука системы, без программной регулировки громкости. "

Я не знаю, почему звуки вашей системы могут изменить громкость при воспроизведении звука AVAudioPlayer.Если это так, можете ли вы зациклить тихий звук с AVAudioPlayer, когда вы не воспроизводите другие звуки?В противном случае я бы попробовал воспроизвести все звуки с помощью AVAudioPlayer, чтобы у вас был прямой контроль над громкостью.

...