Ich arbeite an einer VoIP-App. Der AudioSession-Modus ist auf kAudioSessionMode_VoiceChat eingestellt.iOS 5/6: geringe Lautstärke nach der ersten Verwendung von CoreAudio
Für einen Anruf, öffne ich eine CoreAudio AudioUnit mit Subtyp kAudioUnitSubType_VoiceProcessingIO. Alles funktioniert gut. Nach dem ersten Anruf schließe ich AudioUnit mit AudioUnitUninitialize() und deaktiviere die Audio Session.
Jetzt scheint es jedoch so, als ob das Audiogerät nicht korrekt freigegeben wird: Die Ruftonlautstärke ist sehr niedrig, die Lautstärke des Medienplayers ist niedriger als gewöhnlich. Und für einen nachfolgenden Anruf kann ich kAudioUnitSubType_VoiceProcessingIO nicht mehr aktivieren. Es funktioniert, um stattdessen eine AudioUnit mit kAudioUnitSubType_RemoteIO zu erstellen, aber auch die Lautstärke des Anrufs ist sehr niedrig (sowohl der Empfänger als auch der Lautsprecher).
Das erste Mal auf iOS 5 aufgetreten. Mit dem iPhone 5 auf iOS 6 ist es noch schlimmer (noch geringere Lautstärke).
Hat jemand das gesehen? Muss ich mehr als AudioUnitUninitialize() tun, um die Sprachverarbeitungseinheit freizugeben?
Hallo, ich habe ein ähnliches Problem. Bei mir wechsle ich zwischen vpio und remoteio. Ich habe versucht, wie Sie vorgeschlagen haben, mit AudioComponentInstanceDispose(), aber nachdem ich dies getan habe und eine neue Kopie abzurufen, kann ich die Eigenschaft für die Instanz nicht mehr setzen. Irgendwelche Ideen? Vielen Dank. – lppier
auf VPIO, auch nach der Verwendung von AudioComponentInstanceDispose(), das Volumen immer noch verringert, jeder? –