Korzystam z serwera CentOS z włączoną obsługą VNC, a niektóre usługi wymagają mikrofonu do poprawnego działania, ale nie trzeba go używać do nagrywania, tylko dostępne urządzenie mikrofonowe. Zastanawiałem się więc, czy mogę stworzyć wirtualne urządzenie nagrywające, które mogłoby służyć jako mikrofon, ale nie musi ono wprowadzać żadnego dźwięku. Używam narzędzi alsa, ale robię modprobe sound-aloop
, że operacja jest niedozwolona.
13
modinfo snd-aloop
wypisuje informacje związane z modułem, podczas gdymodprobe snd-aloop
nie działa, dając ten komunikat:Error inserting snd_aloop (/lib/modules/2.6.32-042stab079.5/kernel/sound/ drivers/snd-aloop.ko): Operation not permitted
zbudowałem odpowiedni sterownik alsa dla mojego jądra, zainstalowałem i skopiowałem moduły do / lib / modules /uname -r
/ kernel / sound / drivers / i otrzymałem powyższą wiadomość po wypróbowaniumodprobe
.Same wiadomość dlasnd-page-alloc.ko
,snd-timer.ko
asnd-pcm.ko
także. Nie mam pojęcia, co dalej robić, ale dziękuję za pomoc!modprobe snd-dummy
), masz zarówno wyjściowe, jak i fikcyjne dane wyjściowe. Te linki mogą pomóc: raspberrypi.org/forums/viewtopic.php?&t=42285 , alsa-project.org/main/index.php/…modprobe snd-dummy
i działało! Cała sprawa dotyczyła typu wirtualizacji, aby działało, musisz mieć uprawnienia do ładowania własnych modułów, a OpenVZ na to nie pozwalaOdpowiedzi:
Świetna sztuczka, którą możesz zrobić za pomocą PulseAudio : przekieruj wyjście audio komputera na wejście mikrofonu, aby każda aplikacja obsługująca nagrywanie z mikrofonu otrzymała wyjście audio. Mam nadzieję, że to załatwi sprawę. Wykorzystuje przede wszystkim wtyczkę ALSA do Audacity Nie musisz nic odtwarzać, jeśli chcesz, ale powinien stworzyć wirtualny mikrofon, ale dodam też elementy do odtwarzania, aby inni mogli się z nimi zapoznać.
Musiałem to zrobić, ponieważ testowałem w pracy coś, co wymagało połączenia serwera Asterisk z telefonem programowym działającym na moim Linux-ie i chciałem nagrać komunikat głosowy, a następnie się rozłączyć. Ten komputer nie miał zainstalowanego mikrofonu, więc zacząłem szukać sposobu na sfałszowanie wejścia mikrofonu i zamiast tego nagrać MP3 lub coś w tym rodzaju.
Pobierz tutaj [git clone http://anongit.freedesktop.org/git/pulseaudio/pulseaudio.git]
Jeśli twój system używa PulseAudio (każda ostatnia dystrybucja Fedory i Ubuntu), wykonaj następujące czynności:
1) Otwórz PulseAudio Volume Control
Jest to pavucontrol w linii poleceń, aw Fedorze jest dostarczane przez pakiet pavucontrol.
Przejdź do zakładki „Urządzenia wejściowe” i wybierz „Pokaż: Monitory” w dolnej części okna. Jeśli komputer aktualnie odtwarza dźwięk, powinien zostać wyświetlony pasek pokazujący głośność wyjścia:
2) Uruchom aplikację rejestrującą dźwięk, przejdź do karty „Nagrywanie” i sprawdź, czy Twoja aplikacja znajduje się na liście.
Na tym zrzucie ekranu uruchamiam Audacity i nagrywam dźwięk.
3) Kliknij przycisk urządzenia wejściowego („ALSA Capture from”) i wybierz „Monitor wewnętrznego dźwięku analogowego stereo”)
I to tyle. Jeśli na karcie Nagrywanie widać paski głośności, oznacza to, że prawdopodobnie działa, a aplikacja do nagrywania nagrywa teraz dźwięk.
Oto pełny zrzut ekranu z mojego komputera
play audiodump.wav
(konwersja WMA-WAV w Windows XP Welcome Music) w terminalu, uruchomiona regulacja głośności PulseAudio i nagrywanie Audacity z mikrofonu.Wyjście audio na wejście mikrofonowe
źródło