Chrome实施HTML5语音识别API的语言代码是什么?

时间:2013-01-10 12:07:52

标签: html5 google-chrome speech-recognition voice voice-recognition

Chrome实施了HTML5语音识别API。支持多种语言。我想知道支持哪些语言以及HTML元素的lang属性中使用的每种语言的相应代码。

例如:

  • 波兰语(pl-PL)
  • 土耳其语(tr-TR)

谢谢!

3 个答案:

答案 0 :(得分:49)

好的,如果没有发布,我们可以尝试至少解决这个问题。 让我把这个表放在开头,如果有人有更多的信息我们会改进它。

我假设支持的语言与语音搜索支持的语言类似,谷歌使用标准语言代码并在其服务中保持一致。

我在wikipedia

上查找了语音搜索支持的语言

我在heregoogle language settings page

上找到了语言代码here

修改 我尝试过后端语音识别服务。我已经进行了一系列测试,我将相同的英语演讲样本传递给了API,但每次都指定了不同的方言。它看起来像:

  • 如果不支持某种语言,则识别会回溯到en-US(看起来它认为该样本是英文的)
  • 如果不支持(或不存在)方言,在某些情况下,识别会回归到主要方言或en-US
  • 主要方言可以指定为标识符的第一部分。所以' en-US'和' en'给出相同的结果。
  • 对某些语言(如中文和日文)的识别会产生英语结果,但与en-US不同,这很奇怪。可能这个样本与中文有很大的不同,服务很聪明,可以解决这个问题。

如果识别与en-US和语言的主要方言有不同的结果,我会将方言视为支持。尽管如此,要100%验证它,我们需要为每种语言运行样本。

<强>图例

  • +大部分都支持,因为测试结果与en-US和主要方言不同。
  • .+在维基百科上缺席,但大部分都支持,因为测试结果与en-US和主要方言不同。
  • +?最重要的是支持,因为它列在维基百科上。但是对我的样本进行测试会得到与主要方言相同的结果。所以无论是硬币还是语言代码都是错误的。
  • .+?未在维基百科上列出但看起来支持,因为测试结果与en-US和主要方言不同。

语言

  • +南非荷兰语 af
  • +巴斯克语欧盟
  • +保加利亚语 bg
  • +加泰罗尼亚语 ca
  • +阿拉伯语(埃及) ar-EG
  • +?阿拉伯语(约旦) ar-JO
  • +阿拉伯语(科威特) ar-KW
  • +?阿拉伯语(黎巴嫩) ar-LB
  • +阿拉伯语(卡塔尔) ar-QA
  • +阿拉伯语(阿联酋) ar-AE
  • .+阿拉伯语(摩洛哥) ar-MA
  • .+阿拉伯语(伊拉克语) ar-IQ
  • .+阿拉伯语(阿尔及利亚) ar-DZ
  • .+阿拉伯语(巴林) ar-BH
  • .+阿拉伯语(Lybia) ar-LY
  • .+阿拉伯语(阿曼) ar-OM
  • .+阿拉伯语(沙特阿拉伯) ar-SA
  • .+阿拉伯语(突尼斯) ar-TN
  • .+阿拉伯语(也门) ar-YE
  • +捷克语 cs
  • +荷兰语 nl-NL
  • +英语(澳大利亚) en-AU
  • +?英语(加拿大) en-CA
  • +英语(印度) en-IN
  • +英语(新西兰) en-NZ
  • +英语(南非) en-ZA
  • +英语(英国) en-GB
  • +英语(美国) en-US
  • +芬兰语 fi
  • +法语 fr-FR
  • +加利西亚 gl
  • +德语 de-DE
  • +希伯来语​​
  • +匈牙利语 hu
  • +冰岛语
  • +意大利语 it-IT
  • +印尼语 id
  • +日语 ja
  • +韩语 ko
  • +拉丁语 la
  • +普通话 zh-CN
  • +传统台湾 zh-TW
  • +?简体中文 zh-CN
  • +简化香港 zh-HK
  • +悦华人(繁体香港) zh-yue
  • +马来西亚 ms-MY
  • +挪威语 no-NO
  • +波兰语 pl
  • +? Pig Latin xx-piglatin
  • +葡萄牙语 pt-PT
  • .+葡萄牙语(巴西) pt-BR
  • +罗马尼亚语 ro-RO
  • +俄语 ru
  • +塞尔维亚语 sr-SP
  • +斯洛伐克 sk
  • +西班牙语(阿根廷) es-AR
  • +西班牙语(玻利维亚) es-BO
  • +?西班牙语(智利) es-CL
  • +?西班牙语(哥伦比亚) es-CO
  • +?西班牙语(哥斯达黎加) es-CR
  • +西班牙语(多米尼加共和国) es-DO
  • +西班牙语(厄瓜多尔) es-EC
  • +西班牙语(萨尔瓦多) es-SV
  • +西班牙语(危地马拉) es-GT
  • +西班牙语(洪都拉斯) es-HN
  • +西班牙语(墨西哥) es-MX
  • +西班牙语(尼加拉瓜) es-NI
  • +西班牙语(巴拿马) es-PA
  • +西班牙文(巴拉圭) es-PY
  • +西班牙语(秘鲁) es-PE
  • +西班牙语(波多黎各) es-PR
  • +西班牙语(西班牙) es-ES
  • +西班牙语(美国) es-US
  • +西班牙文(乌拉圭) es-UY
  • +西班牙语(委内瑞拉) es-VE
  • +瑞典语 sv-SE
  • +土耳其语 tr
  • + Zulu zu

答案 1 :(得分:9)

我知道这是一篇旧帖子,但由于这些信息很难找到,我以为我会为可能正在寻找的人发布一个列表。如果您发现任何错误或遗漏,请留言。

{
  "Afrikaans": [
    ["South Africa", "af-ZA"]
  ],
  "Arabic" : [
    ["Algeria","ar-DZ"],
    ["Bahrain","ar-BH"],
    ["Egypt","ar-EG"],
    ["Israel","ar-IL"],
    ["Iraq","ar-IQ"],
    ["Jordan","ar-JO"],
    ["Kuwait","ar-KW"],
    ["Lebanon","ar-LB"],
    ["Morocco","ar-MA"],
    ["Oman","ar-OM"],
    ["Palestinian Territory","ar-PS"],
    ["Qatar","ar-QA"],
    ["Saudi Arabia","ar-SA"],
    ["Tunisia","ar-TN"],
    ["UAE","ar-AE"]
  ],
  "Basque": [
    ["Spain", "eu-ES"]
  ],
  "Bulgarian": [
    ["Bulgaria", "bg-BG"]
  ],
  "Catalan": [
    ["Spain", "ca-ES"]
  ],
  "Chinese Mandarin": [
    ["China (Simp.)", "cmn-Hans-CN"],
    ["Hong Kong SAR (Trad.)", "cmn-Hans-HK"],
    ["Taiwan (Trad.)", "cmn-Hant-TW"]
  ],
  "Chinese Cantonese": [
    ["Hong Kong", "yue-Hant-HK"]
  ],
  "Croatian": [
    ["Croatia", "hr_HR"]
  ],
  "Czech": [
    ["Czech Republic", "cs-CZ"]
  ],
  "Danish": [
    ["Denmark", "da-DK"]
  ],
  "English": [
    ["Australia", "en-AU"],
    ["Canada", "en-CA"],
    ["India", "en-IN"],
    ["Ireland", "en-IE"],
    ["New Zealand", "en-NZ"],
    ["Philippines", "en-PH"],
    ["South Africa", "en-ZA"],
    ["United Kingdom", "en-GB"],
    ["United States", "en-US"]
  ],
  "Farsi": [
    ["Iran", "fa-IR"]
  ],
  "French": [
    ["France", "fr-FR"]
  ],
  "Filipino": [
    ["Philippines", "fil-PH"]
  ],
  "Galician": [
    ["Spain", "gl-ES"]
  ],
  "German": [
    ["Germany", "de-DE"]
  ],
  "Greek": [
    ["Greece", "el-GR"]
  ],
  "Finnish": [
    ["Finland", "fi-FI"]
  ],
  "Hebrew" :[
    ["Israel", "he-IL"]
  ],
  "Hindi": [
    ["India", "hi-IN"]
  ],
  "Hungarian": [
    ["Hungary", "hu-HU"]
  ],
  "Indonesian": [
    ["Indonesia", "id-ID"]
  ],
  "Icelandic": [
    ["Iceland", "is-IS"]
  ],
  "Italian": [
    ["Italy", "it-IT"],
    ["Switzerland", "it-CH"]
  ],
  "Japanese": [
    ["Japan", "ja-JP"]
  ],
  "Korean": [
    ["Korea", "ko-KR"]
  ],
  "Lithuanian": [
    ["Lithuania", "lt-LT"]
  ],
  "Malaysian": [
    ["Malaysia", "ms-MY"]
  ],
  "Dutch": [
    ["Netherlands", "nl-NL"]
  ],
  "Norwegian": [
    ["Norway", "nb-NO"]
  ],
  "Polish": [
    ["Poland", "pl-PL"]
  ],
  "Portuguese": [
    ["Brazil", "pt-BR"],
    ["Portugal", "pt-PT"]
  ],
  "Romanian": [
    ["Romania", "ro-RO"]
  ],
  "Russian": [
    ["Russia", "ru-RU"]
  ],
  "Serbian": [
    ["Serbia", "sr-RS"]
  ],
  "Slovak": [
    ["Slovakia", "sk-SK"]
  ],
  "Slovenian": [
    ["Slovenia", "sl-SI"]
  ],
  "Spanish": [
    ["Argentina", "es-AR"],
    ["Bolivia", "es-BO"],
    ["Chile", "es-CL"],
    ["Colombia", "es-CO"],
    ["Costa Rica", "es-CR"],
    ["Dominican Republic", "es-DO"],
    ["Ecuador", "es-EC"],
    ["El Salvador", "es-SV"],
    ["Guatemala", "es-GT"],
    ["Honduras", "es-HN"],
    ["México", "es-MX"],
    ["Nicaragua", "es-NI"],
    ["Panamá", "es-PA"],
    ["Paraguay", "es-PY"],
    ["Perú", "es-PE"],
    ["Puerto Rico", "es-PR"],
    ["Spain", "es-ES"],
    ["Uruguay", "es-UY"],
    ["United States", "es-US"],
    ["Venezuela", "es-VE"]
  ],
  "Swedish": [
    ["Sweden", "sv-SE"]
  ],
  "Thai": [
    ["Thailand", "th-TH"]
  ],
  "Turkish": [
    ["Turkey", "tr-TR"]
  ],
  "Ukrainian": [
    ["Ukraine", "uk-UA"]
  ],
  "Vietnamese": [
    ["Viet Nam", "vi-VN"]
  ],
  "Zulu": [
    ["South Africa", "zu-ZA"]
  ]
}

编辑:我也找到了这个列表,这可能是更新的: https://cloud.google.com/speech-to-text/docs/languages

答案 2 :(得分:4)

使用以下代码在浏览器中获取语音API的所有可用语音:

var voices = speechSynthesis.getVoices();
      for(var i = 0; i < voices.length; i++ ) {
        console.log("Voice " + i.toString() + ' ' + voices[i].name + ' ' + voices[i].uri);
      }

此时只有Chrome和Safari支持Web Speech API(尽管Safari仅支持文本到语音功能)。奇怪的是,Firefox OS支持TTS,但浏览器版本不支持。

根据文档和我的测试(依赖于用户代理),语言列表取决于您使用的浏览器。

在Safari中你也可以获得很多语言(我相信超过40种)。在Chrome中,此时您会看到以下列表:

语音0 Google美国英语未定义

Voice 1 Google UK English Male undefined

Voice 2 Google UK English Female undefined

Voice 3GoogleEspañolundefined

Voice 4GoogleFrançaisundefined

Voice 5 Google Italiano undefined

Voice 6 Google Deutsch undefined

Voice 7 Google日本人未定义

Voice 8 Google한국의undefined

Voice 9 Google中国的未定义

Voice 10 native undefined