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ą?
Czy problem pojawia się również na innym urządzeniu i systemie operacyjnym?
Tak, sprawdzane na kilku urządzeniach z linux i windows
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.
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.
@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"/>