|
From: onkel b. <onk...@gm...> - 2013-01-30 10:04:26
|
Speech-to-text engine --> http://mikepultz.com/2011/03/accessing-google-speech-api-chrome-11/ When i speak and the engine gives a string back, my different modules check if special keywords are in the string (like "remind me" or "start pc one"). Then special action start (send a WOL packet or start a remind-me-skript) and i start a voiceoutput with a text-to-speech engine. But this all works fine! :) I use this micro for that: http://www.amazon.com/Audio-Technica-ATR-4697-Omnidirectional-Condenser-Microphone/dp/B002GR7INW/ref=cm_cr_pr_product_top With the command "rec -c 1 -r 16000 -t flac temp/rec$i.flac silence 1 0.1 7% 2 1.0 5%" the system stops nearly every 10 seconds the record in my environment and would send it to the internet. The robot should run 24/7 so it is not an alternative to send every 5 to 10 seconds files without content to the internet. Because of that i build the "Rough frequency"-Filter. >You can use a band filter to only record the frequency range >of the human voice, and then use the compander to make >the signal somehow uniformly strong Can you give me an example command for this? Maybe this could be an alternative to my "Rough frequency"-Filter when just voice will be recorded?! 2013/1/29 Jan Stary <ha...@st...> > On Jan 29 18:01:17, onk...@gm... wrote: > > Hello, > > > > i am programming an Voicerobot (in BASH and PERL) who can start PCs, > remind > > me of things, can tell me how the weather is and so on. (like JARVIS in > > Iron Man) Much more things will be added in future. > > > > The Robot is ready, but i have a problem with the record of my voice. For > > now i record the voice with following command: > > rec -c 1 -r 16000 -t flac temp/rec$i.flac silence 1 0.1 7% 2 1.0 5% > > (the flac format and 16k rate is given by the speech-to-text engine) > > What speech-to-text engine? > > > The recording of the voice work in a loop because he should listen all > the > > time and not when i push a button or something else. > > Ah, so it listens all the time, and when you speak a command, > it rewrites the command to an actual shell command, > and runs it. Right? > > > This work good in close ranges to the microphone. But when i go far away > > the speech-to-text engine isn't able to understand me. > > That's understandable. > What speech-to-text engine? > > > Because the speech-to-text engine is in the internet, i build a filter > just > > send records where voice is supposed. I grep the "Rough frequency:" > value > > of following command: > > sox temp/rec$i.flac -n stat > > You mean, you only send voice to be processed > if it is roughly in the spectrum of human speech, right? > > > Now my questions: > > Is there a way to determine if the voice is near or far away and when its > > far away, boost the voice frequency or something like that? > > There is weeak signal and strong signal, > whether it is due to the source being far away or not. > You can use a band filter to only record the frequency range > of the human voice, and then use the compander to make > the signal somehow uniformly strong. > > > > ------------------------------------------------------------------------------ > Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS, > MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current > with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft > MVPs and experts. ON SALE this month only -- learn more at: > http://p.sf.net/sfu/learnnow-d2d > _______________________________________________ > Sox-users mailing list > Sox...@li... > https://lists.sourceforge.net/lists/listinfo/sox-users > |