Is there a way to overwrite the current language model file each time?
No, this wouldn’t work since the previous model is actually in use (see below). What you can do is simply delete a model once you are sure you’re done with it (i.e. not after you’ve switched to a new model, but after you’ve switched to the new model after the new model).
It takes a second or two during the ‘calibration’ phase to actually start listening
OK, this is the underlying issue. PocketsphinxController can instantly switch between models on the fly, it does not require starting and stopping. Check out the PocketsphinxController method
– there is a full example of its use in the sample app.