2009-06-30 12 views

Odpowiedz

10

Nie jestem pewna, jak robisz swój odtwarzanie dźwięku, ale spróbuj zaglądając do sekcji „Przekierowanie Audio Output” na Audio Session Programming Guide

Wygląda to mniej więcej tak:

UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker; // 1 
AudioSessionSetProperty ( 
    kAudioSessionProperty_OverrideAudioRoute,       // 2 
    sizeof (audioRouteOverride),          // 3 
    &audioRouteOverride            // 4 
); 
+1

Czy zmienia to również trasę dla danych wejściowych? Chcę wziąć dane wejściowe z zewnętrznego mikrofonu i chcę użyć głośników wewnętrznych do wyjścia. Czy mogę to zrobić za pomocą tej metody? – Namratha

+0

Nie jestem pewien, kiedy mówisz o zewnętrznym mikrofonie, masz na myśli mikrofon urządzenia zamiast mikrofonu zestawu słuchawkowego? – slf

+2

Nie, nie, miałem na myśli mikrofon podłączony zewnętrznie. Wejście należy z niego czerpać. Mam problem rozwiązany. Znalazłem twój post bardzo pomocny! – Namratha

0

Właściwie uważam, że nie jest to możliwe, ponieważ wydaje się, że jest jakiś mechaniczny przełącznik, który wskazuje podłączony zestaw słuchawkowy, zapobiegając w ten sposób wyjściu głośnika. (czytaj here)

Niektóre inne wskazówki można znaleźć w opisie kAudioSessionProperty_OverrideCategoryDefaultToSpeaker: „Określa, czy trasa audio do głośnika (zamiast do odbiornika), gdy żadna inna droga dźwięku, takich jak zestaw słuchawkowy , jest połączone."

Powiązane problemy