Błędy z espeak

11

Podczas używania espeak pojawia się błąd. Dźwięk wychodzi z gniazda słuchawkowego telefonu, ale wszystkie te rzeczy są zapisywane w wierszu poleceń. Zainstalowałem espeak i alsa-utils. Masz pomysł, jak naprawić te błędy?

[kevin@raspberrypi ~]$ sudo espeak "hello"
[sudo] password for kevin: 
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.front
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.rear
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.center_lfe
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.side
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround40
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround41
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround50
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround51
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.surround71
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.iec958
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.iec958
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.iec958
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.hdmi
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.modem
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM cards.pcm.phoneline
ALSA lib pcm_dmix.c:957:(snd_pcm_dmix_open) The dmix plugin supports only playback stream
ALSA lib pcm_direct.c:877:(snd1_pcm_direct_initialize_slave) slave plugin does not support mmap interleaved or mmap noninterleaved access
ALSA lib pcm_dmix.c:1030:(snd_pcm_dmix_open) unable to initialize slave
Cannot connect to server socket err = No such file or directory
Cannot connect to server request channel
jack server is not running or cannot be started
Kevin
źródło
Jaki jest problem? Mówisz, że to działa?
Jivings
Tak, mam dźwięku, jednak zazwyczaj jest nie normalne mieć tych wszystkich ostrzeżeń i błędów drukowanych do linii poleceń. Chciałbym to naprawić.
kevin
Otrzymuję te same komunikaty o błędach, ale dźwięk nie jest normalny. Na początku każdego zdania zawsze występuje opóźnienie. Czy ktoś może pomóc?
Co masz na myśli mówiąc „nie normalny”?
kevin

Odpowiedzi:

4

Oto krótkie rozwiązanie:

sudo espeak "hello" 2>/dev/null

Oto moje wyjaśnienie:

Rezultat, który widzisz, jest normalny.

Jack jest serwerem audio, a błędy zgłaszają, że Jack nie jest zainstalowany. Nie ma w tym nic złego, espeakpo prostu użyje innego silnika audio, takiego jak ALSAlub Pulse. W twoim przypadku wygląda na to, że używa ALSA.

Powyższe polecenie po prostu ukryje przed tobą dane wyjściowe.

Jivings
źródło
Czy to nie znaczy, że esp jest zbyt gadatliwy i źle go drukuje, aby stderr? Jeśli tak naprawdę nie jest to błąd.
Ehtesh Choudhury
@Shurane Tak to jest.
Jivings,
Czy można uzyskać wyjście audio do HDMI, a nie do gniazda słuchawkowego?
avra
1
@avra Powinno tak się zdarzyć, jeśli urządzenie HDMI obsługuje tę funkcję. Jeśli nie, to powinno być coś w szczegółowej dokumentacji.
Jivings,
Tak, w końcu to działa. Mój błąd.
avra
3

Możesz pozbyć się irytujących wiadomości o Jacku, uruchamiając serwer Jacka za pomocą następującego wiersza poleceń:

jackd -r -m -p 8 -d dummy

Włożyłem to do siebie ~/.config/autostart/jackd.desktop

[Desktop Entry]

Type=Application

Name=jackd

Exec=jackd -p 8 -r -m -d dummy > /dev/null 2>&1

StartupNotify=false
użytkownik13029
źródło
0

Okazuje się, że ruiny pulseaudio ALSA. Dla mnie espeak pracował tylko z „sudo”. Po apt-get --purge usuń pulseaudio, wszystko wróciło do normy.

Chris
źródło