Author Topic: Volume Threshold  (Read 4728 times)

0 Members and 1 Guest are viewing this topic.

HJewkes

  • $upporter
  • Jr. Member
  • *****
  • Posts: 4
  • Karma: 0
    • View Profile
Volume Threshold
« on: June 22, 2012, 08:33:09 PM »
Is it possible to set a minimum volume threshold for recognizing commands - either through vox or windows?

I notice that most false readings come from much quieter ambient noise (music, tv, etc) than when I am actually issuing voice commands.

jitterjames

  • Administrator
  • Hero Member
  • *****
  • Posts: 7715
  • Karma: 116
    • View Profile
    • VoxCommando
Re: Volume Threshold
« Reply #1 on: June 22, 2012, 10:08:17 PM »
Hi HJewkes,  Welcome to the forum.  It is not possible with VoxCommando, and it is not something that I can do with the current toolset I am using (i.e. the Windows Speech Recognition Engine).  As far as I know there is no way to access the volume of speech for a given command.  Another "thread" would need to listen to the microphone and monitor the level and then pass that information to VoxCommando.  Then the question would be, would you look at the peak volume, at any possible moment in the period of time that the command was being issued, or would you look at the average volume (RMS maybe).  In any case it's a bit over my head and I think it would need to be done carefully to avoid putting too much extra load on the CPU, but perhaps there are some existing tools that could do it.

I think it's an interesting idea though, and I think you are right.  It is probably true that a lot of false positives occur when the volume is low.  If I think of a good way to implement it I'll try.  For now I'd recommend that you turn down your input level as much as possible.  You can get quite good recognition with a relatively low peak level and turning it down can help to eliminate a lot of background sounds.  Another possibility, if you are using an analog input would be to invest in some kind of a noise gate, but I haven't tried it personally!