• Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
MagicMirror Forum
  • Recent
  • Tags
  • Unsolved
  • Solved
  • MagicMirror² Repository
  • Documentation
  • 3rd-Party-Modules
  • Donate
  • Discord
  • Register
  • Login
A New Chapter for MagicMirror: The Community Takes the Lead
Read the statement by Michael Teeuw here.

MM won't run, blank screen with cursor showing after updating

Scheduled Pinned Locked Moved Unsolved Troubleshooting
81 Posts 2 Posters 31.3k Views 2 Watching
Loading More Posts
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • S Offline
    sdetweil @jmartin1009
    last edited by Sep 30, 2019, 1:03 AM

    @jmartin1009 if you give it NO parms, it dumps them out…

    SO, pocketsphinx_continuous 2>somefile

    to get the list of possible parms

    Sam

    How to add modules

    learning how to use browser developers window for css changes

    J S 2 Replies Last reply Sep 30, 2019, 1:05 AM Reply Quote 0
    • J Offline
      jmartin1009 @sdetweil
      last edited by Sep 30, 2019, 1:05 AM

      @sdetweil

      ERROR: "cmd_ln.c", line 682: No arguments given, available options are:
      Arguments list definition:
      [NAME]			[DEFLT]		[DESCR]
      -adcdev					Name of audio device to use for input.
      -agc			none		Automatic gain control for c0 ('max', 'emax', 'noise', or 'none')
      -agcthresh		2.0		Initial threshold for automatic gain control
      -allphone				Perform phoneme decoding with phonetic lm
      -allphone_ci		yes		Perform phoneme decoding with phonetic lm and context-independent units only
      -alpha			0.97		Preemphasis parameter
      -argfile				Argument file giving extra arguments.
      -ascale			20.0		Inverse of acoustic model scale for confidence score calculation
      -aw			1		Inverse weight applied to acoustic scores.
      -backtrace		no		Print results and backtraces to log.
      -beam			1e-48		Beam width applied to every frame in Viterbi search (smaller values mean wider beam)
      -bestpath		yes		Run bestpath (Dijkstra) search over word lattice (3rd pass)
      -bestpathlw		9.5		Language model probability weight for bestpath search
      -ceplen			13		Number of components in the input feature vector
      -cmn			live		Cepstral mean normalization scheme ('live', 'batch', or 'none')
      -cmninit		40,3,-1		Initial values (comma-separated) for cepstral mean when 'live' is used
      -compallsen		no		Compute all senone scores in every frame (can be faster when there are many senones)
      -dict					Main pronunciation dictionary (lexicon) input file
      -dictcase		no		Dictionary is case sensitive (NOTE: case insensitivity applies to ASCII characters only)
      -dither			no		Add 1/2-bit noise
      -doublebw		no		Use double bandwidth filters (same center freq)
      -ds			1		Frame GMM computation downsampling ratio
      -fdict					Noise word pronunciation dictionary input file
      -feat			1s_c_d_dd	Feature stream type, depends on the acoustic model
      -featparams				File containing feature extraction parameters.
      -fillprob		1e-8		Filler word transition probability
      -frate			100		Frame rate
      -fsg					Sphinx format finite state grammar file
      -fsgusealtpron		yes		Add alternate pronunciations to FSG
      -fsgusefiller		yes		Insert filler words at each state.
      -fwdflat		yes		Run forward flat-lexicon search over word lattice (2nd pass)
      -fwdflatbeam		1e-64		Beam width applied to every frame in second-pass flat search
      -fwdflatefwid		4		Minimum number of end frames for a word to be searched in fwdflat search
      -fwdflatlw		8.5		Language model probability weight for flat lexicon (2nd pass) decoding
      -fwdflatsfwin		25		Window of frames in lattice to search for successor words in fwdflat search 
      -fwdflatwbeam		7e-29		Beam width applied to word exits in second-pass flat search
      -fwdtree		yes		Run forward lexicon-tree search (1st pass)
      -hmm					Directory containing acoustic model files.
      -infile					Audio file to transcribe.
      -inmic			no		Transcribe audio from microphone.
      -input_endian		little		Endianness of input data, big or little, ignored if NIST or MS Wav
      -jsgf					JSGF grammar file
      -keyphrase				Keyphrase to spot
      -kws					A file with keyphrases to spot, one per line
      -kws_delay		10		Delay to wait for best detection score
      -kws_plp		1e-1		Phone loop probability for keyphrase spotting
      -kws_threshold		1e-30		Threshold for p(hyp)/p(alternatives) ratio
      -latsize		5000		Initial backpointer table size
      -lda					File containing transformation matrix to be applied to features (single-stream features only)
      -ldadim			0		Dimensionality of output of feature transformation (0 to use entire matrix)
      -lifter			0		Length of sin-curve for liftering, or 0 for no liftering.
      -lm					Word trigram language model input file
      -lmctl					Specify a set of language model
      -lmname					Which language model in -lmctl to use by default
      -logbase		1.0001		Base in which all log-likelihoods calculated
      -logfn					File to write log messages in
      -logspec		no		Write out logspectral files instead of cepstra
      -lowerf			133.33334	Lower edge of filters
      -lpbeam			1e-40		Beam width applied to last phone in words
      -lponlybeam		7e-29		Beam width applied to last phone in single-phone words
      -lw			6.5		Language model probability weight
      -maxhmmpf		30000		Maximum number of active HMMs to maintain at each frame (or -1 for no pruning)
      -maxwpf			-1		Maximum number of distinct word exits at each frame (or -1 for no pruning)
      -mdef					Model definition input file
      -mean					Mixture gaussian means input file
      -mfclogdir				Directory to log feature files to
      -min_endfr		0		Nodes ignored in lattice construction if they persist for fewer than N frames
      -mixw					Senone mixture weights input file (uncompressed)
      -mixwfloor		0.0000001	Senone mixture weights floor (applied to data from -mixw file)
      -mllr					MLLR transformation to apply to means and variances
      -mmap			yes		Use memory-mapped I/O (if possible) for model files
      -ncep			13		Number of cep coefficients
      -nfft			512		Size of FFT
      -nfilt			40		Number of filter banks
      -nwpen			1.0		New word transition penalty
      -pbeam			1e-48		Beam width applied to phone transitions
      -pip			1.0		Phone insertion penalty
      -pl_beam		1e-10		Beam width applied to phone loop search for lookahead
      -pl_pbeam		1e-10		Beam width applied to phone loop transitions for lookahead
      -pl_pip			1.0		Phone insertion penalty for phone loop
      -pl_weight		3.0		Weight for phoneme lookahead penalties
      -pl_window		5		Phoneme lookahead window size, in frames
      -rawlogdir				Directory to log raw audio files to
      -remove_dc		no		Remove DC offset from each frame
      -remove_noise		yes		Remove noise with spectral subtraction in mel-energies
      -remove_silence		yes		Enables VAD, removes silence frames from processing
      -round_filters		yes		Round mel filter frequencies to DFT points
      -samprate		16000		Sampling rate
      -seed			-1		Seed for random number generator; if less than zero, pick our own
      -sendump				Senone dump (compressed mixture weights) input file
      -senlogdir				Directory to log senone score files to
      -senmgau				Senone to codebook mapping input file (usually not needed)
      -silprob		0.005		Silence word transition probability
      -smoothspec		no		Write out cepstral-smoothed logspectral files
      -svspec					Subvector specification (e.g., 24,0-11/25,12-23/26-38 or 0-12/13-25/26-38)
      -time			no		Print word times in file transcription.
      -tmat					HMM state transition matrix input file
      -tmatfloor		0.0001		HMM state transition probability floor (applied to -tmat file)
      -topn			4		Maximum number of top Gaussians to use in scoring.
      -topn_beam		0		Beam width used to determine top-N Gaussians (or a list, per-feature)
      -toprule				Start rule for JSGF (first public rule is default)
      -transform		legacy		Which type of transform to use to calculate cepstra (legacy, dct, or htk)
      -unit_area		yes		Normalize mel filters to unit area
      -upperf			6855.4976	Upper edge of filters
      -uw			1.0		Unigram weight
      -vad_postspeech		50		Num of silence frames to keep after from speech to silence.
      -vad_prespeech		20		Num of speech frames to keep before silence to speech.
      -vad_startspeech	10		Num of speech frames to trigger vad from silence to speech.
      -vad_threshold		3.0		Threshold for decision between noise and silence frames. Log-ratio between signal level and noise level.
      -var					Mixture gaussian variances input file
      -varfloor		0.0001		Mixture gaussian variance floor (applied to data from -var file)
      -varnorm		no		Variance normalize each utterance (only if CMN == current)
      -verbose		no		Show input filenames
      -warp_params				Parameters defining the warping function
      -warp_type		inverse_linear	Warping function type (or shape)
      -wbeam			7e-29		Beam width applied to word exits
      -wip			0.65		Word insertion penalty
      -wlen			0.025625	Hamming window length
      
      INFO: continuous.c(295): Specify '-infile <file.wav>' to recognize from file or '-inmic yes' to recognize from microphone.
      
      
      1 Reply Last reply Reply Quote 0
      • S Offline
        sdetweil @sdetweil
        last edited by Sep 30, 2019, 1:08 AM

        @sdetweil also, in the node_modules/pocketsphinx_continuous/index.js

        show me this

         var pc = spawn('pocketsphinx_continuous', [
            '-adcdev',
            'plughw:' + this.microphone,
            '-inmic',
            'yes',
            '-lm',
            'modules/MMM-voice/' + this.setId + '.lm',
            '-dict',
            'modules/MMM-voice/' + this.setId + '.dic'
        

        also check for the two files in the mmm-voice folder MMM-voice.lm and MMM-voice.dic

        Sam

        How to add modules

        learning how to use browser developers window for css changes

        J 1 Reply Last reply Sep 30, 2019, 1:14 AM Reply Quote 0
        • J Offline
          jmartin1009 @sdetweil
          last edited by Sep 30, 2019, 1:14 AM

          @sdetweil this is the entire index file, didn’t see that anywhere

          const spawn = require('child_process').spawn;
          const EventEmitter = require('events').EventEmitter;
          const util = require('util');
          
          const reservedEvents = {
            close: true,
            error: true,
            data: true,
            end: true,
            readable: true,
            drain: true,
            finish: true,
            pipe: true,
            unpipe: true
          };
          
          function PocketSphinxContinuous(config) {
            this.setId = config.setId;
            this.verbose = config.verbose;
            this.microphone = config.microphone;
            this.autostart = config.autostart;
          
            if (!config.hasOwnProperty('autostart') || config.autostart === true) {
              this.start();
            }
          
            EventEmitter.call(this);
          }
          
          PocketSphinxContinuous.prototype.start = function() {
            if (!this.isListening()) {
              let mic = this.microphone;
              // if name starts with number
              if (typeof this.microphone === 'number' || this.microphone.match(/^\d/)) {
                mic = `plughw:${this.microphone}`;
              }
          
              this._psc = spawn('pocketsphinx_continuous', [
                '-adcdev',
                mic,
                '-inmic',
                'yes',
                '-lm',
                `modules/${this.setId}/${this.setId}.lm`,
                '-dict',
                `modules/${this.setId}/${this.setId}.dic`
              ]);
          
              this._psc.stdout.on('data', data => {
                const output = data.toString().trim();
                if (output) {
                  this.emit('data', output);
                }
                // Also try to emit an event for the actual data, unless of course the
                // event is a reserved one.
                const eventName = output.toLowerCase();
                if (!reservedEvents[eventName]) {
                  this.emit(eventName, output);
                }
              });
          
              this._psc.stderr.on('data', data => {
                const output = data.toString().trim();
                if (this.verbose && output) {
                  this.emit('debug', data);
                }
              });
          
              this._psc.on('close', code => {
                this.emit('error', code);
              });
          
              this._psc.on('error', err => {
                this.emit('error', err);
              });
            }
          };
          
          PocketSphinxContinuous.prototype.stop = function() {
            if (this.isListening()) {
              this._psc.kill();
            }
          };
          
          PocketSphinxContinuous.prototype.isListening = function() {
            return this._psc && !this._psc.killed;
          };
          
          util.inherits(PocketSphinxContinuous, EventEmitter);
          
          module.exports = PocketSphinxContinuous;
          

          also, both of those files are there.

          S 2 Replies Last reply Sep 30, 2019, 1:19 AM Reply Quote 0
          • S Offline
            sdetweil @jmartin1009
            last edited by Sep 30, 2019, 1:19 AM

            @jmartin1009 said in MM won't run, blank screen with cursor showing after updating:
            from your response

            > this._psc = spawn('pocketsphinx_continuous', [
            >       '-adcdev',
            >       mic,
            >       '-inmic',
            >       'yes',
            >       '-lm',
            >       `modules/${this.setId}/${this.setId}.lm`,
            >       '-dict',
            >       `modules/${this.setId}/${this.setId}.dic`
            >     ]);
            > 
            

            so, only the path to the files can be wrong…

            so, change them to (assume u are running as user pi)

             this._psc = spawn('pocketsphinx_continuous', [
                   '-adcdev',
                   mic,
                   '-inmic',
                   'yes',
                   '-lm',
                   `/home/pi/MagicMirror/modules/${this.setId}/${this.setId}.lm`,
                   '-dict',
                   `/home/pi/MagicMirror/modules/${this.setId}/${this.setId}.dic`
                 ]); 
            

            Sam

            How to add modules

            learning how to use browser developers window for css changes

            1 Reply Last reply Reply Quote 0
            • S Offline
              sdetweil @jmartin1009
              last edited by Sep 30, 2019, 1:20 AM

              @jmartin1009 you have the file with my fixes in it… btw

              Sam

              How to add modules

              learning how to use browser developers window for css changes

              J 1 Reply Last reply Sep 30, 2019, 1:27 AM Reply Quote 0
              • J Offline
                jmartin1009 @sdetweil
                last edited by Sep 30, 2019, 1:27 AM

                @sdetweil which file? and i’ll go change those right now

                S 1 Reply Last reply Sep 30, 2019, 1:28 AM Reply Quote 0
                • S Offline
                  sdetweil @jmartin1009
                  last edited by sdetweil Sep 30, 2019, 1:30 AM Sep 30, 2019, 1:28 AM

                  @jmartin1009

                  ~/MagicMirror/modules/MMM-voice/node_modules/pocketsphinx_continuous/index.js

                  same file u just showed me

                  Sam

                  How to add modules

                  learning how to use browser developers window for css changes

                  J 2 Replies Last reply Sep 30, 2019, 1:30 AM Reply Quote 0
                  • J Offline
                    jmartin1009 @sdetweil
                    last edited by Sep 30, 2019, 1:30 AM

                    @sdetweil oh yeah, im going to change the file paths in it right now in the one you sent last.

                    1 Reply Last reply Reply Quote 0
                    • J Offline
                      jmartin1009 @sdetweil
                      last edited by Sep 30, 2019, 1:33 AM

                      @sdetweil just changed those file paths, tried running MM, still getting “ERROR undefined” next to the little microphone

                      S 1 Reply Last reply Sep 30, 2019, 1:34 AM Reply Quote 0
                      • 1
                      • 2
                      • 5
                      • 6
                      • 7
                      • 8
                      • 9
                      • 7 / 9
                      7 / 9
                      • First post
                        63/81
                        Last post
                      Enjoying MagicMirror? Please consider a donation!
                      MagicMirror created by Michael Teeuw.
                      Forum managed by Sam, technical setup by Karsten.
                      This forum is using NodeBB as its core | Contributors
                      Contact | Privacy Policy