Jak rozwiązać konflikt AVCaptureSession v AVAudioSession w iOS?

Próbuję uruchomić AVCaptureSession w kontrolerze widoku, ale w ramach tego samego wywołuję również funkcję z biblioteki, która używa AVAudioSession. Wydaje mi się, że nie mogę uzyskać wielu informacji z debugera, poza tym, że zawiesza się dokładnie wtedy, gdy nazywam tę konkretną funkcję biblioteki. Biblioteka to libpd:

https://github.com/libpd

i wywołuje AVAudioSession jako sharedInstance. Nazywam libpd jako:

<code>[self.audioController configurePlaybackWithSampleRate:44100 numberChannels:2 inputEnabled:YES mixingEnabled:YES]
</code>

więc miksowanie jest włączone, ale na wszelki wypadek przekompilowałem go tak, aby podczas pracy:

<code>    UInt32 doSetProperty = 1;
    AudioSessionSetProperty (kAudioSessionProperty_OverrideCategoryMixWithOthers,  sizeof(doSetProperty), &doSetProperty);
</code>

ale nie ma szczęścia. Przeniesienie wywołań do libpd do viewWillAppear w kontrolerze widoku również nie działało. Jednakże, jeśli biorę kod, który wywołuje libpd z mojego viewcontrollera i umieszczam go w delegacie aplikacji wewnątrz didFinishLaunchingWithOptions, to zaczyna się dobrze, a obie sesje wydają się współistnieć bez awarii.

Czy brakuje mi czegoś o AVCaptureSession i miksowaniu? Jak przejść do współistnienia obu sesji? Nie używam AVCapture do przechwytywania dźwięku, tylko wejście do kamery, więc nie powinienem być w stanie jakoś się obudzić?

questionAnswers(2)

yourAnswerToTheQuestion