2015-01-07 21 views

Odpowiedz

22

Najprawdopodobniej dźwięk kranu dostał AUDIO_OUTPUT_FLAG_FAST w celu korzystania z odtwarzaniem niskich opóźnieniach, jeśli to możliwe, ale AudioTrack klasy uważał ustawienia śladów za niekompatybilne z wyjściowym dźwiękiem o niskiej latencji, więc flaga została usunięta i ścieżka została potraktowana tak, jakby flaga nie była ustawiona na początek. Więc nie uważam tego za coś, o co trzeba się martwić.

Co do powodu odrzucenia flagi; Nadal powiem, że najbardziej prawdopodobną przyczyną jest niedopasowanie częstości próbkowania. Dziennik z pytaniem, z którym się łączysz, prawdopodobnie został dodany do AOSP w this commit. Ale jeśli spojrzymy na the master branch of the code base used on many Qualcomm-based devices, zobaczymy, że nadal ma on dziennik "AUDIO_OUTPUT_FLAG_FAST denied by client" w przypadku, gdy wystąpiło niedopasowanie częstości próbkowania. Które dzienniki są pobierane, zależy od dokładnej implementacji na Twoim urządzeniu (np. Z jakiego urządzenia i wersji Androida korzystasz).

+0

Bardzo wszechstronny. Dzięki. – Snowcrash

+0

Logowanie tego pliku jest inne, chyba że zostało zmienione od czasu jego przeczytania ("AUDIO_OUTPUT_FLAG_FAST odrzucone przez klienta, transfer% d, śledzenie% u Hz, wyjście% u Hz"). Prosty komunikat "AUDIO_OUTPUT_FLAG_FAST odrzucony przez klienta" wydaje się być czymś innym (co wciąż próbuję wyśledzić): https://android.googlesource.com/platform/frameworks/av/+/android-4.2.2_r1/ media/libmedia/AudioTrack.cpp # 773 –

+0

(Tak, zdecydowanie * może * spowodować ten błąd.) –

1

Spróbuj zmienić częstotliwość próbkowania na "frameworks/base/ frameworks/av/ " hardware/libhardware "location.

domyślna częstotliwość próbkowania to 44100 spróbuj ustawić żądaną częstotliwość próbkowania (twoje pliki audio mają). to zadziała.

okrzyki.

0

Miałem ten sam problem, mój problem został spowodowany, ponieważ zapomniałem o aktywności typu zdefiniowanej w pliku manifestu. takie jak: activity android:name=".NFCReaderActivity"

+0

Nie daje to odpowiedzi na pytanie. Gdy masz już wystarczającą [reputację] (https://stackoverflow.com/help/whats-reputation), będziesz mógł [komentować dowolny wpis] (https://stackoverflow.com/help/privileges/comment); zamiast tego [dostarczaj odpowiedzi, które nie wymagają wyjaśnień od pytającego] (https://meta.stackexchange.com/questions/214173/why-do-i-need-50-reputation-to-comment-what-can- i-do-zamiast). - [Z recenzji] (/ opinia/niskiej jakości-posts/18263452) –