RaspberryPi + Pocketsphinx + ps3eye Error: Failed to open audio device
nur pocketsphinx installiert auf meinem raspberry pi. Denke, ich werde verrückt, aber nicht sicher, ob ich das richtige Gerät.
Wann immer ich laufen:
src/Programme/pocketsphinx_continuous -adcdev plughw:1,0 -nfft 2048
-samprate 48000
Bekomme ich die folgende:
root@scarlettpi:/usr/install/pocketsphinx-0.8#
src/Programme/pocketsphinx_continuous -adcdev plughw:1,0 -nfft 2048
-samprate 48000 INFO: cmd_ln.c(691): Parsing command line: /usr/install/pocketsphinx-0.8/src/Programme/.libs/lt-pocketsphinx_continuous
\ -adcdev plughw:1,0 \ -nfft 2048 \ -samprate 48000Aktuelle Konfiguration: [NAME] [DEFLT] [WERT]
-adcdev plughw:1,0
-agc keine keine
-agcthresh 2.0 2.000000 e+00
-alpha 0.97 9.700000 e-01
-argfile
-ascale 20.0 2.000000 e+01
-aw 1 1
-backtrace Nein Nein
-Strahl 1e-48 1.000000 e-48
-bestpath ja ja
-bestpathlw 9.5 9.500000 e+00
-bghist Nein Nein
-ceplen 13 13
-cmn aktuellen
-cmninit 8.0 8.0
-compallsen Nein Nein
-debug 0
-dict
-dictcase Nein Nein
-dither Nein Nein
-doublebw Nein Nein
-ds 1 1
-fdict
-feat 1s_c_d_dd 1s_c_d_dd
-featparams
-fillprob 1e-8 1.000000 e-08
-frate 100 100
-fsg
-fsgusealtpron ja ja
-fsgusefiller ja ja
-fwdflat ja ja
-fwdflatbeam 1e-64 1.000000 e-64
-fwdflatefwid 4 4
-fwdflatlw 8.5 8.500000 e+00
-fwdflatsfwin 25 25
-fwdflatwbeam 7e-29 7.000000 e-29
-fwdtree ja ja
-hmm
-infile
-input_endian wenig wenig
-jsgf
-kdmaxbbi -1 -1
-kdmaxdepth 0 0
-kdtree
-latsize 5000 5000
-lda
-ldadim 0 0
-lextreedump 0 0
-Heber 0 0
-lm
-lmctl
-lmname Standard Standard
-logbase 1.0001 1.000100 e+00
-logfn
-logspec Nein Nein
-lowerf 133.33334 1.333333 e+02
-lpbeam 1e-40 1.000000 e-40
-lponlybeam 7e-29 7.000000 e-29
-lw 6.5 6.500000 e+00
-maxhmmpf -1 -1
-maxnewoov 20 20
-maxwpf -1 -1
-mdef
-meinst
-mfclogdir
-min_endfr 0 0
-mixw
-mixwfloor 0.0000001 1.000000 e-07
-mllr
-mmap ja ja
-ncep 13 13
-nfft 512 2048
-nfilt 40 40
-nwpen 1.0 1.000000 e+00
-pbeam 1e-48 1.000000 e-48
-pip 1.0 1.000000 e+00
-pl_beam 1e-10 1.000000 e-10
-pl_pbeam 1e-5 1.000000 e-05
-pl_window 0 0
-rawlogdir
-remove_dc Nein Nein
-round_filters ja ja
-samprate 16000 4.800000 e+04
-Samen -1 -1
-sendump
-senlogdir
-senmgau
-silprob 0.005 5.000000 e-03
-smoothspec Nein Nein
-svspec
-Nein Nein
-tmat
-tmatfloor 0.0001 1.000000 e-04
-topn 4 4
-topn_beam 0 0
-toprule
-Transformation von legacy-legacy
-unit_area ja ja
-upperf 6855.4976 6.855498 e+03
-usewdphones Nein Nein
-uw 1.0 1.000000 e+00
-var
-varfloor 0.0001 1.000000 e-04
-varnorm Nein Nein
-verbose Nein Nein
-warp_params
-warp_type inverse_linear inverse_linear
-wbeam 7e-29 7.000000 e-29
-wip 0.65 6.500000 e-01
-wlen 0.025625 2.562500 e-02INFO: cmd_ln.c(691): Parsing command line: \ -nfilt 20 \ -lowerf 1 \
-upperf 4000 \ -wlen 0.025 \ -Transformation dct - \ - round_filters keine \
-remove_dc ja \ -svspec 0-12/13-25/26-38 \ -feat 1s_c_d_dd \ -agc
none \ -cmn current \ -cmninit 56,-3,1 \ -varnorm keineAktuelle Konfiguration: [NAME] [DEFLT] [WERT]
-agc keine keine
-agcthresh 2.0 2.000000 e+00
-alpha 0.97 9.700000 e-01
-ceplen 13 13
-cmn aktuellen
-cmninit 8.0 56,-3,1
-dither Nein Nein
-doublebw Nein Nein
-feat 1s_c_d_dd 1s_c_d_dd
-frate 100 100
-input_endian wenig wenig
-lda
-ldadim 0 0
-Heber 0 0
-logspec Nein Nein
-lowerf 133.33334 1.000000 e+00
-ncep 13 13
-nfft 512 2048
-nfilt 40 20
-remove_dc Nein ja
-round_filters ja Nein
-samprate 16000 4.800000 e+04
-Samen -1 -1
-smoothspec Nein Nein
-svspec 0-12/13-25/26-38
-Transformation von legacy-dct
-unit_area ja ja
-upperf 6855.4976 4.000000 e+03
-varnorm Nein Nein
-verbose Nein Nein
-warp_params
-warp_type inverse_linear inverse_linear
-wlen 0.025625 2.500000 e-02INFO: acmod.c(246): Analysierte Modell-spezifische feature-Parameter aus
/usr/local/share/pocketsphinx/Modell/hmm/de_de/hub4wsj_sc_8k/feat.params
INFO: feat.c(713): Initialisierung der feature-stream zu geben: '1s_c_d_dd',
ceplen=13, CMN='aktuell', VARNORM='no', AGC= "none" INFO: cmn.c(142):
bedeuten[0]= 12.00, bedeuten[1..12]= 0.0 INFO: acmod.c(167): Mit subvector
Spezifikation 0-12/13-25/26-38 INFO: mdef.c(517): Lesung Modell
definition:
/usr/local/share/pocketsphinx/Modell/hmm/de_de/hub4wsj_sc_8k/mdef INFO:
mdef.c(528): Gefunden (byte-order mark BMDF, vorausgesetzt, dies ist eine binäre
mdef Datei-INFO: bin_mdef.c(336): das Lesen von Binär-Modell-definition:
/usr/local/share/pocketsphinx/Modell/hmm/de_de/hub4wsj_sc_8k/mdef INFO:
bin_mdef.c(513): 50 CI-Telefon, 143047 CD-Telefon, 3 emitstate/Handy 150
CI-sen, 5150 Sen, 27135 Sen-Seq INFO: tmat.c(205): Lesen, HMM
der übergang Wahrscheinlichkeit von Matrizen:
/usr/local/share/pocketsphinx/Modell/hmm/de_de/hub4wsj_sc_8k/transition_matrices
INFO: acmod.c(121): der Versuch, SCHMM Berechnungsmodul INFO:
ms_gauden.c(198): Lesen-Mischung GAUSS-parameter:
/usr/local/share/pocketsphinx/Modell/hmm/de_de/hub4wsj_sc_8k/bedeutet
INFO: ms_gauden.c(292): 1 Codebuch, 3-Funktion, Größe: INFO:
ms_gauden.c(294): 256x13 INFO: ms_gauden.c(294): 256x13 INFO:
ms_gauden.c(294): 256x13 INFO: ms_gauden.c(198): Lesen-Mischung
GAUSS-parameter:
/usr/local/share/pocketsphinx/Modell/hmm/de_de/hub4wsj_sc_8k/Abweichungen
INFO: ms_gauden.c(292): 1 Codebuch, 3-Funktion, Größe: INFO:
ms_gauden.c(294): 256x13 INFO: ms_gauden.c(294): 256x13 INFO:
ms_gauden.c(294): 256x13 INFO: ms_gauden.c(354): 0 Varianz-Werte
Platt INFO: s2_semi_mgau.c(903): Laden von senones aus dump-Datei
/usr/local/share/pocketsphinx/Modell/hmm/de_de/hub4wsj_sc_8k/sendump
INFO: s2_semi_mgau.c(927): BEGINNEN-DATEI BESCHREIBUNG FORMAT INFO:
s2_semi_mgau.c(1022): die Verwendung von memory-mapped I/O für senones INFO:
s2_semi_mgau.c(1296): Maximale top-N: 4 Top N-Strahlen: 0 0 0 INFO:
dict.c(317): Zuordnung 137543 * 20 Byte (2686 KiB) für word-Einträge
INFO: dict.c(332): Lesen Hauptwörterbuch:
/usr/local/share/pocketsphinx/Modell/lm/de_de/cmu07a.dic INFO:
dict.c(211): Reserviert 1010 KiB für Streicher, 1664 KByte für Telefone-INFO:
dict.c(335): 133436 Worte Lesen INFO: dict.c(341): Lesen Füller
Wörterbuch:
/usr/local/share/pocketsphinx/Modell/hmm/de_de/hub4wsj_sc_8k/noisedict
INFO: dict.c(211): Reserviert 0 KiB für Streicher, 0 KiB für Telefone-INFO:
dict.c(344): 11 Worte Lesen INFO: dict2pid.c(396): Bau-PID-Tabellen
für dictionary-INFO: dict2pid.c(404): Vergabe von 50^3 * 2 bytes (244
KiB) für word-initial triphones INFO: dict2pid.c(131): Reserviert 30200
bytes (29 KiB) für word-final triphones INFO: dict2pid.c(195):
Reserviert 30200 bytes (29 KiB) für Einzel-phone word triphones INFO:
ngram_model_arpa.c(77): Nein \data\ Marke in LM Datei-INFO:
ngram_model_dmp.c(142): Wird die Verwendung memory-mapped I/O für LM Datei-INFO:
ngram_model_dmp.c(196): ngrams 1=5001, 2=436879, 3=418286 INFO:
ngram_model_dmp.c(242): 5001 = LM.unigrams(+trailer) INFO Lesen:
ngram_model_dmp.c(288): 436879 = LM.bigrame(+trailer) INFO Lesen:
ngram_model_dmp.c(314): 418286 = LM.Trigramme Lesen INFO:
ngram_model_dmp.c(339): 37293 = LM.prob2 Einträge Lesen INFO:
ngram_model_dmp.c(359): 14370 = LM.bo_wt2 Einträge Lesen INFO:
ngram_model_dmp.c(379): 36094 = LM.prob3 Einträge Lesen INFO:
ngram_model_dmp.c(407): 854 = LM.tseg_base Einträge Lesen INFO:
ngram_model_dmp.c(463): 5001 = ascii-Wort-strings Lesen INFO:
ngram_search_fwdtree.c(99): 788 einzigartigen ersten diphones INFO:
ngram_search_fwdtree.c(147): 0 root, 0 non-root-Kanäle, 60
single-Telefon Wörtern INFO: ngram_search_fwdtree.c(186): Erstellen Suche
tree INFO: ngram_search_fwdtree.c(191): vorher: 0-root, 0 non-root
Kanäle, 60 single-Telefon Wörtern INFO: ngram_search_fwdtree.c(326):
nach: max nonroot-chan erhöht 13428 INFO:
ngram_search_fwdtree.c(338): nach: 457 root, 13300 nicht-root-Kanäle,
26 single-Telefon Wörtern INFO: ngram_search_fwdflat.c(156): fwdflat:
min_ef_width = 4, max_sf_win = 25 INFO: kontinuierlich.c(371):
/usr/install/pocketsphinx-0.8/src/Programme/.libs/lt-pocketsphinx_continuous
ZUSAMMENGESTELLT AM: Jul 21 2013, AN: 14:34:06Mixer load failed: Invalid argument FATAL_ERROR: "continuous.c", line
246: Failed to open audio device
Ich bin mit einem ps3eye derzeit. Wenn ich mit einem einfachen:
arecord-D plughw:1,0 -d 5 -f -f cd -t wav ~/test.wav
Alles funktioniert einwandfrei ( Überprüft dies durch anschließen Raspberrypi an TV über HDMI und läuft aplay ~/test.wav )
Was mache ich falsch, Jungs?
Information, die Sie benötigen ( basierend auf andere Beiträge, die ich gesehen habe ):
root@scarlettpi:/usr/install/pocketsphinx-0.8# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: ALSA [bcm2835 ALSA], device 0: bcm2835 ALSA [bcm2835 ALSA]
Subdevices: 8/8
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
Subdevice #4: subdevice #4
Subdevice #5: subdevice #5
Subdevice #6: subdevice #6
Subdevice #7: subdevice #7
root@scarlettpi:/usr/install/pocketsphinx-0.8#
root@scarlettpi:/usr/install/pocketsphinx-0.8# aplay -L
null
Discard all samples (playback) or generate zero samples (capture)
pulse
PulseAudio Sound Server
sysdefault:CARD=ALSA
bcm2835 ALSA, bcm2835 ALSA
Default Audio Device
root@scarlettpi:/usr/install/pocketsphinx-0.8#
root@scarlettpi:/usr/install/pocketsphinx-0.8# dpkg -l | grep "alsa"
ii alsa-base 1.0.25+3~deb7u1 all ALSA driver configuration files
ii alsa-firmware-loaders 1.0.25-2 armhf ALSA software loaders for specific hardware
ii alsa-oss 1.0.25-1 armhf ALSA wrapper for OSS applications
ii alsa-tools 1.0.25-2 armhf Console based ALSA utilities for specific hardware
ii alsa-utils 1.0.25-4 armhf Utilities for configuring and using ALSA
ii alsaplayer-alsa 0.99.80-5.1 armhf PCM player designed for ALSA (ALSA output module)
ii alsaplayer-common 0.99.80-5.1 armhf PCM player designed for ALSA (common files)
ii alsaplayer-gtk 0.99.80-5.1 armhf PCM player designed for ALSA (GTK+ version)
ii gstreamer0.10-alsa:armhf 0.10.36-1.1 armhf GStreamer plugin for ALSA
ii libsox-fmt-alsa 14.4.0-3 armhf SoX alsa format I/O library
root@scarlettpi:/usr/install/pocketsphinx-0.8#
root@scarlettpi:/usr/install/pocketsphinx-0.8# dpkg -l | grep pulseaudio
ii gstreamer0.10-pulseaudio:armhf 0.10.31-3+nmu1 armhf GStreamer plugin for PulseAudio
root@scarlettpi:/usr/install/pocketsphinx-0.8#
Auch in Bezug auf die Installation von pocket sphinx habe ich Folgendes:
# uninstall pulse audio if its already installed
apt-get remove pulseaudio -y
aptitude purge pulseaudio -y
# sphinxbase install
apt-get install bison -y
cd /usr/install
wget http://downloads.sourceforge.net/project/cmusphinx/sphinxbase/0.8/sphinxbase-0.8.tar.gz
tar -xvf sphinxbase-0.8.tar.gz
cd sphinxbase-0.8
./configure
make
make install
cd -
# pocketsphinx installwget http://sourceforge.net/projects/cmusphinx/files/pocketsphinx/0.8/pocketsphinx-0.8.tar.gz
tar -xvf pocketsphinx-0.8.tar.gz
cd pocketsphinx-0.8
./configure
make
make install
Irgendwelche Ideen oder Ratschläge in die richtige Richtung wäre sehr hilfreich.
Dank,
Malcolm Jones
EDIT:
Vergessen, um diese Informationen als gut:
root@scarlettpi:/usr/install/pocketsphinx-0.8# arecord -L
null
Discard all samples (playback) or generate zero samples (capture)
pulse
PulseAudio Sound Server
sysdefault:CARD=CameraB409241
USB Camera-B4.09.24.1, USB Audio
Default Audio Device
front:CARD=CameraB409241,DEV=0
USB Camera-B4.09.24.1, USB Audio
Front speakers
surround40:CARD=CameraB409241,DEV=0
USB Camera-B4.09.24.1, USB Audio
4.0 Surround output to Front and Rear speakers
surround41:CARD=CameraB409241,DEV=0
USB Camera-B4.09.24.1, USB Audio
4.1 Surround output to Front, Rear and Subwoofer speakers
surround50:CARD=CameraB409241,DEV=0
USB Camera-B4.09.24.1, USB Audio
5.0 Surround output to Front, Center and Rear speakers
surround51:CARD=CameraB409241,DEV=0
USB Camera-B4.09.24.1, USB Audio
5.1 Surround output to Front, Center, Rear and Subwoofer speakers
surround71:CARD=CameraB409241,DEV=0
USB Camera-B4.09.24.1, USB Audio
7.1 Surround output to Front, Center, Side, Rear and Woofer speakers
iec958:CARD=CameraB409241,DEV=0
USB Camera-B4.09.24.1, USB Audio
IEC958 (S/PDIF) Digital Audio Output
root@scarlettpi:/usr/install/pocketsphinx-0.8#
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nahm mich eine Weile, mit etwas Hilfe von ein paar Quellen ( Sie werden in meinem Antwort ) und einige hilfreiche Tipps aus nikolay-shmyrev, kam ich endlich mit einer Antwort, die für mich gearbeitet.
Grundannahmen:
Ausführung dieser Befehle als pi-user ( vorher war ich mit Ihnen als root, das war falsch )
Bin ich über die permanente Anerkennung, und ich war NUR auf der Suche nach der Fähigkeit zu "wake-up" - mein raspberry pi. Nach dem aufwachen, ich habe andere Pläne, wie Sie miteinander interagieren sollen.
Mein setup:
Canakit RaspberryPi
HDMI-Kabel an meinen Toshiba-TV
usb-wifi-dongle
Playstation 3 Eye für die Spracherkennung
Voran. Ich lief die folgenden Befehle auf meinem RaspberryPi zu bekommen PulseAudio + pocketsphinx zusammen arbeiten w/meine Playstation 3 Eye. ( Wenn Sie sehen, alle Orte, die für Verbesserungen, lassen Sie es mich bitte wissen )
Installieren von pulse-audio - /development-Pakete
Setting up ALSA
Pro Anweisungen von http://forums.debian.net/viewtopic.php?f=16&t=12497
Stellen Sie sicher, dass Ihre Kamera-Gerät lädt auf der boot
Einrichten der PulseAudio-daemon für Netzwerk-verbindungen
Ändern der Standard-sound-Treiber von alsa auf pulseaudio
Hinzufügen
pi
Nutzer der pulse-access GruppeStellen Sie sicher, dass Sie
/usr/local/lib
Pfad zur BibliothekInstallieren base PocketSphinx
Überprüfen Sie, ob Impuls-daemon läuft
Schließlich, laufen, Sphinx
WICHTIGER HINWEIS
SIE MÜSSEN DEM BENUTZER PI UND DER PULSEAUDIO-SERVER AUSGEFÜHRT WERDEN MUSS
Assumimg bestehenden corpus-Datei .jsgf-Datei .dic-und .lm-Dateien (mit lmtool)
Referenzen:
Ich Plane am hinzufügen von mehr details dahinter, warum ich verwendete bestimmte Einstellung werden Konfigurationen in einem blog-post Schreibe ich auf meinem home-automation-Projekt, aber dachte, ich würde teilen, was ich getan habe, so weit incase jemand anderes steckte wie ich und möchte, um vorwärts zu bewegen mit dem, was Sie arbeiten. Hoffe, das jemand hilft. Vielen Dank für die Beratung-Jungs.
Wenn Sie nicht wissen, wie alsa konfigurieren, sollten Sie besser pulseaudio, darüber hinaus ist es auf Ihrem system konfiguriert sind. Sie sollten besser kompilieren sphinxbase mit Unterstützung für pulseaudio. Für weitere Informationen Lesen Sie die FAQ:
http://cmusphinx.sourceforge.net/wiki/faq#qfailed_to_open_audio_device_dev_dsp_no_such_file_or_directory
Dies ist eine wichtige Nachricht, es sagt, dass deine alsa-Konfiguration nicht unterstützt level mixer. Wenn Sie nicht wissen, wie man hinzufügen-mixer-alsa-Konfiguration verwenden pulseaudio
Dies ist eine schlechte Idee, auch die reduzieren die Geschwindigkeit und Präzision auf Ihrem Gerät. Dein Prozessor hat eine FPU, damit Sie sollte nicht mit festen Punkt-Modus.
hatte ich das gleiche problem nicht open audio device.
http://cmusphinx.sourceforge.net/wiki/faq#qfailed_to_open_audio_device_dev_dsp_no_such_file_or_directory
Ich es beheben kaufen, installieren libpulse-dev-Paket installieren Sie dann sphinxbase , pocketsphinx.