HomeForumsOpenEarsVolume is low

This topic has 2 voices, contains 4 replies, and was last updated by  Halle 126 days ago.

Viewing 5 posts - 1 through 5 (of 5 total)
Author Posts
Author Posts
January 13, 2012 at 6:05 pm #8393

kasey

In the simulator, everything works perfectly. However, once I run my app on my iPhone 4, as soon as pocket sphinx starts listening all the sounds play on an extremely low volume. When pocket sphinx stops, they are back on normal volume.

I checked the AVAudioPlayer volume property, it is set to 1.0 (as it should) even when pocket sphinx is listening. Similarly, the iPhone itself has speaker volume on maximum.

I also checked if I had multiple audio session managers starting, and I do not. Only one starts in the app delegate.

My AVAudioPlayers are created like this:

NSError *error;
NSString *path = [[NSBundle mainBundle] pathForResource:file ofType:@”caf”];
NSURL *url = [NSURL fileURLWithPath:path];
audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:&error];
if (audioPlayer == nil)
NSLog(@”Error: %@”, [error description]);
audioPlayer.volume = 1.0;
[audioPlayer setDelegate:self];
[audioPlayer prepareToPlay];

and they are inside their own objects that I created to hold them.

The play method is simply: [audioPlayer play];

I suspend recognition when a sound plays, and resume when it finishes.

Can you give me any insight as to why this would happen? It must be something that happens exclusively when running on a device, since the simulator works fine.

Thanks!

  • This reply was modified 126 days ago by  kasey.
  • This reply was modified 126 days ago by  kasey.
January 13, 2012 at 6:10 pm #8396

kasey

And here is the log output. I don’t know if it’s relevant.

INFO: cmd_ln.c(512): Parsing command line:
\
-lm /var/mobile/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app/teegeeMath.languagemodel \
-dict /var/mobile/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app/teegeeMath.dic \
-fdict /var/mobile/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app/noisedict \
-hmm /var/mobile/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app \
-maxhmmpf 3000 \
-maxwpf 5

Current configuration:
[NAME] [DEFLT] [VALUE]
-agc none none
-agcthresh 2.0 2.000000e+00
-alpha 0.97 9.700000e-01
-argfile
-ascale 20.0 2.000000e+01
-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 /var/mobile/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app/teegeeMath.dic
-dictcase no no
-dither no no
-doublebw no no
-ds 1 1
-fdict /var/mobile/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app/noisedict
-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/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app
-input_endian little little
-jsgf
-kdmaxbbi -1 -1
-kdmaxdepth 0 0
-kdtree
-latsize 5000 5000
-lda
-ldadim 0 0
-lextreedump 0 0
-lifter 0 0
-lm /var/mobile/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app/teegeeMath.languagemodel
-lmctl
-lmname default default
-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 -1 3000
-maxnewoov 20 20
-maxwpf -1 5
-mdef
-mean
-mfclogdir
-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
-round_filters yes yes
-samprate 16000 1.600000e+04
-seed -1 -1
-sendump
-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
-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

2012-01-13 11:54:36.602 TeeGeeOpenEarsApp[7467:707] Pocketsphinx is starting up.
INFO: cmd_ln.c(512): Parsing command line:
\
-nfilt 20 \
-lowerf 1 \
-upperf 4000 \
-wlen 0.025 \
-transform dct \
-round_filters no \
-remove_dc yes \
-svspec 0-12/13-25/26-38 \
-feat 1s_c_d_dd \
-agc none \
-cmn current \
-cmninit 39 \
-varnorm no

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 39
-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 0
-logspec no no
-lowerf 133.33334 1.000000e+00
-ncep 13 13
-nfft 512 512
-nfilt 40 20
-remove_dc no yes
-round_filters yes no
-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 4.000000e+03
-varnorm no no
-verbose no no
-warp_params
-warp_type inverse_linear inverse_linear
-wlen 0.025625 2.500000e-02

INFO: acmod.c(238): Parsed model-specific feature parameters from /var/mobile/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app/feat.params
INFO: feat.c(848): Initializing feature stream to type: ’1s_c_d_dd’, ceplen=13, CMN=’current’, VARNORM=’no’, AGC=’none’
INFO: cmn.c(142): mean[0]= 12.00, mean[1..12]= 0.0
INFO: acmod.c(163): Using subvector specification 0-12/13-25/26-38
INFO: mdef.c(520): Reading model definition: /var/mobile/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app/mdef
INFO: mdef.c(531): Found byte-order mark BMDF, assuming this is a binary mdef file
INFO: bin_mdef.c(330): Reading binary model definition: /var/mobile/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app/mdef
INFO: bin_mdef.c(508): 50 CI-phone, 143047 CD-phone, 3 emitstate/phone, 150 CI-sen, 5150 Sen, 27135 Sen-Seq
INFO: tmat.c(205): Reading HMM transition probability matrices: /var/mobile/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app/transition_matrices
INFO: acmod.c(117): Attempting to use SCHMM computation module
INFO: ms_gauden.c(198): Reading mixture gaussian parameter: /var/mobile/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app/means
INFO: ms_gauden.c(292): 1 codebook, 3 feature, size

INFO: ms_gauden.c(198): Reading mixture gaussian parameter: /var/mobile/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app/variances
INFO: ms_gauden.c(292): 1 codebook, 3 feature, size

INFO: ms_gauden.c(358): 0 variance values floored
INFO: s2_semi_mgau.c(897): Loading senones from dump file /var/mobile/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app/sendump
INFO: s2_semi_mgau.c(921): BEGIN FILE FORMAT DESCRIPTION
INFO: s2_semi_mgau.c(1016): Using memory-mapped I/O for senones
INFO: s2_semi_mgau.c(1293): Maximum top-N: 4 Top-N beams: 0 0 0
INFO: dict.c(294): Allocating 4133 * 20 bytes (80 KiB) for word entries
INFO: dict.c(306): Reading main dictionary: /var/mobile/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app/teegeeMath.dic
INFO: dict.c(206): Allocated 0 KiB for strings, 0 KiB for phones
INFO: dict.c(309): 26 words read
INFO: dict.c(314): Reading filler dictionary: /var/mobile/Applications/1F294C81-6ECA-4138-9540-14B022F6417D/TeeGeeOpenEarsApp.app/noisedict
INFO: dict.c(206): Allocated 0 KiB for strings, 0 KiB for phones
INFO: dict.c(317): 11 words read
INFO: dict2pid.c(396): Building PID tables for dictionary
INFO: dict2pid.c(405): Allocating 50^3 * 2 bytes (244 KiB) for word-initial triphones
INFO: dict2pid.c(131): Allocated 30200 bytes (29 KiB) for word-final triphones
INFO: dict2pid.c(195): Allocated 30200 bytes (29 KiB) for single-phone word triphones
INFO: ngram_model_arpa.c(476): ngrams 1=24, 2=63, 3=61
INFO: ngram_model_arpa.c(135): Reading unigrams
INFO: ngram_model_arpa.c(515): 24 = #unigrams created
INFO: ngram_model_arpa.c(194): Reading bigrams
INFO: ngram_model_arpa.c(531): 63 = #bigrams created
INFO: ngram_model_arpa.c(532): 5 = #prob2 entries
INFO: ngram_model_arpa.c(539): 3 = #bo_wt2 entries
INFO: ngram_model_arpa.c(291): Reading trigrams
INFO: ngram_model_arpa.c(552): 61 = #trigrams created
INFO: ngram_model_arpa.c(553): 3 = #prob3 entries
INFO: ngram_search_fwdtree.c(99): 19 unique initial diphones
INFO: ngram_search_fwdtree.c(147): 0 root, 0 non-root channels, 12 single-phone words
INFO: ngram_search_fwdtree.c(186): Creating search tree
INFO: ngram_search_fwdtree.c(191): before: 0 root, 0 non-root channels, 12 single-phone words
INFO: ngram_search_fwdtree.c(324): after: max nonroot chan increased to 186
INFO: ngram_search_fwdtree.c(333): after: 19 root, 58 non-root channels, 11 single-phone words
INFO: ngram_search_fwdflat.c(153): fwdflat: min_ef_width = 4, max_sf_win = 25
2012-01-13 11:54:37.330 TeeGeeOpenEarsApp[7467:2407] OPENEARSLOGGING: Starting openAudioDevice on the device.
2012-01-13 11:54:37.334 TeeGeeOpenEarsApp[7467:2407] OPENEARSLOGGING: Audio unit wrapper successfully created.
2012-01-13 11:54:37.652 TeeGeeOpenEarsApp[7467:2407] OPENEARSLOGGING: Set audio route to ReceiverAndMicrophone
2012-01-13 11:54:37.676 TeeGeeOpenEarsApp[7467:2407] OPENEARSLOGGING: Setting the variables for the device and starting it.
2012-01-13 11:54:37.681 TeeGeeOpenEarsApp[7467:2407] OPENEARSLOGGING: Looping through ringbuffer sections and pre-allocating them.
2012-01-13 11:54:37.927 TeeGeeOpenEarsApp[7467:2407] OPENEARSLOGGING: Started audio output unit.
2012-01-13 11:54:37.931 TeeGeeOpenEarsApp[7467:2407] OPENEARSLOGGING: Calibration has started
2012-01-13 11:54:37.934 TeeGeeOpenEarsApp[7467:707] Pocketsphinx calibration has started.
2012-01-13 11:54:42.194 TeeGeeOpenEarsApp[7467:2407] OPENEARSLOGGING: Calibration has completed
2012-01-13 11:54:42.201 TeeGeeOpenEarsApp[7467:2407] OPENEARSLOGGING: Project has these words in its dictionary:
EIGHT
EIGHTEEN
ELEVEN
ELEVEN(2)
FIFTEEN
FIVE
FOUR
FOURTEEN
NEGATIVE
NINE
NINETEEN
ONE
ONE(2)
SEVEN
SEVENTEEN
SIX
SIXTEEN
TEN
THIRTEEN
THREE
TWELVE
TWENTY
TWENTY(2)
TWO
ZERO
ZERO(2)

2012-01-13 11:54:42.202 TeeGeeOpenEarsApp[7467:2407] OPENEARSLOGGING: Listening.

January 13, 2012 at 6:37 pm #8397

Halle

Welcome kasey,

I’ve never heard of this happening on a device as a result of using an AVAudioPlayer without there being a misconfigured AudioSessionManager, another audio session somewhere else in the app, or a different media object being used (such as AVPlayer). AVAudioPlayer is 100% compatible, since it is used for all Flite playback by OpenEars. My advice is to look for what is happening to the audio session. Have you confirmed that your AudioSessionManager instance is definitely getting started when the app loads? Can you replicate the identical volume issue when you use the sample app?

January 13, 2012 at 10:31 pm #8398

kasey

It turns out that I assumed that the AudioSessionManager was getting started, but I did a search in the log itself and realized that I completely forgot to allocate and initialize it.

I’m so sorry for bothering you, Halle! I feel like such an idiot now. Thanks so much for the help! You have such thorough and helpful instructions and examples!

  • This reply was modified 126 days ago by  kasey.
January 13, 2012 at 10:50 pm #8400

Halle

Glad to hear it’s working for you, and you’re welcome!

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

You must be logged in to reply to this topic.