Sprawdzone metody dotyczące dźwięku
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Na tej stronie znajdziesz zalecenia dotyczące przekazywania danych o mowie do interfejsu Google Assistant API. Opracowaliśmy te wskazówki z myślą o większej skuteczności i dokładności, a także z rozsądnym czasem odpowiedzi.
Wstępne przetwarzanie dźwięku
Najlepiej jest, gdy dźwięk jest jak najczystszy, a używany do tego mikrofon wysokiej jakości. Jednak zastosowanie przetwarzania sygnału redukcji szumów przed przesłaniem dźwięku do usługi zazwyczaj zmniejsza dokładność rozpoznawania. Usługa została zaprojektowana w celu obsługi hałaśliwych dźwięków.
Aby uzyskać najlepsze rezultaty:
- Ustaw mikrofon jak najbliżej użytkownika, szczególnie wtedy, gdy w tle występuje szum.
- Unikaj tworzenia klipów audio.
- Nie używaj automatycznej kontroli wzmocnienia (AGC).
- Całe przetwarzanie redukcji szumów powinno być wyłączone.
Idealnie:
- Poziom dźwięku należy skalibrować tak, aby sygnał wejściowy nie był zacinany, a szczytowe poziomy głośności mowy wynoszą około -20–10 dBFS.
- Urządzenie powinno wykazywać w przybliżeniu „płaską” amplitudę w porównaniu z częstotliwością (+-3 dB w zakresie 100–8000 Hz).
- Całkowite zniekształcenie harmoniczne powinno być mniejsze niż 1% w zakresie od 100 Hz do 8000 Hz przy poziomie wejściowego 90 dB SPL.
Częstotliwość próbkowania
Jeśli to możliwe, ustaw częstotliwość próbkowania ze źródła dźwięku na 16 000 Hz. W przeciwnym razie ustaw parametr sample_rate_hertz
tak, aby pasował do natywnej częstotliwości próbkowania źródła dźwięku (zamiast ponownego próbkowania).
Rozmiar ramki
Asystent Google rozpoznaje dźwięk na żywo, gdy jest rejestrowany przez mikrofon.
Strumień audio musi być podzielony na klatki i wysyłany w kolejnych wiadomościach AssistRequest
. Dopuszczalny jest dowolny rozmiar klatki. Większe klatki są wydajniejsze, ale zwiększają opóźnienie. Zalecany rozmiar klatki o szerokości 100 milisekund to dobry kompromis między opóźnieniem a wydajnością.
O ile nie stwierdzono inaczej, treść tej strony jest objęta licencją Creative Commons – uznanie autorstwa 4.0, a fragmenty kodu są dostępne na licencji Apache 2.0. Szczegółowe informacje na ten temat zawierają zasady dotyczące witryny Google Developers. Java jest zastrzeżonym znakiem towarowym firmy Oracle i jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2025-07-26 UTC.
[null,null,["Ostatnia aktualizacja: 2025-07-26 UTC."],[[["\u003cp\u003eThis page provides recommendations for submitting speech data to the Google Assistant API for optimal performance.\u003c/p\u003e\n"],["\u003cp\u003eFor best results, use a high-quality microphone, position it close to the user, avoid audio clipping and noise reduction processing, and disable automatic gain control.\u003c/p\u003e\n"],["\u003cp\u003eIdeally, calibrate audio levels to prevent clipping, maintain a flat frequency response, and minimize harmonic distortion.\u003c/p\u003e\n"],["\u003cp\u003eSet the audio source sampling rate to 16000 Hz if possible, or match the native rate, and use a frame size of around 100 milliseconds for a balance between latency and efficiency.\u003c/p\u003e\n"]]],[],null,["# Best Practices for Audio\n\nThis page contains recommendations on how to provide speech data to the\nGoogle Assistant API. These guidelines are designed for greater efficiency\nand accuracy as well as reasonable response times from the service.\n\nAudio pre-processing\n--------------------\n\nIt's best to provide audio that is as clean as possible by using a good quality\nand well-positioned microphone. However, applying noise-reduction signal\nprocessing to the audio before sending it to the service typically reduces\nrecognition accuracy. The service is designed to handle noisy audio.\n\nFor best results:\n\n- Position the microphone as close to the user as possible, particularly when background noise is present.\n- Avoid audio clipping.\n- Do not use automatic gain control (AGC).\n- All noise reduction processing should be disabled.\n\nIdeally:\n\n- The audio level should be calibrated so that the input signal does not clip, and peak speech audio levels reach approximately -20 to -10 dBFS.\n- The device should exhibit approximately \"flat\" amplitude versus frequency characteristics (+- 3 dB 100 Hz to 8000 Hz).\n- Total harmonic distortion should be less than 1% from 100 Hz to 8000 Hz at 90 dB SPL input level.\n\nSampling rate\n-------------\n\nIf possible, set the sampling rate of the audio source to 16000 Hz. Otherwise,\nset the [`sample_rate_hertz`](/assistant/sdk/reference/rpc/google.assistant.embedded.v1alpha2#google.assistant.embedded.v1alpha2.AudioInConfig) to match the native sample rate of the audio source (instead\nof re-sampling).\n\nFrame size\n----------\n\nThe Google Assistant recognizes live audio as it is captured from a microphone.\nThe audio stream must be split into frames and sent in consecutive\n`AssistRequest` messages. Any frame size is acceptable. Larger frames are more\nefficient, but add latency. A 100-millisecond frame size is recommended as a\ngood tradeoff between latency and efficiency."]]