什么是Chrome的实施HTML5语音识别API的语言代码?(What are language c

2019-08-06 07:50发布

Chrome浏览器实现的HTML5语音识别API。 许多语言的支持。 我想知道哪些语言的支持这是在HTML元素的使用,并且每种语言的代码对应lang属性。

例如:

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

谢谢!

Answer 1:

好吧,如果它没有发布,我们可以尝试至少想出解决办法。 让我把这个表开始,如果有人有更多的信息,我们会完善它。

我做的是支持的语言应为类似的语音搜索支持和,谷歌使用标准的语言代码,这是否始终在其服务的假设。

我抬头语言通过语音搜索支持维基百科

我发现语言代码在这里 ,对谷歌的语言设置页面 ,并在这里

编辑:我尝试用后端的语音识别服务。 我已经运行了一系列在那里我已经通过了相同的英文语音样本的API,但每次都指定了不同方言的测试。 看起来像:

  • 如果语言不支持,认可回落到EN-US(看起来像它识别出该样本是英文)
  • 如果不支持的话(或不存在)的认可回落到主方言或EN-US在某些情况下,
  • 主方言可以很标识符第一部分被指定。 所以,“EN-US”和“EN”给出了相同的结果。
  • 承认有些语言,如中国和日本给出的结果在英语,EN-US,虽然,这是奇怪的不同。 可能样品是不同的非常多来自中国,服务也聪明地明白这一点。

我把方言作为支持的,如果承认给出了EN-US和主要方言的语言不同的结果。 尽管如此,以验证它100%,我们需要为每种语言运行样品。

传说

  • +最重要的支持,因为测试给出了EN-US名称和主要方言不同的结果。
  • .+维基百科上缺席,但最重要的是支持的,因为测试结果给出了EN-US名称和主要方言不同。
  • +? 最重要的,因为它是在维基百科上列出的支持。 但在我的样本测试结果给出了相同的主要方言。 因此,无论这是一个coinsidense或语言代码是错误的。
  • .+? 未上市的维基百科,但看起来像支持,因为测试结果给出了EN-US名称和主要方言不同。

语言

  • +南非AF
  • +巴斯克欧盟
  • +保加利亚语bg
  • +加泰罗尼亚CA
  • +阿拉伯语(埃及)AR-EG
  • +? 阿拉伯语(约旦)AR-JO
  • +阿拉伯(科威特)AR-KW
  • +? 阿拉伯语(黎巴嫩)AR-LB
  • +阿拉伯语(卡塔尔)AR-QA
  • +阿拉伯(UAE)AR-AE
  • .+阿拉伯(摩洛哥)AR-MA
  • .+阿拉伯语(伊拉克)AR-IQ
  • .+阿拉伯(阿尔及利亚)AR-DZ
  • .+阿拉伯(巴林)AR-BH
  • .+阿拉伯(利比亚)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
  • +拉丁
  • +华中国ZH-CN
  • +台湾传统ZH-TW
  • +? 简化中国ZH-CN?
  • +简体香港ZH-HK
  • +乐中国(繁体香港)ZH跃
  • +马来西亚MS-MY
  • +挪威禁忌
  • +波兰语pl
  • +? 猪拉丁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-美国
  • +西班牙语(乌拉圭)ES-UY
  • +西班牙语(委内瑞拉)ES-VE
  • +瑞典语sv-SE
  • +土耳其语tr
  • +祖鲁语


Answer 2:

我知道这是一个老帖子,但由于这些信息是烦人的很难找到,我想我会发布的人名单谁可能会寻找。 如果你发现任何错误或遗漏,请留言。

{
  "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



Answer 3:

使用下面的代码来获取所有可用的声音在你的浏览器中的语音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语音API(虽然Safari浏览器只支持文本到语音功能)。 奇怪的是火狐OS支持TTS,但浏览器的版本没有。

语言列表取决于你是根据双方的文档和我的测试(用户代理相关)的浏览器。

在Safari中你也可以得到很多的语言(我相信超过40)。 在Chrome中,在这个时候你会得到如下列表:

语音0谷歌美国英语未定义

音色1谷歌英国英男未定义

语音2谷歌英国英语女未定义

声音3谷歌西班牙语未定义

谷歌语音4法国未定义

语音5谷歌意大利语未定义

语音6谷歌德语未定义

Voice 7 Google 日本人 undefined

话音8谷歌한국의未定义

Voice 9 Google 中国的 undefined

语音10本地未定义



Answer 4:

在这里,你必须在LinkedHashMap中,你可以获取价值@TimHayes。 即时通讯使用的LinkedHashMap这样我就可以拿到地图的位置。

    LinkedHashMap<String,String> country = new LinkedHashMap<String,String>();


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


文章来源: What are language codes in Chrome's implementation of the HTML5 speech recognition API?