Is Web Speech API Grammar exposed to developers?
Asked Answered
P

1

4

I am currently doing some RnD on Webkit Speech Recognition and I wanted to create an application specific grammar file. According W3C definition I wrote the following code. But it doesnt seem to show improved results in recognition for these words. Can you kindly provide some help with this.?

var recognition = new webkitSpeechRecognition(); recognition.grammars.addFromUri("voice/api_grammar/weight.grxml");

The grammar file is a simple file which looked like the following.

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE grammar PUBLIC "-//W3C//DTD GRAMMAR 1.0//EN"
                  "http://www.w3.org/TR/speech-grammar/grammar.dtd">

<grammar version="1.0"
         xmlns="http://www.w3.org/2001/06/grammar"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
         xsi:schemaLocation="http://www.w3.org/2001/06/grammar 
                             http://www.w3.org/TR/speech-grammar/grammar.xsd"
         xml:lang="en-US" mode="voice" root="sequence">

  <meta name='description' content='Example using examples'/>

  <meta name='in.1' content='sunny Yorktown Heights New York United States'/>
  <meta name='out.1' content='$sequence[$repeat[$alternatives["sunny"]],$ruleref[$token["Yorktown Heights"]],$Token["New","York"],$TOKEN["United States"]]'/>




  <rule id="ruleref">
    <example>"Yorktown Heights"</example>
    <ruleref uri="#token"/>
  </rule>

  <rule id="alternatives">
    <example>sunny</example>
    <example>cloudy</example>
    <example>warm</example>
    <example>cold</example>
    <one-of>
      <item> sunny </item>
      <item> cloudy </item>
      <item> warm </item>
      <item> cold </item>
    </one-of>
  </rule>

  <rule id="repeat">
   <example></example> <!-- for count=0 -->
   <example>warm</example>
   <example>warm sunny cloudy</example>
   <item repeat="0-3">
      <ruleref uri="#alternatives"/>
   </item>
  </rule>

  <rule id="sequence">
    <example>
      warm sunny cloudy "Yorktown Heights" New York "United States"
    </example>
    <example>
      warm sunny cloudy   Yorktown   Heights   New York United
            States
    </example>
    <example> <!-- this example is actually wrong but that is legal -->
      warm sunny cloudy "Yorktown   Heights" New York "United States"
    </example>

    <ruleref uri="#repeat"/> <ruleref uri="#ruleref"/>
    <ruleref uri="#Token"/> <ruleref uri="#TOKEN"/>    
  </rule>

</grammar>
Portmanteau answered 2/6, 2013 at 14:18 Comment(2)
Can anyone give some support regarding the above q? if any more description is needed, it can certainly be done. thanks.Portmanteau
Possible duplicate of Is there a way to use a grammar with the HTML 5 speech input API?Neocene
H
2

Though w3c specified the grammar for web speech it is not yet implemented by google chrome.

Horologist answered 27/6, 2013 at 10:30 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.