Настройка громкости на аудиоустройстве (kAudioUnitSubType_RemoteIO) - PullRequest
3 голосов
/ 22 июня 2010

Как настроить громкость на аудиоустройстве специально для kAudioUnitSubType_RemoteIO?

Я видел что-то для kAudioUnitSubType_MultiChannelMixer

    status = AudioUnitSetParameter(mixerUnit, kMultiChannelMixerParam_Volume, kAudioUnitScope_Output, AU_OUTPUT_BUS, volume, 0);

Заранее благодарен за помощь

Ответы [ 3 ]

8 голосов
/ 23 июня 2010

Из блога Криса Адамсона Мозговая свалка iPhone Core Audio

" RemoteIO не имеет свойства усиления или громкости. Микшерный модуль имеет свойства громкости на всех входных шинах и его выходной шине (0). Следовательно, настройка выходной громкости микшера может быть фактическим регулятором громкости , если это последнее, что было до RemoteIO. И это несколько привлекательнее, чем умножение вручную всех ваших семплов на коэффициент громкости."

1 голос
/ 19 февраля 2011

, если ваша цель - рабочий стол, это поможет вам http://developer.apple.com/audio/audiounits.html с целью iphone

result = AudioUnitSetParameter (yourUnit, kHALOutputParam_Volume, kAudioUnitScope_Output, busNumber, volume, 0);это установит громкость устройства

0 голосов
/ 31 декабря 2013

Кусок кода, который у вас есть, установит общий объем, да.Вместо AU_OUTPUT_BUS (неопределенная константа?) Вы можете просто использовать 0 для «0-й выходной шины» (kAudioUnitSubType_MultiChannelMixer имеет только 1 выходную шину).

Если вы хотите установить громкость одна конкретная входная шина , вы тоже можете сделать это

AudioUnitSetParameter( mixerUnit,
  kMultiChannelMixerParam_Volume, kAudioUnitScope_Input, busId, volume, 0 ) ;
...