Wątek przeniesiony 2023-10-02 16:37 z JavaScript przez Riddle.

Dźwięk nagrany z mikrofonu zawiera szum

0

Cześć.
W Vue.js korzystam z biblioteki vue-audio-recorder do nagrania dźwięku z mikrofonu.
Nagrany dźwięk jest dość zniekształcony i są straszne szumy. Na pewno nie jest to wina mikrofonu.
Co może być przyczyną?

0

Czy problem pojawia się również na innym urządzeniu i systemie operacyjnym?

0

Tak, sprawdzane na kilku urządzeniach z linux i windows

0

Zacznij od sprawdzenia poziomów sygnałów nagrywania w mikserze audio. Potem zobacz jakie parametry używasz podczas nagrywania (częstotliwość próbkowania, głębia bitowa).
Najlepiej pokaż kod, który inicjuje proces nagrywania.

1

Jakiś czas temu utworzyłem taką apkę, która korzysta z "gołego" WebAudio, bez żadnego Vue czy Angular: https://github.com/andrzejlisek/AudioSpectrum

Ten sam projekt online: https://andrzejlisek.github.io/AudioSpectrum/spectrum.html

Co prawda, ta aplikacja nie służy do nagrywania i odtwarzania dźwięku, więc nie jest możliwe odtworzenie tego, co rejestruje mikrofon, ale można "zobaczyć" ewentualny szum:

https://andrzejlisek.github.io/AudioSpectrum/spectrum.html

Zobaczysz cały rejestrowany dźwięk, bo właśnie po to jest napisana ta aplikacja.

W ustawieniach możliwe jest właczenie i wyłączenie tych parametrów: "echoCancellation", "noiseSuppression", "autoGainControl". Może one mają wpływ na rejestrowanie dźwięku w Twojej apce? Nie wiem, jaka jest wartość domyślna w przypadku braku podania tych parametrów, ale najlepiej zacząć od "false", a do tego parametr "channelCount" ustawiony na 2.

Są to parametry boolowskie samego rejestrowania dźwięku poprzez WebAudio.

A tutaj https://goldwave.com/editor/ darmowy prosty edytor dźwięku pracujący w przeglądarce, który oczywiście może rejestrować i odtwarzać dźwięk. Nic o nim nie wiem oprócz tego, ze jest i ma jakieś funkcje, ale można rozstrzygnąć, czy Twój problem jest w sprzęcie i OS, czy w twojej apce z Vue.

0

@4w0rX4t4X: jeśli chodzi o wywołanie nagrywania to po prostu według dokumentacji tej paczki której używam

                upload-url="YOUR_API_URL"
                :attempts="1"
                :time="4"
                :show-upload-button="false"
                :after-recording="callback"/>

1 użytkowników online, w tym zalogowanych: 0, gości: 1