Question

I'm looking for a way to record my voice and - according to the recorded voice - move an animation towards left or right.

I heard HTML5 has an Audio API through which you can record your voice, but I have no idea how to do that.

I will be thankful to everyone who can help me or come up with some solutions, suggestions, code or guidelines to resolve this issue.

Was it helpful?

Solution

on webkit-browsers you can use the get user media api with webkitGetUserMedia - like demonstrated on html5rocks.
if you want to use your voice to create javascript events (e.g. to control objects on the screen) you would have to analyze the incoming sound (e.g. high frequency for event1 - low frequency for event2, speech analysis is much more complicated, see below)

alternatively, there is chrome's 'x-webkit-speech' speech recognition, (see an example here), which will analyze speech on google's servers and is therefore probably too slow for real-time control.

I don't know of any real-time speech analysis in the browser, but would be happy to find a (even very basic) possibility.

edit: adds some code (adapted from here)

<html>
  <head>
  </head
  <body>
    <input type="search" id="mike" x-webkit-speech>
    <script type="text/javascript">
      var mike = document.getElementById('mike');
      mike.onwebkitspeechchange = function(e) {
        console.log(e); // SpeechInputEvent
        console.log(e.results[0].utterance);
      };
    </script>
  </body>
</html>
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top