changeLanguageModelToFile on JSGF grammars leads to EXC_BAD_ACCESS

Home Forums OpenEars changeLanguageModelToFile on JSGF grammars leads to EXC_BAD_ACCESS

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

  • Author
    Posts
  • #1027058
    Saliency
    Participant

    Hello,

    During an ongoing listening session I am trying to switch to another JSGF grammar using:

    
    @property (strong) OELanguageModelGenerator *lmGenerator;
    ...
            lmPath = [self.lmGenerator pathToSuccessfullyGeneratedGrammarWithRequestedName:name];
            dicPath = [self.lmGenerator pathToSuccessfullyGeneratedDictionaryWithRequestedName:name];
            [[OEPocketsphinxController sharedInstance] changeLanguageModelToFile:lmPath withDictionary:dicPath];
    

    However, when I do this, I get an EXC_BAD_ACCESS as per the logs below.

    Is there a solution to this problem?

    Thank you,
    Saliency

    [spoiler]

    
    2015-10-17 17:39:07.218 Converse2[342:22257] Did load
    2015-10-17 17:39:07.220 Converse2[342:22257] Starting OpenEars logging for OpenEars version 2.041 on 64-bit device (or build): iPhone running iOS version: 9.000000
    2015-10-17 17:44:04.698 Converse2[342:23162] Creating shared instance of OEPocketsphinxController
    2015-10-17 17:44:04.715 Converse2[342:23162] User gave mic permission for this app.
    2015-10-17 17:44:04.821 Converse2[342:22257] The word  was not found in the dictionary /var/mobile/Containers/Bundle/Application/9F5F0885-A8B2-48DE-991B-5C7B4A7A95E7/Converse2.app/AcousticModelEnglish.bundle/LanguageModelGeneratorLookupList.text/LanguageModelGeneratorLookupList.text.
    2015-10-17 17:44:04.821 Converse2[342:22257] Now using the fallback method to look up the word 
    2015-10-17 17:44:04.822 Converse2[342:22257] If this is happening more frequently than you would expect, the most likely cause for it is since you are using the English phonetic lookup dictionary is that your words are not in English or aren't dictionary words.
    2015-10-17 17:44:04.822 Converse2[342:22257] Using convertGraphemes for the word or phrase  which doesn't appear in the dictionary
    2015-10-17 17:44:04.863 Converse2[342:22257] I'm done running performDictionaryLookup and it took 0.090061 seconds
    2015-10-17 17:44:04.886 Converse2[342:22257] Attempting to start listening session from startListeningWithLanguageModelAtPath:
    2015-10-17 17:44:04.886 Converse2[342:22257] User gave mic permission for this app.
    2015-10-17 17:44:04.887 Converse2[342:22257] Valid setSecondsOfSilence value of 0.800000 will be used.
    2015-10-17 17:44:04.887 Converse2[342:22257] Successfully started listening session from startListeningWithLanguageModelAtPath:
    2015-10-17 17:44:04.887 Converse2[342:23170] Starting listening.
    2015-10-17 17:44:04.887 Converse2[342:23170] about to set up audio session
    2015-10-17 17:44:05.106 Converse2[342:23170] Creating audio session with default settings.
    2015-10-17 17:44:05.111 Converse2[342:22337] Audio route has changed for the following reason:
    2015-10-17 17:44:05.115 Converse2[342:22337] There was a category change. The new category is AVAudioSessionCategoryPlayAndRecord
    2015-10-17 17:44:05.136 Converse2[342:22337] This is not a case in which OpenEars notifies of a route change. At the close of this function, the new audio route is ---HeadphonesMicrophoneBuiltIn---. The previous route before changing to this route was <AVAudioSessionRouteDescription: 0x135d3daa0, 
    inputs = (
        "<AVAudioSessionPortDescription: 0x135d3d530, type = MicrophoneBuiltIn; name = iPhone Microphone; UID = Built-In Microphone; selectedDataSource = Front>"
    ); 
    outputs = (
        "<AVAudioSessionPortDescription: 0x135d3e140, type = Headphones; name = Headphones; UID = Wired Headphones; selectedDataSource = (null)>"
    )>.
    2015-10-17 17:44:05.311 Converse2[342:23170] done starting audio unit
    INFO: cmd_ln.c(703): Parsing command line:
    \
    	-jsgf /var/mobile/Containers/Data/Application/30E675A2-1C1F-46B2-AC86-FAE4A5D23747/Library/Caches/mathModel2.gram \
    	-vad_prespeech 10 \
    	-vad_postspeech 80 \
    	-vad_threshold 3.500000 \
    	-remove_noise yes \
    	-remove_silence yes \
    	-bestpath yes \
    	-lw 1.000000 \
    	-dict /var/mobile/Containers/Data/Application/30E675A2-1C1F-46B2-AC86-FAE4A5D23747/Library/Caches/mathModel2.dic \
    	-hmm /var/mobile/Containers/Bundle/Application/9F5F0885-A8B2-48DE-991B-5C7B4A7A95E7/Converse2.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
    -ceplen			13		13
    -cmn			current		current
    -cmninit		8.0		8.0
    -compallsen		no		no
    -debug					0
    -dict					/var/mobile/Containers/Data/Application/30E675A2-1C1F-46B2-AC86-FAE4A5D23747/Library/Caches/mathModel2.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					/var/mobile/Containers/Bundle/Application/9F5F0885-A8B2-48DE-991B-5C7B4A7A95E7/Converse2.app/AcousticModelEnglish.bundle
    -input_endian		little		little
    -jsgf					/var/mobile/Containers/Data/Application/30E675A2-1C1F-46B2-AC86-FAE4A5D23747/Library/Caches/mathModel2.gram
    -keyphrase				
    -kws					
    -kws_delay		10		10
    -kws_plp		1e-1		1.000000e-01
    -kws_threshold		1		1.000000e+00
    -latsize		5000		5000
    -lda					
    -ldadim			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		30000		30000
    -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-10		1.000000e-10
    -pl_pip			1.0		1.000000e+00
    -pl_weight		3.0		3.000000e+00
    -pl_window		5		5
    -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
    -uw			1.0		1.000000e+00
    -vad_postspeech		50		80
    -vad_prespeech		20		10
    -vad_startspeech	10		10
    -vad_threshold		2.0		3.500000e+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(703): 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		80
    -vad_prespeech		20		10
    -vad_startspeech	10		10
    -vad_threshold		2.0		3.500000e+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 /var/mobile/Containers/Bundle/Application/9F5F0885-A8B2-48DE-991B-5C7B4A7A95E7/Converse2.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: /var/mobile/Containers/Bundle/Application/9F5F0885-A8B2-48DE-991B-5C7B4A7A95E7/Converse2.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: /var/mobile/Containers/Bundle/Application/9F5F0885-A8B2-48DE-991B-5C7B4A7A95E7/Converse2.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: /var/mobile/Containers/Bundle/Application/9F5F0885-A8B2-48DE-991B-5C7B4A7A95E7/Converse2.app/AcousticModelEnglish.bundle/transition_matrices
    INFO: acmod.c(124): Attempting to use PTM computation module
    INFO: ms_gauden.c(198): Reading mixture gaussian parameter: /var/mobile/Containers/Bundle/Application/9F5F0885-A8B2-48DE-991B-5C7B4A7A95E7/Converse2.app/AcousticModelEnglish.bundle/means
    INFO: ms_gauden.c(292): 1 codebook, 3 feature, size: 
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(198): Reading mixture gaussian parameter: /var/mobile/Containers/Bundle/Application/9F5F0885-A8B2-48DE-991B-5C7B4A7A95E7/Converse2.app/AcousticModelEnglish.bundle/variances
    INFO: ms_gauden.c(292): 1 codebook, 3 feature, size: 
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(354): 0 variance values floored
    INFO: ptm_mgau.c(805): Number of codebooks doesn't match number of ciphones, doesn't look like PTM: 1 != 46
    INFO: acmod.c(126): Attempting to use semi-continuous computation module
    INFO: ms_gauden.c(198): Reading mixture gaussian parameter: /var/mobile/Containers/Bundle/Application/9F5F0885-A8B2-48DE-991B-5C7B4A7A95E7/Converse2.app/AcousticModelEnglish.bundle/means
    INFO: ms_gauden.c(292): 1 codebook, 3 feature, size: 
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(198): Reading mixture gaussian parameter: /var/mobile/Containers/Bundle/Application/9F5F0885-A8B2-48DE-991B-5C7B4A7A95E7/Converse2.app/AcousticModelEnglish.bundle/variances
    INFO: ms_gauden.c(292): 1 codebook, 3 feature, size: 
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(354): 0 variance values floored
    INFO: s2_semi_mgau.c(904): Loading senones from dump file /var/mobile/Containers/Bundle/Application/9F5F0885-A8B2-48DE-991B-5C7B4A7A95E7/Converse2.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: phone_loop_search.c(114): State beam -225 Phone exit beam -225 Insertion penalty 0
    INFO: dict.c(320): Allocating 4145 * 32 bytes (129 KiB) for word entries
    INFO: dict.c(333): Reading main dictionary: /var/mobile/Containers/Data/Application/30E675A2-1C1F-46B2-AC86-FAE4A5D23747/Library/Caches/mathModel2.dic
    INFO: dict.c(213): Allocated 0 KiB for strings, 0 KiB for phones
    INFO: dict.c(336): 39 words read
    INFO: dict.c(358): Reading filler dictionary: /var/mobile/Containers/Bundle/Application/9F5F0885-A8B2-48DE-991B-5C7B4A7A95E7/Converse2.app/AcousticModelEnglish.bundle/noisedict
    INFO: dict.c(213): Allocated 0 KiB for strings, 0 KiB for phones
    INFO: dict.c(361): 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
    INFO: jsgf.c(691): Defined rule: <mathModel2.g00000>
    INFO: jsgf.c(691): Defined rule: <mathModel2.rule_0>
    INFO: jsgf.c(691): Defined rule: <mathModel2.g00002>
    INFO: jsgf.c(691): Defined rule: <mathModel2.rule_1>
    INFO: jsgf.c(691): Defined rule: <mathModel2.g00004>
    INFO: jsgf.c(691): Defined rule: <mathModel2.g00005>
    INFO: jsgf.c(691): Defined rule: <mathModel2.rule_2>
    INFO: jsgf.c(691): Defined rule: <mathModel2.g00007>
    INFO: jsgf.c(691): Defined rule: PUBLIC <mathModel2.rule_3>
    INFO: jsgf.c(359): Right recursion <mathModel2.g00005> 13 => 4
    INFO: fsg_model.c(215): Computing transitive closure for null transitions
    INFO: fsg_model.c(277): 1 null transitions added
    INFO: fsg_search.c(227): FSG(beam: -1080, pbeam: -1080, wbeam: -634; wip: -5, pip: 0)
    INFO: fsg_model.c(428): Adding silence transitions for <sil> to FSG
    INFO: fsg_model.c(448): Added 14 silence word transitions
    INFO: fsg_model.c(428): Adding silence transitions for <sil> to FSG
    INFO: fsg_model.c(448): Added 14 silence word transitions
    INFO: fsg_model.c(428): Adding silence transitions for [BREATH] to FSG
    INFO: fsg_model.c(448): Added 14 silence word transitions
    INFO: fsg_model.c(428): Adding silence transitions for [COUGH] to FSG
    INFO: fsg_model.c(448): Added 14 silence word transitions
    INFO: fsg_model.c(428): Adding silence transitions for [NOISE] to FSG
    INFO: fsg_model.c(448): Added 14 silence word transitions
    INFO: fsg_model.c(428): Adding silence transitions for [SMACK] to FSG
    INFO: fsg_model.c(448): Added 14 silence word transitions
    INFO: fsg_model.c(428): Adding silence transitions for [UH] to FSG
    INFO: fsg_model.c(448): Added 14 silence word transitions
    INFO: fsg_search.c(173): Added 9 alternate word transitions
    INFO: fsg_lextree.c(110): Allocated 1316 bytes (1 KiB) for left and right context phones
    INFO: fsg_lextree.c(256): 497 HMM nodes in lextree (411 leaves)
    INFO: fsg_lextree.c(259): Allocated 71568 bytes (69 KiB) for all lextree nodes
    INFO: fsg_lextree.c(262): Allocated 59184 bytes (57 KiB) for lextree leafnodes
    2015-10-17 17:44:05.391 Converse2[342:23170] Restoring SmartCMN value of 46.493896
    2015-10-17 17:44:05.392 Converse2[342:23170] Listening.
    2015-10-17 17:44:05.393 Converse2[342:23170] Project has these words or phrases in its dictionary:
    
    A
    A(2)
    ALL
    CALCULATE
    DONE
    EIGHT
    FIVE
    FOUR
    GRAMMAR
    HEY
    IS
    LOT
    LOT(2)
    NINE
    NORMAL
    OH
    ONE
    ONE(2)
    PLUS
    POINT
    SEVEN
    SIX
    SWITCH
    THANK
    THANKS
    THREE
    TIMES
    TO
    TO(2)
    TO(3)
    ...and 10 more.
    2015-10-17 17:44:05.393 Converse2[342:23170] Recognition loop has started
    2015-10-17 17:44:05.394 Converse2[342:22257] Pocketsphinx is now listening.
    2015-10-17 17:44:09.182 Converse2[342:23170] Speech detected...
    2015-10-17 17:44:09.184 Converse2[342:22257] Pocketsphinx has detected speech.
    2015-10-17 17:44:11.084 Converse2[342:23170] End of speech detected...
    2015-10-17 17:44:11.085 Converse2[342:22257] Pocketsphinx has detected a period of silence, concluding an utterance.
    INFO: cmn_prior.c(131): cmn_prior_update: from < 46.49  0.00  0.00  0.00  0.00  0.00  0.00  0.00  0.00  0.00  0.00  0.00  0.00 >
    INFO: cmn_prior.c(149): cmn_prior_update: to   < 47.78  4.36 -1.05  6.52 -1.17 -2.24  3.14 -4.49  0.33  4.60 -0.21 -8.18  0.54 >
    INFO: fsg_search.c(843): 196 frames, 11134 HMMs (56/fr), 25803 senones (131/fr), 2276 history entries (11/fr)
    
    2015-10-17 17:44:11.087 Converse2[342:23170] Pocketsphinx heard "HEY SWITCH TO NORMAL GRAMMAR" with a score of (0) and an utterance ID of 0.
    2015-10-17 17:44:11.169 Converse2[342:22257] The word  was not found in the dictionary /var/mobile/Containers/Bundle/Application/9F5F0885-A8B2-48DE-991B-5C7B4A7A95E7/Converse2.app/AcousticModelEnglish.bundle/LanguageModelGeneratorLookupList.text/LanguageModelGeneratorLookupList.text.
    2015-10-17 17:44:11.169 Converse2[342:22257] Now using the fallback method to look up the word 
    2015-10-17 17:44:11.169 Converse2[342:22257] If this is happening more frequently than you would expect, the most likely cause for it is since you are using the English phonetic lookup dictionary is that your words are not in English or aren't dictionary words.
    2015-10-17 17:44:11.170 Converse2[342:22257] Using convertGraphemes for the word or phrase  which doesn't appear in the dictionary
    2015-10-17 17:44:11.206 Converse2[342:22257] I'm done running performDictionaryLookup and it took 0.086398 seconds
    INFO: cmn_prior.c(131): cmn_prior_update: from < 47.78  4.36 -1.05  6.52 -1.17 -2.24  3.14 -4.49  0.33  4.60 -0.21 -8.18  0.54 >
    INFO: cmn_prior.c(149): cmn_prior_update: to   < 47.78  4.36 -1.05  6.52 -1.17 -2.24  3.14 -4.49  0.33  4.60 -0.21 -8.18  0.54 >
    INFO: fsg_search.c(843): 0 frames, 0 HMMs (0/fr), 0 senones (0/fr), 1 history entries (0/fr)
    
    2015-10-17 17:44:11.311 Converse2[342:23170] there is a request to change to the grammar file /var/mobile/Containers/Data/Application/30E675A2-1C1F-46B2-AC86-FAE4A5D23747/Library/Caches/normalModel2.gram
    2015-10-17 17:44:11.311 Converse2[342:23170] The grammar ID is 1445129051
    INFO: cmd_ln.c(703): Parsing command line:
    
    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
    -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
    -ceplen			13		13
    -cmn			current		current
    -cmninit		8.0		8.0
    -compallsen		no		no
    -debug					0
    -dict					
    -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					
    -input_endian		little		little
    -jsgf					
    -keyphrase				
    -kws					
    -kws_delay		10		10
    -kws_plp		1e-1		1.000000e-01
    -kws_threshold		1		1.000000e+00
    -latsize		5000		5000
    -lda					
    -ldadim			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		6.500000e+00
    -maxhmmpf		30000		30000
    -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-10		1.000000e-10
    -pl_pip			1.0		1.000000e+00
    -pl_weight		3.0		3.000000e+00
    -pl_window		5		5
    -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
    -uw			1.0		1.000000e+00
    -vad_postspeech		50		50
    -vad_prespeech		20		20
    -vad_startspeech	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: dict.c(320): Allocating 4125 * 32 bytes (128 KiB) for word entries
    INFO: dict.c(333): Reading main dictionary: /var/mobile/Containers/Data/Application/30E675A2-1C1F-46B2-AC86-FAE4A5D23747/Library/Caches/normalModel2.dic
    INFO: dict.c(213): Allocated 0 KiB for strings, 0 KiB for phones
    INFO: dict.c(336): 19 words read
    INFO: dict.c(358): Reading filler dictionary: /var/mobile/Containers/Bundle/Application/9F5F0885-A8B2-48DE-991B-5C7B4A7A95E7/Converse2.app/AcousticModelEnglish.bundle/noisedict
    INFO: dict.c(213): Allocated 0 KiB for strings, 0 KiB for phones
    INFO: dict.c(361): 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
    INFO: fsg_lextree.c(110): Allocated 1316 bytes (1 KiB) for left and right context phones
    
    [/spoiler]
    (lldb) bt
    * thread #11: tid = 0x5a82, 0x000000010007fb60 Converse2

    fsg_lextree_init + 516, queue = ‘com.apple.root.default-qos’, stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
    * frame #0: 0x000000010007fb60 Converse2`fsg_lextree_init + 516
    frame #1: 0x0000000100051f08 Converse2`fsg_search_reinit + 92
    frame #2: 0x000000010002acec Converse2`ps_load_dict + 364
    frame #3: 0x000000010003a80c Converse2`___lldb_unnamed_function58$$Converse2 + 428
    frame #4: 0x0000000100039618 Converse2`___lldb_unnamed_function49$$Converse2 + 128
    frame #5: 0x0000000100039214 Converse2`___lldb_unnamed_function42$$Converse2 + 348
    frame #6: 0x00000001003b5d30 libdispatch.dylib`_dispatch_client_callout + 16
    frame #7: 0x00000001003ce00c libdispatch.dylib`_dispatch_source_latch_and_call + 2848
    frame #8: 0x00000001003b82d4 libdispatch.dylib`_dispatch_source_invoke + 808
    frame #9: 0x00000001003c4908 libdispatch.dylib`_dispatch_root_queue_drain + 760
    frame #10: 0x00000001003c4600 libdispatch.dylib`_dispatch_worker_thread3 + 132
    frame #11: 0x000000019a839478 libsystem_pthread.dylib`_pthread_wqthread + 1092
    (lldb)
    `

    #1027061
    Halle Winkler
    Politepix

    Welcome,

    Hmm, I’ve never seen that before but what jumps out at me is that it looks like the grammar is being generated after the command to switch grammars – do you have the same issue if you first create the grammar and then switch to it?

    #1027062
    Saliency
    Participant

    Thank you.

    The same issue still happens if I create both grammars upfront… anything else I can try?

    I really like the grammar syntax, by the way!
    [spoiler]

    
    2015-10-18 04:34:35.825 Converse2[598:112503] Starting OpenEars logging for OpenEars version 2.041 on 64-bit device (or build): iPhone running iOS version: 9.000000
    2015-10-18 04:34:37.058 Converse2[598:112522] Creating shared instance of OEPocketsphinxController
    2015-10-18 04:34:37.078 Converse2[598:112522] User gave mic permission for this app.
    2015-10-18 04:34:37.242 Converse2[598:112522] The word  was not found in the dictionary /var/mobile/Containers/Bundle/Application/D1DE9020-50B5-41A9-BC17-28747E4D233B/Converse2.app/AcousticModelEnglish.bundle/LanguageModelGeneratorLookupList.text/LanguageModelGeneratorLookupList.text.
    2015-10-18 04:34:37.244 Converse2[598:112522] Now using the fallback method to look up the word 
    2015-10-18 04:34:37.244 Converse2[598:112522] If this is happening more frequently than you would expect, the most likely cause for it is since you are using the English phonetic lookup dictionary is that your words are not in English or aren't dictionary words.
    2015-10-18 04:34:37.244 Converse2[598:112522] Using convertGraphemes for the word or phrase  which doesn't appear in the dictionary
    2015-10-18 04:34:37.283 Converse2[598:112522] I'm done running performDictionaryLookup and it took 0.156046 seconds
    2015-10-18 04:34:37.341 Converse2[598:112522] ----- Generated language model name mathModel2 at lmPath /var/mobile/Containers/Data/Application/906278D0-92E5-4CCF-A528-516B594EBE4C/Library/Caches/mathModel2.gram and dicPath /var/mobile/Containers/Data/Application/906278D0-92E5-4CCF-A528-516B594EBE4C/Library/Caches/mathModel2.dic
    2015-10-18 04:34:37.394 Converse2[598:112522] The word  was not found in the dictionary /var/mobile/Containers/Bundle/Application/D1DE9020-50B5-41A9-BC17-28747E4D233B/Converse2.app/AcousticModelEnglish.bundle/LanguageModelGeneratorLookupList.text/LanguageModelGeneratorLookupList.text.
    2015-10-18 04:34:37.394 Converse2[598:112522] Now using the fallback method to look up the word 
    2015-10-18 04:34:37.394 Converse2[598:112522] If this is happening more frequently than you would expect, the most likely cause for it is since you are using the English phonetic lookup dictionary is that your words are not in English or aren't dictionary words.
    2015-10-18 04:34:37.394 Converse2[598:112522] Using convertGraphemes for the word or phrase  which doesn't appear in the dictionary
    2015-10-18 04:34:37.431 Converse2[598:112522] I'm done running performDictionaryLookup and it took 0.073644 seconds
    2015-10-18 04:34:37.451 Converse2[598:112522] ----- Generated language model name normalModel2 at lmPath /var/mobile/Containers/Data/Application/906278D0-92E5-4CCF-A528-516B594EBE4C/Library/Caches/normalModel2.gram and dicPath /var/mobile/Containers/Data/Application/906278D0-92E5-4CCF-A528-516B594EBE4C/Library/Caches/normalModel2.dic
    2015-10-18 04:34:37.451 Converse2[598:112522] Attempting to start listening session from startListeningWithLanguageModelAtPath:
    2015-10-18 04:34:37.452 Converse2[598:112522] User gave mic permission for this app.
    2015-10-18 04:34:37.453 Converse2[598:112522] Valid setSecondsOfSilence value of 0.800000 will be used.
    2015-10-18 04:34:37.453 Converse2[598:112522] Successfully started listening session from startListeningWithLanguageModelAtPath:
    2015-10-18 04:34:37.454 Converse2[598:112525] Starting listening.
    2015-10-18 04:34:37.454 Converse2[598:112525] about to set up audio session
    2015-10-18 04:34:37.455 Converse2[598:112525] Creating audio session with default settings.
    2015-10-18 04:34:37.887 Converse2[598:112548] Audio route has changed for the following reason:
    2015-10-18 04:34:37.896 Converse2[598:112548] There was a category change. The new category is AVAudioSessionCategoryPlayAndRecord
    2015-10-18 04:34:38.076 Converse2[598:112525] done starting audio unit
    INFO: cmd_ln.c(703): Parsing command line:
    \
    	-jsgf /var/mobile/Containers/Data/Application/906278D0-92E5-4CCF-A528-516B594EBE4C/Library/Caches/normalModel2.gram \
    	-vad_prespeech 10 \
    	-vad_postspeech 80 \
    	-vad_threshold 3.500000 \
    	-remove_noise yes \
    	-remove_silence yes \
    	-bestpath yes \
    	-lw 1.000000 \
    	-dict /var/mobile/Containers/Data/Application/906278D0-92E5-4CCF-A528-516B594EBE4C/Library/Caches/normalModel2.dic \
    	-hmm /var/mobile/Containers/Bundle/Application/D1DE9020-50B5-41A9-BC17-28747E4D233B/Converse2.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
    -ceplen			13		13
    -cmn			current		current
    -cmninit		8.0		8.0
    -compallsen		no		no
    -debug					0
    -dict					/var/mobile/Containers/Data/Application/906278D0-92E5-4CCF-A528-516B594EBE4C/Library/Caches/normalModel2.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					/var/mobile/Containers/Bundle/Application/D1DE9020-50B5-41A9-BC17-28747E4D233B/Converse2.app/AcousticModelEnglish.bundle
    -input_endian		little		little
    -jsgf					/var/mobile/Containers/Data/Application/906278D0-92E5-4CCF-A528-516B594EBE4C/Library/Caches/normalModel2.gram
    -keyphrase				
    -kws					
    -kws_delay		10		10
    -kws_plp		1e-1		1.000000e-01
    -kws_threshold		1		1.000000e+00
    -latsize		5000		5000
    -lda					
    -ldadim			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		30000		30000
    -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-10		1.000000e-10
    -pl_pip			1.0		1.000000e+00
    -pl_weight		3.0		3.000000e+00
    -pl_window		5		5
    -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
    -uw			1.0		1.000000e+00
    -vad_postspeech		50		80
    -vad_prespeech		20		10
    -vad_startspeech	10		10
    -vad_threshold		2.0		3.500000e+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(703): 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		80
    -vad_prespeech		20		10
    -vad_startspeech	10		10
    -vad_threshold		2.0		3.500000e+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 /var/mobile/Containers/Bundle/Application/D1DE9020-50B5-41A9-BC17-28747E4D233B/Converse2.app/AcousticModelEnglish.bundle/feat.params
    2015-10-18 04:34:38.084 Converse2[598:112548] This is not a case in which OpenEars notifies of a route change. At the close of this function, the new audio route is ---SpeakerMicrophoneBuiltIn---. The previous route before changing to this route was <AVAudioSessionRouteDescription: 0x1255516c0, 
    inputs = (
        "<AVAudioSessionPortDescription: 0x12553be40, type = MicrophoneBuiltIn; name = iPhone Microphone; UID = Built-In Microphone; selectedDataSource = Front>"
    ); 
    outputs = (
        "<AVAudioSessionPortDescription: 0x12555a2a0, type = Speaker; name = Speaker; UID = Speaker; selectedDataSource = (null)>"
    )>.
    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: /var/mobile/Containers/Bundle/Application/D1DE9020-50B5-41A9-BC17-28747E4D233B/Converse2.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: /var/mobile/Containers/Bundle/Application/D1DE9020-50B5-41A9-BC17-28747E4D233B/Converse2.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: /var/mobile/Containers/Bundle/Application/D1DE9020-50B5-41A9-BC17-28747E4D233B/Converse2.app/AcousticModelEnglish.bundle/transition_matrices
    INFO: acmod.c(124): Attempting to use PTM computation module
    INFO: ms_gauden.c(198): Reading mixture gaussian parameter: /var/mobile/Containers/Bundle/Application/D1DE9020-50B5-41A9-BC17-28747E4D233B/Converse2.app/AcousticModelEnglish.bundle/means
    INFO: ms_gauden.c(292): 1 codebook, 3 feature, size: 
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(198): Reading mixture gaussian parameter: /var/mobile/Containers/Bundle/Application/D1DE9020-50B5-41A9-BC17-28747E4D233B/Converse2.app/AcousticModelEnglish.bundle/variances
    INFO: ms_gauden.c(292): 1 codebook, 3 feature, size: 
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(354): 0 variance values floored
    INFO: ptm_mgau.c(805): Number of codebooks doesn't match number of ciphones, doesn't look like PTM: 1 != 46
    INFO: acmod.c(126): Attempting to use semi-continuous computation module
    INFO: ms_gauden.c(198): Reading mixture gaussian parameter: /var/mobile/Containers/Bundle/Application/D1DE9020-50B5-41A9-BC17-28747E4D233B/Converse2.app/AcousticModelEnglish.bundle/means
    INFO: ms_gauden.c(292): 1 codebook, 3 feature, size: 
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(198): Reading mixture gaussian parameter: /var/mobile/Containers/Bundle/Application/D1DE9020-50B5-41A9-BC17-28747E4D233B/Converse2.app/AcousticModelEnglish.bundle/variances
    INFO: ms_gauden.c(292): 1 codebook, 3 feature, size: 
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(294):  512x13
    INFO: ms_gauden.c(354): 0 variance values floored
    INFO: s2_semi_mgau.c(904): Loading senones from dump file /var/mobile/Containers/Bundle/Application/D1DE9020-50B5-41A9-BC17-28747E4D233B/Converse2.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: phone_loop_search.c(114): State beam -225 Phone exit beam -225 Insertion penalty 0
    INFO: dict.c(320): Allocating 4125 * 32 bytes (128 KiB) for word entries
    INFO: dict.c(333): Reading main dictionary: /var/mobile/Containers/Data/Application/906278D0-92E5-4CCF-A528-516B594EBE4C/Library/Caches/normalModel2.dic
    INFO: dict.c(213): Allocated 0 KiB for strings, 0 KiB for phones
    INFO: dict.c(336): 19 words read
    INFO: dict.c(358): Reading filler dictionary: /var/mobile/Containers/Bundle/Application/D1DE9020-50B5-41A9-BC17-28747E4D233B/Converse2.app/AcousticModelEnglish.bundle/noisedict
    INFO: dict.c(213): Allocated 0 KiB for strings, 0 KiB for phones
    INFO: dict.c(361): 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
    INFO: jsgf.c(691): Defined rule: <normalModel2.g00000>
    INFO: jsgf.c(691): Defined rule: <normalModel2.rule_0>
    INFO: jsgf.c(691): Defined rule: <normalModel2.g00002>
    INFO: jsgf.c(691): Defined rule: <normalModel2.rule_1>
    INFO: jsgf.c(691): Defined rule: <normalModel2.g00004>
    INFO: jsgf.c(691): Defined rule: PUBLIC <normalModel2.rule_2>
    INFO: fsg_model.c(215): Computing transitive closure for null transitions
    INFO: fsg_model.c(277): 0 null transitions added
    INFO: fsg_search.c(227): FSG(beam: -1080, pbeam: -1080, wbeam: -634; wip: -5, pip: 0)
    INFO: fsg_model.c(428): Adding silence transitions for <sil> to FSG
    INFO: fsg_model.c(448): Added 15 silence word transitions
    INFO: fsg_model.c(428): Adding silence transitions for <sil> to FSG
    INFO: fsg_model.c(448): Added 15 silence word transitions
    INFO: fsg_model.c(428): Adding silence transitions for [BREATH] to FSG
    INFO: fsg_model.c(448): Added 15 silence word transitions
    INFO: fsg_model.c(428): Adding silence transitions for [COUGH] to FSG
    INFO: fsg_model.c(448): Added 15 silence word transitions
    INFO: fsg_model.c(428): Adding silence transitions for [NOISE] to FSG
    INFO: fsg_model.c(448): Added 15 silence word transitions
    INFO: fsg_model.c(428): Adding silence transitions for [SMACK] to FSG
    INFO: fsg_model.c(448): Added 15 silence word transitions
    INFO: fsg_model.c(428): Adding silence transitions for [UH] to FSG
    INFO: fsg_model.c(448): Added 15 silence word transitions
    INFO: fsg_search.c(173): Added 5 alternate word transitions
    INFO: fsg_lextree.c(110): Allocated 1410 bytes (1 KiB) for left and right context phones
    INFO: fsg_lextree.c(256): 198 HMM nodes in lextree (137 leaves)
    INFO: fsg_lextree.c(259): Allocated 28512 bytes (27 KiB) for all lextree nodes
    INFO: fsg_lextree.c(262): Allocated 19728 bytes (19 KiB) for lextree leafnodes
    2015-10-18 04:34:38.136 Converse2[598:112525] There was no previous CMN value in the plist so we are using the fresh CMN value 42.000000.
    2015-10-18 04:34:38.137 Converse2[598:112525] Listening.
    2015-10-18 04:34:38.137 Converse2[598:112503] Pocketsphinx is now listening.
    2015-10-18 04:34:38.137 Converse2[598:112525] Project has these words or phrases in its dictionary:
    
    CALCULATOR
    DO
    ENABLE
    ENABLE(2)
    GRAMMAR
    HEY
    IS
    IT
    LET'S
    MATH
    MODE
    SOME
    SWITCH
    TIME
    TO
    TO(2)
    TO(3)
    WHAT
    WHAT(2)
    2015-10-18 04:34:38.138 Converse2[598:112525] Recognition loop has started
    2015-10-18 04:34:40.701 Converse2[598:112522] Speech detected...
    2015-10-18 04:34:40.702 Converse2[598:112503] Pocketsphinx has detected speech.
    2015-10-18 04:34:42.634 Converse2[598:112522] End of speech detected...
    2015-10-18 04:34:42.635 Converse2[598:112503] Pocketsphinx has detected a period of silence, concluding an utterance.
    INFO: cmn_prior.c(131): cmn_prior_update: from < 42.00  0.00  0.00  0.00  0.00  0.00  0.00  0.00  0.00  0.00  0.00  0.00  0.00 >
    INFO: cmn_prior.c(149): cmn_prior_update: to   < 47.59  2.63  1.52  5.51 -4.49 10.41 -0.17  5.00  1.14  3.83  3.19 -16.00 -17.33 >
    INFO: fsg_search.c(843): 190 frames, 4477 HMMs (23/fr), 11469 senones (60/fr), 647 history entries (3/fr)
    
    2015-10-18 04:34:42.637 Converse2[598:112522] Pocketsphinx heard "HEY SWITCH TO MATH GRAMMAR" with a score of (0) and an utterance ID of 0.
    INFO: cmn_prior.c(131): cmn_prior_update: from < 47.59  2.63  1.52  5.51 -4.49 10.41 -0.17  5.00  1.14  3.83  3.19 -16.00 -17.33 >
    INFO: cmn_prior.c(149): cmn_prior_update: to   < 47.59  2.63  1.52  5.51 -4.49 10.41 -0.17  5.00  1.14  3.83  3.19 -16.00 -17.33 >
    INFO: fsg_search.c(843): 0 frames, 0 HMMs (0/fr), 0 senones (0/fr), 1 history entries (0/fr)
    
    2015-10-18 04:34:42.768 Converse2[598:112522] there is a request to change to the grammar file /var/mobile/Containers/Data/Application/906278D0-92E5-4CCF-A528-516B594EBE4C/Library/Caches/mathModel2.gram
    2015-10-18 04:34:42.769 Converse2[598:112522] The grammar ID is 1445168082
    INFO: cmd_ln.c(703): Parsing command line:
    
    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
    -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
    -ceplen			13		13
    -cmn			current		current
    -cmninit		8.0		8.0
    -compallsen		no		no
    -debug					0
    -dict					
    -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					
    -input_endian		little		little
    -jsgf					
    -keyphrase				
    -kws					
    -kws_delay		10		10
    -kws_plp		1e-1		1.000000e-01
    -kws_threshold		1		1.000000e+00
    -latsize		5000		5000
    -lda					
    -ldadim			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		6.500000e+00
    -maxhmmpf		30000		30000
    -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-10		1.000000e-10
    -pl_pip			1.0		1.000000e+00
    -pl_weight		3.0		3.000000e+00
    -pl_window		5		5
    -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
    -uw			1.0		1.000000e+00
    -vad_postspeech		50		50
    -vad_prespeech		20		20
    -vad_startspeech	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: dict.c(320): Allocating 4145 * 32 bytes (129 KiB) for word entries
    INFO: dict.c(333): Reading main dictionary: /var/mobile/Containers/Data/Application/906278D0-92E5-4CCF-A528-516B594EBE4C/Library/Caches/mathModel2.dic
    INFO: dict.c(213): Allocated 0 KiB for strings, 0 KiB for phones
    INFO: dict.c(336): 39 words read
    INFO: dict.c(358): Reading filler dictionary: /var/mobile/Containers/Bundle/Application/D1DE9020-50B5-41A9-BC17-28747E4D233B/Converse2.app/AcousticModelEnglish.bundle/noisedict
    INFO: dict.c(213): Allocated 0 KiB for strings, 0 KiB for phones
    INFO: dict.c(361): 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
    INFO: fsg_lextree.c(110): Allocated 1410 bytes (1 KiB) for left and right context phones
    [/spoiler]
    (lldb) bt
    * thread #3: tid = 0x1b78a, 0x000000010012fb60 Converse2

    fsg_lextree_init + 516, queue = ‘com.apple.root.default-qos’, stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
    * frame #0: 0x000000010012fb60 Converse2`fsg_lextree_init + 516
    frame #1: 0x0000000100101f08 Converse2`fsg_search_reinit + 92
    frame #2: 0x00000001000dacec Converse2`ps_load_dict + 364
    frame #3: 0x00000001000ea80c Converse2`___lldb_unnamed_function58$$Converse2 + 428
    frame #4: 0x00000001000e9618 Converse2`___lldb_unnamed_function49$$Converse2 + 128
    frame #5: 0x00000001000e9214 Converse2`___lldb_unnamed_function42$$Converse2 + 348
    frame #6: 0x0000000100459d30 libdispatch.dylib`_dispatch_client_callout + 16
    frame #7: 0x000000010047200c libdispatch.dylib`_dispatch_source_latch_and_call + 2848
    frame #8: 0x000000010045c2d4 libdispatch.dylib`_dispatch_source_invoke + 808
    frame #9: 0x0000000100468908 libdispatch.dylib`_dispatch_root_queue_drain + 760
    frame #10: 0x0000000100468600 libdispatch.dylib`_dispatch_worker_thread3 + 132
    frame #11: 0x000000019a839478 libsystem_pthread.dylib`_pthread_wqthread + 1092
    (lldb)
    `

    #1027065
    Halle Winkler
    Politepix

    Thanks! Hmm, maybe you are encountering some buggy behavior – the crash looks like it happens when the second dictionary is being initialized, is there anything unusual about the second grammar (i.e. it’s just one word, it has some unusual punctuation, something along those lines)?

    #1027076
    Saliency
    Participant

    Unfortunately, no, there is no unusual punctuation.

    The crash occurs when switching, regardless of whether I start with grammar #1 (which successfully loads initially) and switch to #2, or start with #2 (which also successfully loads initially) and then switch to #1.

    Here are the grammars in case you are trying to replicate:

    
    -(void)initializeNormalModel
    {
        NSDictionary* grammarDict =  @{
                                       ThisWillBeSaidOnce : @[
                                               @{ OneOfTheseWillBeSaidOnce : @[@"HEY "]},
                                               @{ OneOfTheseWillBeSaidOnce : @[@"WHAT TIME IS IT",
                                                                               @"SWITCH TO MATH GRAMMAR"]}
                                               ]
                                       };
        [self saveGrammar:grammarDict withName:@"normalModel2"];
        
    }
    
    -(void)initializeMathModel
    {
        NSDictionary* grammarDict =  @{
                                       ThisWillBeSaidOnce : @[
                                               @{ OneOfTheseWillBeSaidOnce : @[@"HEY "]},
                                               @{ OneOfTheseWillBeSaidOnce : @[@"SWITCH TO NORMAL GRAMMAR",
                                                                               @"CALCULATE"
                                                                               ]},
                                               @{ OneOfTheseCanBeSaidWithOptionalRepetitions: @[@"ONE", @"TWO", @"THREE", @"FOUR", @"FIVE", @"SIX", @"SEVEN", @"EIGHT", @"NINE", @"ZERO", @"OH", @"PLUS", @"TIMES", @"POINT"] },
                                               ]
                                       };
        [self saveGrammar:grammarDict withName:@"mathModel2"];
    }
    
    #1027088
    Halle Winkler
    Politepix

    Thanks, I will check this out after the next update, but I can’t give an estimated time for that unfortunately. I appreciate the notification that there is an issue.

    #1027090
    Saliency
    Participant

    Thank you. In the meantime is it possible to work around the problem by deallocating and then reallocating the singleton? Is there a tear down procedure I can use?

    #1027094
    Halle Winkler
    Politepix

    Hi,

    No need to – you can just stop listening and start listening with your next grammar.

    #1027107
    Saliency
    Participant

    Ok — that seems to be working, thanks!

    #1027294
    mojo
    Participant

    Hi, I just wanted to say that I’m having exactly the same problem as Saliency. The above workaround solves the crash, but the stop/start introduces other problems, so it’s not ideal.

    #1027296
    Halle Winkler
    Politepix

    I agree that it’s a bug and it’s been added to the issues list, but I’d be interested to hear what problems starting and stopping is causing.

    #1027298
    mojo
    Participant

    I should say it can cause other problems. One example would be stopping the controller while flite is still speaking, which would result in AVAudioSession complaining about closing a session on which I/O is still happening resulting in boiler plate code in fliteDidFinishSpeaking etc, in other words it could create a mess.

    #1027301
    Halle Winkler
    Politepix

    OK, that makes sense that stopping while speech is in progress isn’t ideal, thanks for elaborating.

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