JSGF grammar not working

Home Forums OpenEars JSGF grammar not working

Viewing 4 posts - 1 through 4 (of 4 total)

  • Author
    Posts
  • #1024362
    batilc
    Participant

    Hello,

    I’m trying to test the grammars in OpenEars2.0. However the normal offline JSGF grammar parsing gives an error while initialising. Below resides the partial code and the debugging information.

    NSString *languageName = @”page phrases”;
    NSDictionary *languageGrammar = @{
    ThisWillBeSaidOnce : @[
    @{ OneOfTheseCanBeSaidOnce : @[@”HELLO COMPUTER”, @”GREETINGS ROBOT”]},
    @{ OneOfTheseWillBeSaidOnce : @[@”DO THE FOLLOWING”, @”INSTRUCTION”]},
    @{ OneOfTheseWillBeSaidOnce : @[@”GO”, @”MOVE”]},
    @{ThisWillBeSaidOnce : @[
    @{ OneOfTheseWillBeSaidOnce : @[@”10″, @”20″,@”30″]},
    @{ OneOfTheseWillBeSaidOnce : @[@”LEFT”, @”RIGHT”, @”FORWARD”]}
    ]},
    @{ ThisCanBeSaidOnce : @[@”THANK YOU”]}
    ]
    };

    NSError *error = [self.language_model_generator generateGrammarFromDictionary:languageGrammar withFilesNamed:languageName forAcousticModelAtPath:self.acoustic_model];

    NSString *lmPath = [self.language_model_generator pathToSuccessfullyGeneratedGrammarWithRequestedName:languageName];

    NSString *dictionaryPath = [self.language_model_generator pathToSuccessfullyGeneratedDictionaryWithRequestedName:languageName];

    [self.pocket_sphinx_controller setActive:TRUE error:nil];

    [self.pocket_sphinx_controller startListeningWithLanguageModelAtPath:lmPath dictionaryAtPath:dictionaryPath acousticModelAtPath:self.acoustic_model languageModelIsJSGF:TRUE];

    //This last start listening line gives the error
    //By the way, will languageModelIsJSGF be TRUE while using RuleORama?

    ———–DEBUG CONSOLE——–
    INFO: cmd_ln.c(702): Parsing command line:
    \
    -jsgf /Users/batilc/Library/Developer/CoreSimulator/Devices/D52E339A-1DD7-4B1E-AD8C-DF152684A7F6/data/Containers/Data/Application/868745E1-A888-45F7-846C-99593114FFCF/Library/Caches/page phrases.gram \
    -vad_prespeech 10 \
    -vad_postspeech 69 \
    -vad_threshold 2.000000 \
    -remove_noise yes \
    -remove_silence yes \
    -bestpath yes \
    -lw 1.000000 \
    -dict /Users/batilc/Library/Developer/CoreSimulator/Devices/D52E339A-1DD7-4B1E-AD8C-DF152684A7F6/data/Containers/Data/Application/868745E1-A888-45F7-846C-99593114FFCF/Library/Caches/page phrases.dic \
    -hmm /Users/batilc/Library/Developer/CoreSimulator/Devices/D52E339A-1DD7-4B1E-AD8C-DF152684A7F6/data/Containers/Bundle/Application/60B43D93-19E1-4DE7-91D5-769BCD3F91BB/KidStory.app/AcousticModelEnglish.bundle

    Current configuration:
    [NAME] [DEFLT] [VALUE]
    -agc none none
    -agcthresh 2.0 2.000000e+00
    -allphone
    -allphone_ci no no
    -alpha 0.97 9.700000e-01
    -argfile
    -ascale 20.0 2.000000e+01
    -aw 1 1
    -backtrace no no
    -beam 1e-48 1.000000e-48
    -bestpath yes yes
    -bestpathlw 9.5 9.500000e+00
    -bghist no no
    -ceplen 13 13
    -cmn current current
    -cmninit 8.0 8.0
    -compallsen no no
    -debug 0
    -dict /Users/batilc/Library/Developer/CoreSimulator/Devices/D52E339A-1DD7-4B1E-AD8C-DF152684A7F6/data/Containers/Data/Application/868745E1-A888-45F7-846C-99593114FFCF/Library/Caches/page phrases.dic
    -dictcase no no
    -dither no no
    -doublebw no no
    -ds 1 1
    -fdict
    -feat 1s_c_d_dd 1s_c_d_dd
    -featparams
    -fillprob 1e-8 1.000000e-08
    -frate 100 100
    -fsg
    -fsgusealtpron yes yes
    -fsgusefiller yes yes
    -fwdflat yes yes
    -fwdflatbeam 1e-64 1.000000e-64
    -fwdflatefwid 4 4
    -fwdflatlw 8.5 8.500000e+00
    -fwdflatsfwin 25 25
    -fwdflatwbeam 7e-29 7.000000e-29
    -fwdtree yes yes
    -hmm /Users/batilc/Library/Developer/CoreSimulator/Devices/D52E339A-1DD7-4B1E-AD8C-DF152684A7F6/data/Containers/Bundle/Application/60B43D93-19E1-4DE7-91D5-769BCD3F91BB/KidStory.app/AcousticModelEnglish.bundle
    -input_endian little little
    -jsgf /Users/batilc/Library/Developer/CoreSimulator/Devices/D52E339A-1DD7-4B1E-AD8C-DF152684A7F6/data/Containers/Data/Application/868745E1-A888-45F7-846C-99593114FFCF/Library/Caches/page phrases.gram
    -kdmaxbbi -1 -1
    -kdmaxdepth 0 0
    -kdtree
    -keyphrase
    -kws
    -kws_plp 1e-1 1.000000e-01
    -kws_threshold 1 1.000000e+00
    -latsize 5000 5000
    -lda
    -ldadim 0 0
    -lextreedump 0 0
    -lifter 0 0
    -lm
    -lmctl
    -lmname
    -logbase 1.0001 1.000100e+00
    -logfn
    -logspec no no
    -lowerf 133.33334 1.333333e+02
    -lpbeam 1e-40 1.000000e-40
    -lponlybeam 7e-29 7.000000e-29
    -lw 6.5 1.000000e+00
    -maxhmmpf 10000 10000
    -maxnewoov 20 20
    -maxwpf -1 -1
    -mdef
    -mean
    -mfclogdir
    -min_endfr 0 0
    -mixw
    -mixwfloor 0.0000001 1.000000e-07
    -mllr
    -mmap yes yes
    -ncep 13 13
    -nfft 512 512
    -nfilt 40 40
    -nwpen 1.0 1.000000e+00
    -pbeam 1e-48 1.000000e-48
    -pip 1.0 1.000000e+00
    -pl_beam 1e-10 1.000000e-10
    -pl_pbeam 1e-5 1.000000e-05
    -pl_window 0 0
    -rawlogdir
    -remove_dc no no
    -remove_noise yes yes
    -remove_silence yes yes
    -round_filters yes yes
    -samprate 16000 1.600000e+04
    -seed -1 -1
    -sendump
    -senlogdir
    -senmgau
    -silprob 0.005 5.000000e-03
    -smoothspec no no
    -svspec
    -tmat
    -tmatfloor 0.0001 1.000000e-04
    -topn 4 4
    -topn_beam 0 0
    -toprule
    -transform legacy legacy
    -unit_area yes yes
    -upperf 6855.4976 6.855498e+03
    -usewdphones no no
    -uw 1.0 1.000000e+00
    -vad_postspeech 50 69
    -vad_prespeech 10 10
    -vad_threshold 2.0 2.000000e+00
    -var
    -varfloor 0.0001 1.000000e-04
    -varnorm no no
    -verbose no no
    -warp_params
    -warp_type inverse_linear inverse_linear
    -wbeam 7e-29 7.000000e-29
    -wip 0.65 6.500000e-01
    -wlen 0.025625 2.562500e-02

    INFO: cmd_ln.c(702): Parsing command line:
    \
    -nfilt 25 \
    -lowerf 130 \
    -upperf 6800 \
    -feat 1s_c_d_dd \
    -svspec 0-12/13-25/26-38 \
    -agc none \
    -cmn current \
    -varnorm no \
    -transform dct \
    -lifter 22 \
    -cmninit 40

    Current configuration:
    [NAME] [DEFLT] [VALUE]
    -agc none none
    -agcthresh 2.0 2.000000e+00
    -alpha 0.97 9.700000e-01
    -ceplen 13 13
    -cmn current current
    -cmninit 8.0 40
    -dither no no
    -doublebw no no
    -feat 1s_c_d_dd 1s_c_d_dd
    -frate 100 100
    -input_endian little little
    -lda
    -ldadim 0 0
    -lifter 0 22
    -logspec no no
    -lowerf 133.33334 1.300000e+02
    -ncep 13 13
    -nfft 512 512
    -nfilt 40 25
    -remove_dc no no
    -remove_noise yes yes
    -remove_silence yes yes
    -round_filters yes yes
    -samprate 16000 1.600000e+04
    -seed -1 -1
    -smoothspec no no
    -svspec 0-12/13-25/26-38
    -transform legacy dct
    -unit_area yes yes
    -upperf 6855.4976 6.800000e+03
    -vad_postspeech 50 69
    -vad_prespeech 10 10
    -vad_threshold 2.0 2.000000e+00
    -varnorm no no
    -verbose no no
    -warp_params
    -warp_type inverse_linear inverse_linear
    -wlen 0.025625 2.562500e-02

    INFO: acmod.c(252): Parsed model-specific feature parameters from /Users/batilc/Library/Developer/CoreSimulator/Devices/D52E339A-1DD7-4B1E-AD8C-DF152684A7F6/data/Containers/Bundle/Application/60B43D93-19E1-4DE7-91D5-769BCD3F91BB/KidStory.app/AcousticModelEnglish.bundle/feat.params
    INFO: feat.c(715): Initializing feature stream to type: ‘1s_c_d_dd’, ceplen=13, CMN=’current’, VARNORM=’no’, AGC=’none’
    INFO: cmn.c(143): mean[0]= 12.00, mean[1..12]= 0.0
    INFO: acmod.c(171): Using subvector specification 0-12/13-25/26-38
    INFO: mdef.c(518): Reading model definition: /Users/batilc/Library/Developer/CoreSimulator/Devices/D52E339A-1DD7-4B1E-AD8C-DF152684A7F6/data/Containers/Bundle/Application/60B43D93-19E1-4DE7-91D5-769BCD3F91BB/KidStory.app/AcousticModelEnglish.bundle/mdef
    INFO: mdef.c(531): Found byte-order mark BMDF, assuming this is a binary mdef file
    INFO: bin_mdef.c(336): Reading binary model definition: /Users/batilc/Library/Developer/CoreSimulator/Devices/D52E339A-1DD7-4B1E-AD8C-DF152684A7F6/data/Containers/Bundle/Application/60B43D93-19E1-4DE7-91D5-769BCD3F91BB/KidStory.app/AcousticModelEnglish.bundle/mdef
    INFO: bin_mdef.c(516): 46 CI-phone, 168344 CD-phone, 3 emitstate/phone, 138 CI-sen, 6138 Sen, 32881 Sen-Seq
    INFO: tmat.c(206): Reading HMM transition probability matrices: /Users/batilc/Library/Developer/CoreSimulator/Devices/D52E339A-1DD7-4B1E-AD8C-DF152684A7F6/data/Containers/Bundle/Application/60B43D93-19E1-4DE7-91D5-769BCD3F91BB/KidStory.app/AcousticModelEnglish.bundle/transition_matrices
    INFO: acmod.c(124): Attempting to use SCHMM computation module
    INFO: ms_gauden.c(198): Reading mixture gaussian parameter: /Users/batilc/Library/Developer/CoreSimulator/Devices/D52E339A-1DD7-4B1E-AD8C-DF152684A7F6/data/Containers/Bundle/Application/60B43D93-19E1-4DE7-91D5-769BCD3F91BB/KidStory.app/AcousticModelEnglish.bundle/means
    INFO: ms_gauden.c(292): 1 codebook, 3 feature, size:
    INFO: ms_gauden.c(294): 512×13
    INFO: ms_gauden.c(294): 512×13
    INFO: ms_gauden.c(294): 512×13
    INFO: ms_gauden.c(198): Reading mixture gaussian parameter: /Users/batilc/Library/Developer/CoreSimulator/Devices/D52E339A-1DD7-4B1E-AD8C-DF152684A7F6/data/Containers/Bundle/Application/60B43D93-19E1-4DE7-91D5-769BCD3F91BB/KidStory.app/AcousticModelEnglish.bundle/variances
    INFO: ms_gauden.c(292): 1 codebook, 3 feature, size:
    INFO: ms_gauden.c(294): 512×13
    INFO: ms_gauden.c(294): 512×13
    INFO: ms_gauden.c(294): 512×13
    INFO: ms_gauden.c(354): 0 variance values floored
    INFO: s2_semi_mgau.c(904): Loading senones from dump file /Users/batilc/Library/Developer/CoreSimulator/Devices/D52E339A-1DD7-4B1E-AD8C-DF152684A7F6/data/Containers/Bundle/Application/60B43D93-19E1-4DE7-91D5-769BCD3F91BB/KidStory.app/AcousticModelEnglish.bundle/sendump
    INFO: s2_semi_mgau.c(928): BEGIN FILE FORMAT DESCRIPTION
    INFO: s2_semi_mgau.c(991): Rows: 512, Columns: 6138
    INFO: s2_semi_mgau.c(1023): Using memory-mapped I/O for senones
    INFO: s2_semi_mgau.c(1294): Maximum top-N: 4 Top-N beams: 0 0 0
    INFO: dict.c(320): Allocating 4126 * 32 bytes (128 KiB) for word entries
    INFO: dict.c(333): Reading main dictionary: /Users/batilc/Library/Developer/CoreSimulator/Devices/D52E339A-1DD7-4B1E-AD8C-DF152684A7F6/data/Containers/Data/Application/868745E1-A888-45F7-846C-99593114FFCF/Library/Caches/page phrases.dic
    INFO: dict.c(213): Allocated 0 KiB for strings, 0 KiB for phones
    INFO: dict.c(336): 21 words read
    INFO: dict.c(342): Reading filler dictionary: /Users/batilc/Library/Developer/CoreSimulator/Devices/D52E339A-1DD7-4B1E-AD8C-DF152684A7F6/data/Containers/Bundle/Application/60B43D93-19E1-4DE7-91D5-769BCD3F91BB/KidStory.app/AcousticModelEnglish.bundle/noisedict
    INFO: dict.c(213): Allocated 0 KiB for strings, 0 KiB for phones
    INFO: dict.c(345): 9 words read
    INFO: dict2pid.c(396): Building PID tables for dictionary
    INFO: dict2pid.c(406): Allocating 46^3 * 2 bytes (190 KiB) for word-initial triphones
    INFO: dict2pid.c(132): Allocated 51152 bytes (49 KiB) for word-final triphones
    INFO: dict2pid.c(196): Allocated 51152 bytes (49 KiB) for single-phone word triphones
    ERROR: “jsgf_parser.y”, line 155: syntax error, unexpected TOKEN, expecting ‘;’ at line 2 current token ‘phrases’
    ERROR: “jsgf.c”, line 904: Failed to parse JSGF grammar from ‘/Users/batilc/Library/Developer/CoreSimulator/Devices/D52E339A-1DD7-4B1E-AD8C-DF152684A7F6/data/Containers/Data/Application/868745E1-A888-45F7-846C-99593114FFCF/Library/Caches/page phrases.gram’

    #1024368
    Halle Winkler
    Politepix

    Pretty sure that issue is that you have a space in your chosen grammar name – it should be named like you would name a constant.

    RuleORama should be JSGF:FALSE.

    #1024370
    batilc
    Participant

    That solved it thank you

    #1024371
    Halle Winkler
    Politepix

    Super!

Viewing 4 posts - 1 through 4 (of 4 total)
  • You must be logged in to reply to this topic.