Michael Hansen commited on
Commit
5e74c24
1 Parent(s): 058271f

Expand voices.json with language names

Browse files
Files changed (2) hide show
  1. _script/voicefest.py +57 -2
  2. voices.json +664 -83
_script/voicefest.py CHANGED
@@ -2,12 +2,50 @@
2
  import hashlib
3
  import json
4
  import unittest
 
5
  from pathlib import Path
6
 
7
  _DIR = Path(__file__).parent
8
  _REPO_DIR = _DIR.parent
9
 
10
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
11
  class VoiceTest(unittest.TestCase):
12
  def test_voices(self):
13
  for onnx_path in _REPO_DIR.rglob("*.onnx"):
@@ -52,6 +90,7 @@ class VoiceTest(unittest.TestCase):
52
  self.assertEqual(
53
  quality_dir.name, config["audio"]["quality"], "Wrong quality dir"
54
  )
 
55
 
56
  # Verify file names
57
  file_lang_code, file_dataset, file_quality = onnx_path.stem.split("-")
@@ -83,7 +122,14 @@ def write_voices_json():
83
  # {
84
  # "<family>_<region>-<dataset>-<quality>": {
85
  # "name": "<dataset>",
86
- # "language": "<family>_<region>",
 
 
 
 
 
 
 
87
  # "quality": "<quality>", // x_low, low, medium, high
88
  # "num_speakers": int,
89
  # "speaker_id_map": {
@@ -111,6 +157,8 @@ def write_voices_json():
111
  quality = config["audio"]["quality"]
112
  dataset = config["dataset"]
113
  lang_code = config["language"]["code"]
 
 
114
  voice_key = f"{lang_code}-{dataset}-{quality}"
115
 
116
  model_card_path = voice_dir / "MODEL_CARD"
@@ -118,7 +166,14 @@ def write_voices_json():
118
 
119
  voices[voice_key] = {
120
  "name": dataset,
121
- "language": lang_code,
 
 
 
 
 
 
 
122
  "quality": quality,
123
  "num_speakers": config["num_speakers"],
124
  "speaker_id_map": config.get("speaker_id_map", {}),
 
2
  import hashlib
3
  import json
4
  import unittest
5
+ from dataclasses import dataclass
6
  from pathlib import Path
7
 
8
  _DIR = Path(__file__).parent
9
  _REPO_DIR = _DIR.parent
10
 
11
 
12
+ @dataclass
13
+ class Language:
14
+ native: str
15
+ english: str
16
+ country: str
17
+
18
+
19
+ _LANGUAGES = {
20
+ "ca_ES": Language("Català", "Catalan", "Spain"),
21
+ "da_DK": Language("Dansk", "Danish", "Denmark"),
22
+ "de_DE": Language("Deutsch", "German", "Germany"),
23
+ "el_GR": Language("Ελληνικά", "Greek", "Greece"),
24
+ "en_GB": Language("English", "English", "Great Britain"),
25
+ "en_US": Language("English", "English", "United States"),
26
+ "es_ES": Language("Español", "Spanish", "Spain"),
27
+ "es_MX": Language("Español", "Spanish", "Mexico"),
28
+ "fi_FI": Language("Suomi", "Finnish", "Finland"),
29
+ "fr_FR": Language("Français", "French", "France"),
30
+ "is_IS": Language("íslenska", "Icelandic", "Iceland"),
31
+ "it_IT": Language("Italiano", "Italian", "Italy"),
32
+ "ka_GE": Language("ქართული ენა", "Georgian", "Georgia"),
33
+ "kk_KZ": Language("қазақша", "Kazakh", "Kazakhstan"),
34
+ "ne_NP": Language("नेपाली", "Nepali", "Nepal"),
35
+ "nl_BE": Language("Nederlands", "Dutch", "Belgium"),
36
+ "nl_NL": Language("Nederlands", "Dutch", "Netherlands"),
37
+ "no_NO": Language("Norsk", "Norwegian", "Norway"),
38
+ "pl_PL": Language("Polski", "Polish", "Poland"),
39
+ "pt_BR": Language("Português", "Portuguese", "Brazil"),
40
+ "ru_RU": Language("Русский", "Russian", "Russia"),
41
+ "sv_SE": Language("Svenska", "Swedish", "Sweden"),
42
+ "sw_CD": Language("Kiswahili", "Swahili", "Democratic Republic of the Congo"),
43
+ "uk_UA": Language("украї́нська мо́ва", "Ukrainian", "Ukraine"),
44
+ "vi_VN": Language("Tiếng Việt", "Vietnamese", "Vietnam"),
45
+ "zh_CN": Language("简体中文", "Chinese", "China"),
46
+ }
47
+
48
+
49
  class VoiceTest(unittest.TestCase):
50
  def test_voices(self):
51
  for onnx_path in _REPO_DIR.rglob("*.onnx"):
 
90
  self.assertEqual(
91
  quality_dir.name, config["audio"]["quality"], "Wrong quality dir"
92
  )
93
+ self.assertIn(lang_code_dir.name, _LANGUAGES, "Unknown language code")
94
 
95
  # Verify file names
96
  file_lang_code, file_dataset, file_quality = onnx_path.stem.split("-")
 
122
  # {
123
  # "<family>_<region>-<dataset>-<quality>": {
124
  # "name": "<dataset>",
125
+ # "language": {
126
+ # "code": "<family>_<region>",
127
+ # "family": "<family>",
128
+ # "region": "<region>",
129
+ # "name_native": "<native>",
130
+ # "name_english": "<english>",
131
+ # "country_english": "<country>",
132
+ # },
133
  # "quality": "<quality>", // x_low, low, medium, high
134
  # "num_speakers": int,
135
  # "speaker_id_map": {
 
157
  quality = config["audio"]["quality"]
158
  dataset = config["dataset"]
159
  lang_code = config["language"]["code"]
160
+ lang_family, lang_region = lang_code.split("_", maxsplit=1)
161
+ lang_names = _LANGUAGES[lang_code]
162
  voice_key = f"{lang_code}-{dataset}-{quality}"
163
 
164
  model_card_path = voice_dir / "MODEL_CARD"
 
166
 
167
  voices[voice_key] = {
168
  "name": dataset,
169
+ "language": {
170
+ "code": lang_code,
171
+ "family": lang_family,
172
+ "region": lang_region,
173
+ "name_native": lang_names.native,
174
+ "name_english": lang_names.english,
175
+ "country_english": lang_names.country,
176
+ },
177
  "quality": quality,
178
  "num_speakers": config["num_speakers"],
179
  "speaker_id_map": config.get("speaker_id_map", {}),
voices.json CHANGED
@@ -1,7 +1,14 @@
1
  {
2
  "zh_CN-huayan-x_low": {
3
  "name": "huayan",
4
- "language": "zh_CN",
 
 
 
 
 
 
 
5
  "quality": "x_low",
6
  "num_speakers": 1,
7
  "speaker_id_map": {},
@@ -22,7 +29,14 @@
22
  },
23
  "zh_CN-huayan-medium": {
24
  "name": "huayan",
25
- "language": "zh_CN",
 
 
 
 
 
 
 
26
  "quality": "medium",
27
  "num_speakers": 1,
28
  "speaker_id_map": {},
@@ -43,7 +57,14 @@
43
  },
44
  "ru_RU-irina-medium": {
45
  "name": "irina",
46
- "language": "ru_RU",
 
 
 
 
 
 
 
47
  "quality": "medium",
48
  "num_speakers": 1,
49
  "speaker_id_map": {},
@@ -64,7 +85,14 @@
64
  },
65
  "ru_RU-dmitri-medium": {
66
  "name": "dmitri",
67
- "language": "ru_RU",
 
 
 
 
 
 
 
68
  "quality": "medium",
69
  "num_speakers": 1,
70
  "speaker_id_map": {},
@@ -85,7 +113,14 @@
85
  },
86
  "ru_RU-denis-medium": {
87
  "name": "denis",
88
- "language": "ru_RU",
 
 
 
 
 
 
 
89
  "quality": "medium",
90
  "num_speakers": 1,
91
  "speaker_id_map": {},
@@ -106,7 +141,14 @@
106
  },
107
  "ru_RU-ruslan-medium": {
108
  "name": "ruslan",
109
- "language": "ru_RU",
 
 
 
 
 
 
 
110
  "quality": "medium",
111
  "num_speakers": 1,
112
  "speaker_id_map": {},
@@ -127,7 +169,14 @@
127
  },
128
  "nl_BE-nathalie-x_low": {
129
  "name": "nathalie",
130
- "language": "nl_BE",
 
 
 
 
 
 
 
131
  "quality": "x_low",
132
  "num_speakers": 1,
133
  "speaker_id_map": {},
@@ -148,7 +197,14 @@
148
  },
149
  "nl_BE-nathalie-medium": {
150
  "name": "nathalie",
151
- "language": "nl_BE",
 
 
 
 
 
 
 
152
  "quality": "medium",
153
  "num_speakers": 1,
154
  "speaker_id_map": {},
@@ -169,7 +225,14 @@
169
  },
170
  "nl_BE-rdh-x_low": {
171
  "name": "rdh",
172
- "language": "nl_BE",
 
 
 
 
 
 
 
173
  "quality": "x_low",
174
  "num_speakers": 1,
175
  "speaker_id_map": {},
@@ -190,7 +253,14 @@
190
  },
191
  "nl_BE-rdh-medium": {
192
  "name": "rdh",
193
- "language": "nl_BE",
 
 
 
 
 
 
 
194
  "quality": "medium",
195
  "num_speakers": 1,
196
  "speaker_id_map": {},
@@ -211,7 +281,14 @@
211
  },
212
  "nl_NL-mls_7432-low": {
213
  "name": "mls_7432",
214
- "language": "nl_NL",
 
 
 
 
 
 
 
215
  "quality": "low",
216
  "num_speakers": 1,
217
  "speaker_id_map": {},
@@ -232,7 +309,14 @@
232
  },
233
  "nl_NL-mls_5809-low": {
234
  "name": "mls_5809",
235
- "language": "nl_NL",
 
 
 
 
 
 
 
236
  "quality": "low",
237
  "num_speakers": 1,
238
  "speaker_id_map": {},
@@ -253,7 +337,14 @@
253
  },
254
  "it_IT-riccardo-x_low": {
255
  "name": "riccardo",
256
- "language": "it_IT",
 
 
 
 
 
 
 
257
  "quality": "x_low",
258
  "num_speakers": 1,
259
  "speaker_id_map": {},
@@ -274,7 +365,14 @@
274
  },
275
  "ne_NP-google-x_low": {
276
  "name": "google",
277
- "language": "ne_NP",
 
 
 
 
 
 
 
278
  "quality": "x_low",
279
  "num_speakers": 18,
280
  "speaker_id_map": {
@@ -314,7 +412,14 @@
314
  },
315
  "ne_NP-google-medium": {
316
  "name": "google",
317
- "language": "ne_NP",
 
 
 
 
 
 
 
318
  "quality": "medium",
319
  "num_speakers": 18,
320
  "speaker_id_map": {
@@ -354,7 +459,14 @@
354
  },
355
  "el_GR-rapunzelina-low": {
356
  "name": "rapunzelina",
357
- "language": "el_GR",
 
 
 
 
 
 
 
358
  "quality": "low",
359
  "num_speakers": 1,
360
  "speaker_id_map": {},
@@ -375,7 +487,14 @@
375
  },
376
  "kk_KZ-issai-high": {
377
  "name": "issai",
378
- "language": "kk_KZ",
 
 
 
 
 
 
 
379
  "quality": "high",
380
  "num_speakers": 6,
381
  "speaker_id_map": {
@@ -403,7 +522,14 @@
403
  },
404
  "kk_KZ-raya-x_low": {
405
  "name": "raya",
406
- "language": "kk_KZ",
 
 
 
 
 
 
 
407
  "quality": "x_low",
408
  "num_speakers": 1,
409
  "speaker_id_map": {},
@@ -424,7 +550,14 @@
424
  },
425
  "kk_KZ-iseke-x_low": {
426
  "name": "iseke",
427
- "language": "kk_KZ",
 
 
 
 
 
 
 
428
  "quality": "x_low",
429
  "num_speakers": 1,
430
  "speaker_id_map": {},
@@ -445,7 +578,14 @@
445
  },
446
  "pt_BR-faber-medium": {
447
  "name": "faber",
448
- "language": "pt_BR",
 
 
 
 
 
 
 
449
  "quality": "medium",
450
  "num_speakers": 1,
451
  "speaker_id_map": {},
@@ -466,7 +606,14 @@
466
  },
467
  "pt_BR-edresson-low": {
468
  "name": "edresson",
469
- "language": "pt_BR",
 
 
 
 
 
 
 
470
  "quality": "low",
471
  "num_speakers": 1,
472
  "speaker_id_map": {},
@@ -487,7 +634,14 @@
487
  },
488
  "de_DE-eva_k-x_low": {
489
  "name": "eva_k",
490
- "language": "de_DE",
 
 
 
 
 
 
 
491
  "quality": "x_low",
492
  "num_speakers": 1,
493
  "speaker_id_map": {},
@@ -508,7 +662,14 @@
508
  },
509
  "de_DE-pavoque-low": {
510
  "name": "pavoque",
511
- "language": "de_DE",
 
 
 
 
 
 
 
512
  "quality": "low",
513
  "num_speakers": 1,
514
  "speaker_id_map": {},
@@ -529,7 +690,14 @@
529
  },
530
  "de_DE-kerstin-low": {
531
  "name": "kerstin",
532
- "language": "de_DE",
 
 
 
 
 
 
 
533
  "quality": "low",
534
  "num_speakers": 1,
535
  "speaker_id_map": {},
@@ -550,7 +718,14 @@
550
  },
551
  "de_DE-thorsten-low": {
552
  "name": "thorsten",
553
- "language": "de_DE",
 
 
 
 
 
 
 
554
  "quality": "low",
555
  "num_speakers": 1,
556
  "speaker_id_map": {},
@@ -571,7 +746,14 @@
571
  },
572
  "de_DE-thorsten-medium": {
573
  "name": "thorsten",
574
- "language": "de_DE",
 
 
 
 
 
 
 
575
  "quality": "medium",
576
  "num_speakers": 1,
577
  "speaker_id_map": {},
@@ -592,7 +774,14 @@
592
  },
593
  "de_DE-ramona-low": {
594
  "name": "ramona",
595
- "language": "de_DE",
 
 
 
 
 
 
 
596
  "quality": "low",
597
  "num_speakers": 1,
598
  "speaker_id_map": {},
@@ -613,7 +802,14 @@
613
  },
614
  "de_DE-karlsson-low": {
615
  "name": "karlsson",
616
- "language": "de_DE",
 
 
 
 
 
 
 
617
  "quality": "low",
618
  "num_speakers": 1,
619
  "speaker_id_map": {},
@@ -634,7 +830,14 @@
634
  },
635
  "da_DK-talesyntese-medium": {
636
  "name": "talesyntese",
637
- "language": "da_DK",
 
 
 
 
 
 
 
638
  "quality": "medium",
639
  "num_speakers": 1,
640
  "speaker_id_map": {},
@@ -655,7 +858,14 @@
655
  },
656
  "is_IS-ugla-medium": {
657
  "name": "ugla",
658
- "language": "is_IS",
 
 
 
 
 
 
 
659
  "quality": "medium",
660
  "num_speakers": 1,
661
  "speaker_id_map": {},
@@ -676,7 +886,14 @@
676
  },
677
  "is_IS-salka-medium": {
678
  "name": "salka",
679
- "language": "is_IS",
 
 
 
 
 
 
 
680
  "quality": "medium",
681
  "num_speakers": 1,
682
  "speaker_id_map": {},
@@ -697,7 +914,14 @@
697
  },
698
  "is_IS-steinn-medium": {
699
  "name": "steinn",
700
- "language": "is_IS",
 
 
 
 
 
 
 
701
  "quality": "medium",
702
  "num_speakers": 1,
703
  "speaker_id_map": {},
@@ -718,7 +942,14 @@
718
  },
719
  "is_IS-bui-medium": {
720
  "name": "bui",
721
- "language": "is_IS",
 
 
 
 
 
 
 
722
  "quality": "medium",
723
  "num_speakers": 1,
724
  "speaker_id_map": {},
@@ -739,7 +970,14 @@
739
  },
740
  "vi_VN-vivos-x_low": {
741
  "name": "vivos",
742
- "language": "vi_VN",
 
 
 
 
 
 
 
743
  "quality": "x_low",
744
  "num_speakers": 65,
745
  "speaker_id_map": {
@@ -826,7 +1064,14 @@
826
  },
827
  "vi_VN-25hours_single-low": {
828
  "name": "25hours_single",
829
- "language": "vi_VN",
 
 
 
 
 
 
 
830
  "quality": "low",
831
  "num_speakers": 1,
832
  "speaker_id_map": {},
@@ -847,7 +1092,14 @@
847
  },
848
  "vi_VN-vais1000-medium": {
849
  "name": "vais1000",
850
- "language": "vi_VN",
 
 
 
 
 
 
 
851
  "quality": "medium",
852
  "num_speakers": 1,
853
  "speaker_id_map": {},
@@ -868,7 +1120,14 @@
868
  },
869
  "sv_SE-nst-medium": {
870
  "name": "nst",
871
- "language": "sv_SE",
 
 
 
 
 
 
 
872
  "quality": "medium",
873
  "num_speakers": 1,
874
  "speaker_id_map": {},
@@ -889,7 +1148,14 @@
889
  },
890
  "ca_ES-upc_ona-x_low": {
891
  "name": "upc_ona",
892
- "language": "ca_ES",
 
 
 
 
 
 
 
893
  "quality": "x_low",
894
  "num_speakers": 1,
895
  "speaker_id_map": {},
@@ -910,7 +1176,14 @@
910
  },
911
  "ca_ES-upc_ona-medium": {
912
  "name": "upc_ona",
913
- "language": "ca_ES",
 
 
 
 
 
 
 
914
  "quality": "medium",
915
  "num_speakers": 1,
916
  "speaker_id_map": {},
@@ -931,7 +1204,14 @@
931
  },
932
  "ca_ES-upc_pau-x_low": {
933
  "name": "upc_pau",
934
- "language": "ca_ES",
 
 
 
 
 
 
 
935
  "quality": "x_low",
936
  "num_speakers": 1,
937
  "speaker_id_map": {},
@@ -952,7 +1232,14 @@
952
  },
953
  "en_GB-southern_english_female-low": {
954
  "name": "southern_english_female",
955
- "language": "en_GB",
 
 
 
 
 
 
 
956
  "quality": "low",
957
  "num_speakers": 1,
958
  "speaker_id_map": {},
@@ -973,7 +1260,14 @@
973
  },
974
  "en_GB-northern_english_male-medium": {
975
  "name": "northern_english_male",
976
- "language": "en_GB",
 
 
 
 
 
 
 
977
  "quality": "medium",
978
  "num_speakers": 1,
979
  "speaker_id_map": {},
@@ -994,7 +1288,14 @@
994
  },
995
  "en_GB-alba-medium": {
996
  "name": "alba",
997
- "language": "en_GB",
 
 
 
 
 
 
 
998
  "quality": "medium",
999
  "num_speakers": 1,
1000
  "speaker_id_map": {},
@@ -1015,7 +1316,14 @@
1015
  },
1016
  "en_GB-vctk-medium": {
1017
  "name": "vctk",
1018
- "language": "en_GB",
 
 
 
 
 
 
 
1019
  "quality": "medium",
1020
  "num_speakers": 109,
1021
  "speaker_id_map": {
@@ -1146,7 +1454,14 @@
1146
  },
1147
  "en_GB-alan-low": {
1148
  "name": "alan",
1149
- "language": "en_GB",
 
 
 
 
 
 
 
1150
  "quality": "low",
1151
  "num_speakers": 1,
1152
  "speaker_id_map": {},
@@ -1167,7 +1482,14 @@
1167
  },
1168
  "en_GB-alan-medium": {
1169
  "name": "alan",
1170
- "language": "en_GB",
 
 
 
 
 
 
 
1171
  "quality": "medium",
1172
  "num_speakers": 1,
1173
  "speaker_id_map": {},
@@ -1188,7 +1510,14 @@
1188
  },
1189
  "en_GB-aru-medium": {
1190
  "name": "aru",
1191
- "language": "en_GB",
 
 
 
 
 
 
 
1192
  "quality": "medium",
1193
  "num_speakers": 12,
1194
  "speaker_id_map": {
@@ -1222,7 +1551,14 @@
1222
  },
1223
  "en_GB-jenny_dioco-medium": {
1224
  "name": "jenny_dioco",
1225
- "language": "en_GB",
 
 
 
 
 
 
 
1226
  "quality": "medium",
1227
  "num_speakers": 1,
1228
  "speaker_id_map": {},
@@ -1243,7 +1579,14 @@
1243
  },
1244
  "en_US-kusal-medium": {
1245
  "name": "kusal",
1246
- "language": "en_US",
 
 
 
 
 
 
 
1247
  "quality": "medium",
1248
  "num_speakers": 1,
1249
  "speaker_id_map": {},
@@ -1264,7 +1607,14 @@
1264
  },
1265
  "en_US-libritts-high": {
1266
  "name": "libritts",
1267
- "language": "en_US",
 
 
 
 
 
 
 
1268
  "quality": "high",
1269
  "num_speakers": 904,
1270
  "speaker_id_map": {
@@ -2190,7 +2540,14 @@
2190
  },
2191
  "en_US-l2arctic-medium": {
2192
  "name": "l2arctic",
2193
- "language": "en_US",
 
 
 
 
 
 
 
2194
  "quality": "medium",
2195
  "num_speakers": 24,
2196
  "speaker_id_map": {
@@ -2236,7 +2593,14 @@
2236
  },
2237
  "en_US-kathleen-low": {
2238
  "name": "kathleen",
2239
- "language": "en_US",
 
 
 
 
 
 
 
2240
  "quality": "low",
2241
  "num_speakers": 1,
2242
  "speaker_id_map": {},
@@ -2257,7 +2621,14 @@
2257
  },
2258
  "en_US-amy-low": {
2259
  "name": "amy",
2260
- "language": "en_US",
 
 
 
 
 
 
 
2261
  "quality": "low",
2262
  "num_speakers": 1,
2263
  "speaker_id_map": {},
@@ -2278,7 +2649,14 @@
2278
  },
2279
  "en_US-amy-medium": {
2280
  "name": "amy",
2281
- "language": "en_US",
 
 
 
 
 
 
 
2282
  "quality": "medium",
2283
  "num_speakers": 1,
2284
  "speaker_id_map": {},
@@ -2299,7 +2677,14 @@
2299
  },
2300
  "en_US-ryan-low": {
2301
  "name": "ryan",
2302
- "language": "en_US",
 
 
 
 
 
 
 
2303
  "quality": "low",
2304
  "num_speakers": 1,
2305
  "speaker_id_map": {},
@@ -2320,7 +2705,14 @@
2320
  },
2321
  "en_US-ryan-high": {
2322
  "name": "ryan",
2323
- "language": "en_US",
 
 
 
 
 
 
 
2324
  "quality": "high",
2325
  "num_speakers": 1,
2326
  "speaker_id_map": {},
@@ -2341,7 +2733,14 @@
2341
  },
2342
  "en_US-ryan-medium": {
2343
  "name": "ryan",
2344
- "language": "en_US",
 
 
 
 
 
 
 
2345
  "quality": "medium",
2346
  "num_speakers": 1,
2347
  "speaker_id_map": {},
@@ -2362,7 +2761,14 @@
2362
  },
2363
  "en_US-danny-low": {
2364
  "name": "danny",
2365
- "language": "en_US",
 
 
 
 
 
 
 
2366
  "quality": "low",
2367
  "num_speakers": 1,
2368
  "speaker_id_map": {},
@@ -2383,7 +2789,14 @@
2383
  },
2384
  "en_US-arctic-medium": {
2385
  "name": "arctic",
2386
- "language": "en_US",
 
 
 
 
 
 
 
2387
  "quality": "medium",
2388
  "num_speakers": 18,
2389
  "speaker_id_map": {
@@ -2423,7 +2836,14 @@
2423
  },
2424
  "en_US-lessac-low": {
2425
  "name": "lessac",
2426
- "language": "en_US",
 
 
 
 
 
 
 
2427
  "quality": "low",
2428
  "num_speakers": 1,
2429
  "speaker_id_map": {},
@@ -2444,7 +2864,14 @@
2444
  },
2445
  "en_US-lessac-high": {
2446
  "name": "lessac",
2447
- "language": "en_US",
 
 
 
 
 
 
 
2448
  "quality": "high",
2449
  "num_speakers": 1,
2450
  "speaker_id_map": {},
@@ -2465,7 +2892,14 @@
2465
  },
2466
  "en_US-lessac-medium": {
2467
  "name": "lessac",
2468
- "language": "en_US",
 
 
 
 
 
 
 
2469
  "quality": "medium",
2470
  "num_speakers": 1,
2471
  "speaker_id_map": {},
@@ -2486,7 +2920,14 @@
2486
  },
2487
  "en_US-joe-medium": {
2488
  "name": "joe",
2489
- "language": "en_US",
 
 
 
 
 
 
 
2490
  "quality": "medium",
2491
  "num_speakers": 1,
2492
  "speaker_id_map": {},
@@ -2507,7 +2948,14 @@
2507
  },
2508
  "es_MX-ald-medium": {
2509
  "name": "ald",
2510
- "language": "es_MX",
 
 
 
 
 
 
 
2511
  "quality": "medium",
2512
  "num_speakers": 1,
2513
  "speaker_id_map": {},
@@ -2528,7 +2976,14 @@
2528
  },
2529
  "es_ES-davefx-medium": {
2530
  "name": "davefx",
2531
- "language": "es_ES",
 
 
 
 
 
 
 
2532
  "quality": "medium",
2533
  "num_speakers": 1,
2534
  "speaker_id_map": {},
@@ -2549,7 +3004,14 @@
2549
  },
2550
  "es_ES-mls_9972-low": {
2551
  "name": "mls_9972",
2552
- "language": "es_ES",
 
 
 
 
 
 
 
2553
  "quality": "low",
2554
  "num_speakers": 1,
2555
  "speaker_id_map": {},
@@ -2570,7 +3032,14 @@
2570
  },
2571
  "es_ES-sharvard-medium": {
2572
  "name": "sharvard",
2573
- "language": "es_ES",
 
 
 
 
 
 
 
2574
  "quality": "medium",
2575
  "num_speakers": 2,
2576
  "speaker_id_map": {
@@ -2594,7 +3063,14 @@
2594
  },
2595
  "es_ES-carlfm-x_low": {
2596
  "name": "carlfm",
2597
- "language": "es_ES",
 
 
 
 
 
 
 
2598
  "quality": "x_low",
2599
  "num_speakers": 1,
2600
  "speaker_id_map": {},
@@ -2615,7 +3091,14 @@
2615
  },
2616
  "es_ES-mls_10246-low": {
2617
  "name": "mls_10246",
2618
- "language": "es_ES",
 
 
 
 
 
 
 
2619
  "quality": "low",
2620
  "num_speakers": 1,
2621
  "speaker_id_map": {},
@@ -2636,7 +3119,14 @@
2636
  },
2637
  "uk_UA-lada-x_low": {
2638
  "name": "lada",
2639
- "language": "uk_UA",
 
 
 
 
 
 
 
2640
  "quality": "x_low",
2641
  "num_speakers": 1,
2642
  "speaker_id_map": {},
@@ -2657,7 +3147,14 @@
2657
  },
2658
  "uk_UA-ukrainian_tts-medium": {
2659
  "name": "ukrainian_tts",
2660
- "language": "uk_UA",
 
 
 
 
 
 
 
2661
  "quality": "medium",
2662
  "num_speakers": 3,
2663
  "speaker_id_map": {
@@ -2682,7 +3179,14 @@
2682
  },
2683
  "sw_CD-lanfrica-medium": {
2684
  "name": "lanfrica",
2685
- "language": "sw_CD",
 
 
 
 
 
 
 
2686
  "quality": "medium",
2687
  "num_speakers": 1,
2688
  "speaker_id_map": {},
@@ -2703,7 +3207,14 @@
2703
  },
2704
  "fr_FR-siwis-low": {
2705
  "name": "siwis",
2706
- "language": "fr_FR",
 
 
 
 
 
 
 
2707
  "quality": "low",
2708
  "num_speakers": 1,
2709
  "speaker_id_map": {},
@@ -2724,7 +3235,14 @@
2724
  },
2725
  "fr_FR-siwis-medium": {
2726
  "name": "siwis",
2727
- "language": "fr_FR",
 
 
 
 
 
 
 
2728
  "quality": "medium",
2729
  "num_speakers": 1,
2730
  "speaker_id_map": {},
@@ -2745,7 +3263,14 @@
2745
  },
2746
  "fr_FR-mls_1840-low": {
2747
  "name": "mls_1840",
2748
- "language": "fr_FR",
 
 
 
 
 
 
 
2749
  "quality": "low",
2750
  "num_speakers": 1,
2751
  "speaker_id_map": {},
@@ -2766,7 +3291,14 @@
2766
  },
2767
  "fr_FR-gilles-low": {
2768
  "name": "gilles",
2769
- "language": "fr_FR",
 
 
 
 
 
 
 
2770
  "quality": "low",
2771
  "num_speakers": 1,
2772
  "speaker_id_map": {},
@@ -2787,7 +3319,14 @@
2787
  },
2788
  "fi_FI-harri-low": {
2789
  "name": "harri",
2790
- "language": "fi_FI",
 
 
 
 
 
 
 
2791
  "quality": "low",
2792
  "num_speakers": 1,
2793
  "speaker_id_map": {},
@@ -2808,7 +3347,14 @@
2808
  },
2809
  "fi_FI-harri-medium": {
2810
  "name": "harri",
2811
- "language": "fi_FI",
 
 
 
 
 
 
 
2812
  "quality": "medium",
2813
  "num_speakers": 1,
2814
  "speaker_id_map": {},
@@ -2829,7 +3375,14 @@
2829
  },
2830
  "ka_GE-natia-medium": {
2831
  "name": "natia",
2832
- "language": "ka_GE",
 
 
 
 
 
 
 
2833
  "quality": "medium",
2834
  "num_speakers": 1,
2835
  "speaker_id_map": {},
@@ -2850,7 +3403,14 @@
2850
  },
2851
  "pl_PL-darkman-medium": {
2852
  "name": "darkman",
2853
- "language": "pl_PL",
 
 
 
 
 
 
 
2854
  "quality": "medium",
2855
  "num_speakers": 1,
2856
  "speaker_id_map": {},
@@ -2871,7 +3431,14 @@
2871
  },
2872
  "pl_PL-mls_6892-low": {
2873
  "name": "mls_6892",
2874
- "language": "pl_PL",
 
 
 
 
 
 
 
2875
  "quality": "low",
2876
  "num_speakers": 1,
2877
  "speaker_id_map": {},
@@ -2892,7 +3459,14 @@
2892
  },
2893
  "pl_PL-gosia-medium": {
2894
  "name": "gosia",
2895
- "language": "pl_PL",
 
 
 
 
 
 
 
2896
  "quality": "medium",
2897
  "num_speakers": 1,
2898
  "speaker_id_map": {},
@@ -2913,7 +3487,14 @@
2913
  },
2914
  "no_NO-talesyntese-medium": {
2915
  "name": "talesyntese",
2916
- "language": "no_NO",
 
 
 
 
 
 
 
2917
  "quality": "medium",
2918
  "num_speakers": 1,
2919
  "speaker_id_map": {},
 
1
  {
2
  "zh_CN-huayan-x_low": {
3
  "name": "huayan",
4
+ "language": {
5
+ "code": "zh_CN",
6
+ "family": "zh",
7
+ "region": "CN",
8
+ "name_native": "简体中文",
9
+ "name_english": "Chinese",
10
+ "country_english": "China"
11
+ },
12
  "quality": "x_low",
13
  "num_speakers": 1,
14
  "speaker_id_map": {},
 
29
  },
30
  "zh_CN-huayan-medium": {
31
  "name": "huayan",
32
+ "language": {
33
+ "code": "zh_CN",
34
+ "family": "zh",
35
+ "region": "CN",
36
+ "name_native": "简体中文",
37
+ "name_english": "Chinese",
38
+ "country_english": "China"
39
+ },
40
  "quality": "medium",
41
  "num_speakers": 1,
42
  "speaker_id_map": {},
 
57
  },
58
  "ru_RU-irina-medium": {
59
  "name": "irina",
60
+ "language": {
61
+ "code": "ru_RU",
62
+ "family": "ru",
63
+ "region": "RU",
64
+ "name_native": "Русский",
65
+ "name_english": "Russian",
66
+ "country_english": "Russia"
67
+ },
68
  "quality": "medium",
69
  "num_speakers": 1,
70
  "speaker_id_map": {},
 
85
  },
86
  "ru_RU-dmitri-medium": {
87
  "name": "dmitri",
88
+ "language": {
89
+ "code": "ru_RU",
90
+ "family": "ru",
91
+ "region": "RU",
92
+ "name_native": "Русский",
93
+ "name_english": "Russian",
94
+ "country_english": "Russia"
95
+ },
96
  "quality": "medium",
97
  "num_speakers": 1,
98
  "speaker_id_map": {},
 
113
  },
114
  "ru_RU-denis-medium": {
115
  "name": "denis",
116
+ "language": {
117
+ "code": "ru_RU",
118
+ "family": "ru",
119
+ "region": "RU",
120
+ "name_native": "Русский",
121
+ "name_english": "Russian",
122
+ "country_english": "Russia"
123
+ },
124
  "quality": "medium",
125
  "num_speakers": 1,
126
  "speaker_id_map": {},
 
141
  },
142
  "ru_RU-ruslan-medium": {
143
  "name": "ruslan",
144
+ "language": {
145
+ "code": "ru_RU",
146
+ "family": "ru",
147
+ "region": "RU",
148
+ "name_native": "Русский",
149
+ "name_english": "Russian",
150
+ "country_english": "Russia"
151
+ },
152
  "quality": "medium",
153
  "num_speakers": 1,
154
  "speaker_id_map": {},
 
169
  },
170
  "nl_BE-nathalie-x_low": {
171
  "name": "nathalie",
172
+ "language": {
173
+ "code": "nl_BE",
174
+ "family": "nl",
175
+ "region": "BE",
176
+ "name_native": "Nederlands",
177
+ "name_english": "Dutch",
178
+ "country_english": "Belgium"
179
+ },
180
  "quality": "x_low",
181
  "num_speakers": 1,
182
  "speaker_id_map": {},
 
197
  },
198
  "nl_BE-nathalie-medium": {
199
  "name": "nathalie",
200
+ "language": {
201
+ "code": "nl_BE",
202
+ "family": "nl",
203
+ "region": "BE",
204
+ "name_native": "Nederlands",
205
+ "name_english": "Dutch",
206
+ "country_english": "Belgium"
207
+ },
208
  "quality": "medium",
209
  "num_speakers": 1,
210
  "speaker_id_map": {},
 
225
  },
226
  "nl_BE-rdh-x_low": {
227
  "name": "rdh",
228
+ "language": {
229
+ "code": "nl_BE",
230
+ "family": "nl",
231
+ "region": "BE",
232
+ "name_native": "Nederlands",
233
+ "name_english": "Dutch",
234
+ "country_english": "Belgium"
235
+ },
236
  "quality": "x_low",
237
  "num_speakers": 1,
238
  "speaker_id_map": {},
 
253
  },
254
  "nl_BE-rdh-medium": {
255
  "name": "rdh",
256
+ "language": {
257
+ "code": "nl_BE",
258
+ "family": "nl",
259
+ "region": "BE",
260
+ "name_native": "Nederlands",
261
+ "name_english": "Dutch",
262
+ "country_english": "Belgium"
263
+ },
264
  "quality": "medium",
265
  "num_speakers": 1,
266
  "speaker_id_map": {},
 
281
  },
282
  "nl_NL-mls_7432-low": {
283
  "name": "mls_7432",
284
+ "language": {
285
+ "code": "nl_NL",
286
+ "family": "nl",
287
+ "region": "NL",
288
+ "name_native": "Nederlands",
289
+ "name_english": "Dutch",
290
+ "country_english": "Netherlands"
291
+ },
292
  "quality": "low",
293
  "num_speakers": 1,
294
  "speaker_id_map": {},
 
309
  },
310
  "nl_NL-mls_5809-low": {
311
  "name": "mls_5809",
312
+ "language": {
313
+ "code": "nl_NL",
314
+ "family": "nl",
315
+ "region": "NL",
316
+ "name_native": "Nederlands",
317
+ "name_english": "Dutch",
318
+ "country_english": "Netherlands"
319
+ },
320
  "quality": "low",
321
  "num_speakers": 1,
322
  "speaker_id_map": {},
 
337
  },
338
  "it_IT-riccardo-x_low": {
339
  "name": "riccardo",
340
+ "language": {
341
+ "code": "it_IT",
342
+ "family": "it",
343
+ "region": "IT",
344
+ "name_native": "Italiano",
345
+ "name_english": "Italian",
346
+ "country_english": "Italy"
347
+ },
348
  "quality": "x_low",
349
  "num_speakers": 1,
350
  "speaker_id_map": {},
 
365
  },
366
  "ne_NP-google-x_low": {
367
  "name": "google",
368
+ "language": {
369
+ "code": "ne_NP",
370
+ "family": "ne",
371
+ "region": "NP",
372
+ "name_native": "नेपाली",
373
+ "name_english": "Nepali",
374
+ "country_english": "Nepal"
375
+ },
376
  "quality": "x_low",
377
  "num_speakers": 18,
378
  "speaker_id_map": {
 
412
  },
413
  "ne_NP-google-medium": {
414
  "name": "google",
415
+ "language": {
416
+ "code": "ne_NP",
417
+ "family": "ne",
418
+ "region": "NP",
419
+ "name_native": "नेपाली",
420
+ "name_english": "Nepali",
421
+ "country_english": "Nepal"
422
+ },
423
  "quality": "medium",
424
  "num_speakers": 18,
425
  "speaker_id_map": {
 
459
  },
460
  "el_GR-rapunzelina-low": {
461
  "name": "rapunzelina",
462
+ "language": {
463
+ "code": "el_GR",
464
+ "family": "el",
465
+ "region": "GR",
466
+ "name_native": "Ελληνικά",
467
+ "name_english": "Greek",
468
+ "country_english": "Greece"
469
+ },
470
  "quality": "low",
471
  "num_speakers": 1,
472
  "speaker_id_map": {},
 
487
  },
488
  "kk_KZ-issai-high": {
489
  "name": "issai",
490
+ "language": {
491
+ "code": "kk_KZ",
492
+ "family": "kk",
493
+ "region": "KZ",
494
+ "name_native": "қазақша",
495
+ "name_english": "Kazakh",
496
+ "country_english": "Kazakhstan"
497
+ },
498
  "quality": "high",
499
  "num_speakers": 6,
500
  "speaker_id_map": {
 
522
  },
523
  "kk_KZ-raya-x_low": {
524
  "name": "raya",
525
+ "language": {
526
+ "code": "kk_KZ",
527
+ "family": "kk",
528
+ "region": "KZ",
529
+ "name_native": "қазақша",
530
+ "name_english": "Kazakh",
531
+ "country_english": "Kazakhstan"
532
+ },
533
  "quality": "x_low",
534
  "num_speakers": 1,
535
  "speaker_id_map": {},
 
550
  },
551
  "kk_KZ-iseke-x_low": {
552
  "name": "iseke",
553
+ "language": {
554
+ "code": "kk_KZ",
555
+ "family": "kk",
556
+ "region": "KZ",
557
+ "name_native": "қазақша",
558
+ "name_english": "Kazakh",
559
+ "country_english": "Kazakhstan"
560
+ },
561
  "quality": "x_low",
562
  "num_speakers": 1,
563
  "speaker_id_map": {},
 
578
  },
579
  "pt_BR-faber-medium": {
580
  "name": "faber",
581
+ "language": {
582
+ "code": "pt_BR",
583
+ "family": "pt",
584
+ "region": "BR",
585
+ "name_native": "Português",
586
+ "name_english": "Portuguese",
587
+ "country_english": "Brazil"
588
+ },
589
  "quality": "medium",
590
  "num_speakers": 1,
591
  "speaker_id_map": {},
 
606
  },
607
  "pt_BR-edresson-low": {
608
  "name": "edresson",
609
+ "language": {
610
+ "code": "pt_BR",
611
+ "family": "pt",
612
+ "region": "BR",
613
+ "name_native": "Português",
614
+ "name_english": "Portuguese",
615
+ "country_english": "Brazil"
616
+ },
617
  "quality": "low",
618
  "num_speakers": 1,
619
  "speaker_id_map": {},
 
634
  },
635
  "de_DE-eva_k-x_low": {
636
  "name": "eva_k",
637
+ "language": {
638
+ "code": "de_DE",
639
+ "family": "de",
640
+ "region": "DE",
641
+ "name_native": "Deutsch",
642
+ "name_english": "German",
643
+ "country_english": "Germany"
644
+ },
645
  "quality": "x_low",
646
  "num_speakers": 1,
647
  "speaker_id_map": {},
 
662
  },
663
  "de_DE-pavoque-low": {
664
  "name": "pavoque",
665
+ "language": {
666
+ "code": "de_DE",
667
+ "family": "de",
668
+ "region": "DE",
669
+ "name_native": "Deutsch",
670
+ "name_english": "German",
671
+ "country_english": "Germany"
672
+ },
673
  "quality": "low",
674
  "num_speakers": 1,
675
  "speaker_id_map": {},
 
690
  },
691
  "de_DE-kerstin-low": {
692
  "name": "kerstin",
693
+ "language": {
694
+ "code": "de_DE",
695
+ "family": "de",
696
+ "region": "DE",
697
+ "name_native": "Deutsch",
698
+ "name_english": "German",
699
+ "country_english": "Germany"
700
+ },
701
  "quality": "low",
702
  "num_speakers": 1,
703
  "speaker_id_map": {},
 
718
  },
719
  "de_DE-thorsten-low": {
720
  "name": "thorsten",
721
+ "language": {
722
+ "code": "de_DE",
723
+ "family": "de",
724
+ "region": "DE",
725
+ "name_native": "Deutsch",
726
+ "name_english": "German",
727
+ "country_english": "Germany"
728
+ },
729
  "quality": "low",
730
  "num_speakers": 1,
731
  "speaker_id_map": {},
 
746
  },
747
  "de_DE-thorsten-medium": {
748
  "name": "thorsten",
749
+ "language": {
750
+ "code": "de_DE",
751
+ "family": "de",
752
+ "region": "DE",
753
+ "name_native": "Deutsch",
754
+ "name_english": "German",
755
+ "country_english": "Germany"
756
+ },
757
  "quality": "medium",
758
  "num_speakers": 1,
759
  "speaker_id_map": {},
 
774
  },
775
  "de_DE-ramona-low": {
776
  "name": "ramona",
777
+ "language": {
778
+ "code": "de_DE",
779
+ "family": "de",
780
+ "region": "DE",
781
+ "name_native": "Deutsch",
782
+ "name_english": "German",
783
+ "country_english": "Germany"
784
+ },
785
  "quality": "low",
786
  "num_speakers": 1,
787
  "speaker_id_map": {},
 
802
  },
803
  "de_DE-karlsson-low": {
804
  "name": "karlsson",
805
+ "language": {
806
+ "code": "de_DE",
807
+ "family": "de",
808
+ "region": "DE",
809
+ "name_native": "Deutsch",
810
+ "name_english": "German",
811
+ "country_english": "Germany"
812
+ },
813
  "quality": "low",
814
  "num_speakers": 1,
815
  "speaker_id_map": {},
 
830
  },
831
  "da_DK-talesyntese-medium": {
832
  "name": "talesyntese",
833
+ "language": {
834
+ "code": "da_DK",
835
+ "family": "da",
836
+ "region": "DK",
837
+ "name_native": "Dansk",
838
+ "name_english": "Danish",
839
+ "country_english": "Denmark"
840
+ },
841
  "quality": "medium",
842
  "num_speakers": 1,
843
  "speaker_id_map": {},
 
858
  },
859
  "is_IS-ugla-medium": {
860
  "name": "ugla",
861
+ "language": {
862
+ "code": "is_IS",
863
+ "family": "is",
864
+ "region": "IS",
865
+ "name_native": "íslenska",
866
+ "name_english": "Icelandic",
867
+ "country_english": "Iceland"
868
+ },
869
  "quality": "medium",
870
  "num_speakers": 1,
871
  "speaker_id_map": {},
 
886
  },
887
  "is_IS-salka-medium": {
888
  "name": "salka",
889
+ "language": {
890
+ "code": "is_IS",
891
+ "family": "is",
892
+ "region": "IS",
893
+ "name_native": "íslenska",
894
+ "name_english": "Icelandic",
895
+ "country_english": "Iceland"
896
+ },
897
  "quality": "medium",
898
  "num_speakers": 1,
899
  "speaker_id_map": {},
 
914
  },
915
  "is_IS-steinn-medium": {
916
  "name": "steinn",
917
+ "language": {
918
+ "code": "is_IS",
919
+ "family": "is",
920
+ "region": "IS",
921
+ "name_native": "íslenska",
922
+ "name_english": "Icelandic",
923
+ "country_english": "Iceland"
924
+ },
925
  "quality": "medium",
926
  "num_speakers": 1,
927
  "speaker_id_map": {},
 
942
  },
943
  "is_IS-bui-medium": {
944
  "name": "bui",
945
+ "language": {
946
+ "code": "is_IS",
947
+ "family": "is",
948
+ "region": "IS",
949
+ "name_native": "íslenska",
950
+ "name_english": "Icelandic",
951
+ "country_english": "Iceland"
952
+ },
953
  "quality": "medium",
954
  "num_speakers": 1,
955
  "speaker_id_map": {},
 
970
  },
971
  "vi_VN-vivos-x_low": {
972
  "name": "vivos",
973
+ "language": {
974
+ "code": "vi_VN",
975
+ "family": "vi",
976
+ "region": "VN",
977
+ "name_native": "Tiếng Việt",
978
+ "name_english": "Vietnamese",
979
+ "country_english": "Vietnam"
980
+ },
981
  "quality": "x_low",
982
  "num_speakers": 65,
983
  "speaker_id_map": {
 
1064
  },
1065
  "vi_VN-25hours_single-low": {
1066
  "name": "25hours_single",
1067
+ "language": {
1068
+ "code": "vi_VN",
1069
+ "family": "vi",
1070
+ "region": "VN",
1071
+ "name_native": "Tiếng Việt",
1072
+ "name_english": "Vietnamese",
1073
+ "country_english": "Vietnam"
1074
+ },
1075
  "quality": "low",
1076
  "num_speakers": 1,
1077
  "speaker_id_map": {},
 
1092
  },
1093
  "vi_VN-vais1000-medium": {
1094
  "name": "vais1000",
1095
+ "language": {
1096
+ "code": "vi_VN",
1097
+ "family": "vi",
1098
+ "region": "VN",
1099
+ "name_native": "Tiếng Việt",
1100
+ "name_english": "Vietnamese",
1101
+ "country_english": "Vietnam"
1102
+ },
1103
  "quality": "medium",
1104
  "num_speakers": 1,
1105
  "speaker_id_map": {},
 
1120
  },
1121
  "sv_SE-nst-medium": {
1122
  "name": "nst",
1123
+ "language": {
1124
+ "code": "sv_SE",
1125
+ "family": "sv",
1126
+ "region": "SE",
1127
+ "name_native": "Svenska",
1128
+ "name_english": "Swedish",
1129
+ "country_english": "Sweden"
1130
+ },
1131
  "quality": "medium",
1132
  "num_speakers": 1,
1133
  "speaker_id_map": {},
 
1148
  },
1149
  "ca_ES-upc_ona-x_low": {
1150
  "name": "upc_ona",
1151
+ "language": {
1152
+ "code": "ca_ES",
1153
+ "family": "ca",
1154
+ "region": "ES",
1155
+ "name_native": "Català",
1156
+ "name_english": "Catalan",
1157
+ "country_english": "Spain"
1158
+ },
1159
  "quality": "x_low",
1160
  "num_speakers": 1,
1161
  "speaker_id_map": {},
 
1176
  },
1177
  "ca_ES-upc_ona-medium": {
1178
  "name": "upc_ona",
1179
+ "language": {
1180
+ "code": "ca_ES",
1181
+ "family": "ca",
1182
+ "region": "ES",
1183
+ "name_native": "Català",
1184
+ "name_english": "Catalan",
1185
+ "country_english": "Spain"
1186
+ },
1187
  "quality": "medium",
1188
  "num_speakers": 1,
1189
  "speaker_id_map": {},
 
1204
  },
1205
  "ca_ES-upc_pau-x_low": {
1206
  "name": "upc_pau",
1207
+ "language": {
1208
+ "code": "ca_ES",
1209
+ "family": "ca",
1210
+ "region": "ES",
1211
+ "name_native": "Català",
1212
+ "name_english": "Catalan",
1213
+ "country_english": "Spain"
1214
+ },
1215
  "quality": "x_low",
1216
  "num_speakers": 1,
1217
  "speaker_id_map": {},
 
1232
  },
1233
  "en_GB-southern_english_female-low": {
1234
  "name": "southern_english_female",
1235
+ "language": {
1236
+ "code": "en_GB",
1237
+ "family": "en",
1238
+ "region": "GB",
1239
+ "name_native": "English",
1240
+ "name_english": "English",
1241
+ "country_english": "Great Britain"
1242
+ },
1243
  "quality": "low",
1244
  "num_speakers": 1,
1245
  "speaker_id_map": {},
 
1260
  },
1261
  "en_GB-northern_english_male-medium": {
1262
  "name": "northern_english_male",
1263
+ "language": {
1264
+ "code": "en_GB",
1265
+ "family": "en",
1266
+ "region": "GB",
1267
+ "name_native": "English",
1268
+ "name_english": "English",
1269
+ "country_english": "Great Britain"
1270
+ },
1271
  "quality": "medium",
1272
  "num_speakers": 1,
1273
  "speaker_id_map": {},
 
1288
  },
1289
  "en_GB-alba-medium": {
1290
  "name": "alba",
1291
+ "language": {
1292
+ "code": "en_GB",
1293
+ "family": "en",
1294
+ "region": "GB",
1295
+ "name_native": "English",
1296
+ "name_english": "English",
1297
+ "country_english": "Great Britain"
1298
+ },
1299
  "quality": "medium",
1300
  "num_speakers": 1,
1301
  "speaker_id_map": {},
 
1316
  },
1317
  "en_GB-vctk-medium": {
1318
  "name": "vctk",
1319
+ "language": {
1320
+ "code": "en_GB",
1321
+ "family": "en",
1322
+ "region": "GB",
1323
+ "name_native": "English",
1324
+ "name_english": "English",
1325
+ "country_english": "Great Britain"
1326
+ },
1327
  "quality": "medium",
1328
  "num_speakers": 109,
1329
  "speaker_id_map": {
 
1454
  },
1455
  "en_GB-alan-low": {
1456
  "name": "alan",
1457
+ "language": {
1458
+ "code": "en_GB",
1459
+ "family": "en",
1460
+ "region": "GB",
1461
+ "name_native": "English",
1462
+ "name_english": "English",
1463
+ "country_english": "Great Britain"
1464
+ },
1465
  "quality": "low",
1466
  "num_speakers": 1,
1467
  "speaker_id_map": {},
 
1482
  },
1483
  "en_GB-alan-medium": {
1484
  "name": "alan",
1485
+ "language": {
1486
+ "code": "en_GB",
1487
+ "family": "en",
1488
+ "region": "GB",
1489
+ "name_native": "English",
1490
+ "name_english": "English",
1491
+ "country_english": "Great Britain"
1492
+ },
1493
  "quality": "medium",
1494
  "num_speakers": 1,
1495
  "speaker_id_map": {},
 
1510
  },
1511
  "en_GB-aru-medium": {
1512
  "name": "aru",
1513
+ "language": {
1514
+ "code": "en_GB",
1515
+ "family": "en",
1516
+ "region": "GB",
1517
+ "name_native": "English",
1518
+ "name_english": "English",
1519
+ "country_english": "Great Britain"
1520
+ },
1521
  "quality": "medium",
1522
  "num_speakers": 12,
1523
  "speaker_id_map": {
 
1551
  },
1552
  "en_GB-jenny_dioco-medium": {
1553
  "name": "jenny_dioco",
1554
+ "language": {
1555
+ "code": "en_GB",
1556
+ "family": "en",
1557
+ "region": "GB",
1558
+ "name_native": "English",
1559
+ "name_english": "English",
1560
+ "country_english": "Great Britain"
1561
+ },
1562
  "quality": "medium",
1563
  "num_speakers": 1,
1564
  "speaker_id_map": {},
 
1579
  },
1580
  "en_US-kusal-medium": {
1581
  "name": "kusal",
1582
+ "language": {
1583
+ "code": "en_US",
1584
+ "family": "en",
1585
+ "region": "US",
1586
+ "name_native": "English",
1587
+ "name_english": "English",
1588
+ "country_english": "United States"
1589
+ },
1590
  "quality": "medium",
1591
  "num_speakers": 1,
1592
  "speaker_id_map": {},
 
1607
  },
1608
  "en_US-libritts-high": {
1609
  "name": "libritts",
1610
+ "language": {
1611
+ "code": "en_US",
1612
+ "family": "en",
1613
+ "region": "US",
1614
+ "name_native": "English",
1615
+ "name_english": "English",
1616
+ "country_english": "United States"
1617
+ },
1618
  "quality": "high",
1619
  "num_speakers": 904,
1620
  "speaker_id_map": {
 
2540
  },
2541
  "en_US-l2arctic-medium": {
2542
  "name": "l2arctic",
2543
+ "language": {
2544
+ "code": "en_US",
2545
+ "family": "en",
2546
+ "region": "US",
2547
+ "name_native": "English",
2548
+ "name_english": "English",
2549
+ "country_english": "United States"
2550
+ },
2551
  "quality": "medium",
2552
  "num_speakers": 24,
2553
  "speaker_id_map": {
 
2593
  },
2594
  "en_US-kathleen-low": {
2595
  "name": "kathleen",
2596
+ "language": {
2597
+ "code": "en_US",
2598
+ "family": "en",
2599
+ "region": "US",
2600
+ "name_native": "English",
2601
+ "name_english": "English",
2602
+ "country_english": "United States"
2603
+ },
2604
  "quality": "low",
2605
  "num_speakers": 1,
2606
  "speaker_id_map": {},
 
2621
  },
2622
  "en_US-amy-low": {
2623
  "name": "amy",
2624
+ "language": {
2625
+ "code": "en_US",
2626
+ "family": "en",
2627
+ "region": "US",
2628
+ "name_native": "English",
2629
+ "name_english": "English",
2630
+ "country_english": "United States"
2631
+ },
2632
  "quality": "low",
2633
  "num_speakers": 1,
2634
  "speaker_id_map": {},
 
2649
  },
2650
  "en_US-amy-medium": {
2651
  "name": "amy",
2652
+ "language": {
2653
+ "code": "en_US",
2654
+ "family": "en",
2655
+ "region": "US",
2656
+ "name_native": "English",
2657
+ "name_english": "English",
2658
+ "country_english": "United States"
2659
+ },
2660
  "quality": "medium",
2661
  "num_speakers": 1,
2662
  "speaker_id_map": {},
 
2677
  },
2678
  "en_US-ryan-low": {
2679
  "name": "ryan",
2680
+ "language": {
2681
+ "code": "en_US",
2682
+ "family": "en",
2683
+ "region": "US",
2684
+ "name_native": "English",
2685
+ "name_english": "English",
2686
+ "country_english": "United States"
2687
+ },
2688
  "quality": "low",
2689
  "num_speakers": 1,
2690
  "speaker_id_map": {},
 
2705
  },
2706
  "en_US-ryan-high": {
2707
  "name": "ryan",
2708
+ "language": {
2709
+ "code": "en_US",
2710
+ "family": "en",
2711
+ "region": "US",
2712
+ "name_native": "English",
2713
+ "name_english": "English",
2714
+ "country_english": "United States"
2715
+ },
2716
  "quality": "high",
2717
  "num_speakers": 1,
2718
  "speaker_id_map": {},
 
2733
  },
2734
  "en_US-ryan-medium": {
2735
  "name": "ryan",
2736
+ "language": {
2737
+ "code": "en_US",
2738
+ "family": "en",
2739
+ "region": "US",
2740
+ "name_native": "English",
2741
+ "name_english": "English",
2742
+ "country_english": "United States"
2743
+ },
2744
  "quality": "medium",
2745
  "num_speakers": 1,
2746
  "speaker_id_map": {},
 
2761
  },
2762
  "en_US-danny-low": {
2763
  "name": "danny",
2764
+ "language": {
2765
+ "code": "en_US",
2766
+ "family": "en",
2767
+ "region": "US",
2768
+ "name_native": "English",
2769
+ "name_english": "English",
2770
+ "country_english": "United States"
2771
+ },
2772
  "quality": "low",
2773
  "num_speakers": 1,
2774
  "speaker_id_map": {},
 
2789
  },
2790
  "en_US-arctic-medium": {
2791
  "name": "arctic",
2792
+ "language": {
2793
+ "code": "en_US",
2794
+ "family": "en",
2795
+ "region": "US",
2796
+ "name_native": "English",
2797
+ "name_english": "English",
2798
+ "country_english": "United States"
2799
+ },
2800
  "quality": "medium",
2801
  "num_speakers": 18,
2802
  "speaker_id_map": {
 
2836
  },
2837
  "en_US-lessac-low": {
2838
  "name": "lessac",
2839
+ "language": {
2840
+ "code": "en_US",
2841
+ "family": "en",
2842
+ "region": "US",
2843
+ "name_native": "English",
2844
+ "name_english": "English",
2845
+ "country_english": "United States"
2846
+ },
2847
  "quality": "low",
2848
  "num_speakers": 1,
2849
  "speaker_id_map": {},
 
2864
  },
2865
  "en_US-lessac-high": {
2866
  "name": "lessac",
2867
+ "language": {
2868
+ "code": "en_US",
2869
+ "family": "en",
2870
+ "region": "US",
2871
+ "name_native": "English",
2872
+ "name_english": "English",
2873
+ "country_english": "United States"
2874
+ },
2875
  "quality": "high",
2876
  "num_speakers": 1,
2877
  "speaker_id_map": {},
 
2892
  },
2893
  "en_US-lessac-medium": {
2894
  "name": "lessac",
2895
+ "language": {
2896
+ "code": "en_US",
2897
+ "family": "en",
2898
+ "region": "US",
2899
+ "name_native": "English",
2900
+ "name_english": "English",
2901
+ "country_english": "United States"
2902
+ },
2903
  "quality": "medium",
2904
  "num_speakers": 1,
2905
  "speaker_id_map": {},
 
2920
  },
2921
  "en_US-joe-medium": {
2922
  "name": "joe",
2923
+ "language": {
2924
+ "code": "en_US",
2925
+ "family": "en",
2926
+ "region": "US",
2927
+ "name_native": "English",
2928
+ "name_english": "English",
2929
+ "country_english": "United States"
2930
+ },
2931
  "quality": "medium",
2932
  "num_speakers": 1,
2933
  "speaker_id_map": {},
 
2948
  },
2949
  "es_MX-ald-medium": {
2950
  "name": "ald",
2951
+ "language": {
2952
+ "code": "es_MX",
2953
+ "family": "es",
2954
+ "region": "MX",
2955
+ "name_native": "Español",
2956
+ "name_english": "Spanish",
2957
+ "country_english": "Mexico"
2958
+ },
2959
  "quality": "medium",
2960
  "num_speakers": 1,
2961
  "speaker_id_map": {},
 
2976
  },
2977
  "es_ES-davefx-medium": {
2978
  "name": "davefx",
2979
+ "language": {
2980
+ "code": "es_ES",
2981
+ "family": "es",
2982
+ "region": "ES",
2983
+ "name_native": "Español",
2984
+ "name_english": "Spanish",
2985
+ "country_english": "Spain"
2986
+ },
2987
  "quality": "medium",
2988
  "num_speakers": 1,
2989
  "speaker_id_map": {},
 
3004
  },
3005
  "es_ES-mls_9972-low": {
3006
  "name": "mls_9972",
3007
+ "language": {
3008
+ "code": "es_ES",
3009
+ "family": "es",
3010
+ "region": "ES",
3011
+ "name_native": "Español",
3012
+ "name_english": "Spanish",
3013
+ "country_english": "Spain"
3014
+ },
3015
  "quality": "low",
3016
  "num_speakers": 1,
3017
  "speaker_id_map": {},
 
3032
  },
3033
  "es_ES-sharvard-medium": {
3034
  "name": "sharvard",
3035
+ "language": {
3036
+ "code": "es_ES",
3037
+ "family": "es",
3038
+ "region": "ES",
3039
+ "name_native": "Español",
3040
+ "name_english": "Spanish",
3041
+ "country_english": "Spain"
3042
+ },
3043
  "quality": "medium",
3044
  "num_speakers": 2,
3045
  "speaker_id_map": {
 
3063
  },
3064
  "es_ES-carlfm-x_low": {
3065
  "name": "carlfm",
3066
+ "language": {
3067
+ "code": "es_ES",
3068
+ "family": "es",
3069
+ "region": "ES",
3070
+ "name_native": "Español",
3071
+ "name_english": "Spanish",
3072
+ "country_english": "Spain"
3073
+ },
3074
  "quality": "x_low",
3075
  "num_speakers": 1,
3076
  "speaker_id_map": {},
 
3091
  },
3092
  "es_ES-mls_10246-low": {
3093
  "name": "mls_10246",
3094
+ "language": {
3095
+ "code": "es_ES",
3096
+ "family": "es",
3097
+ "region": "ES",
3098
+ "name_native": "Español",
3099
+ "name_english": "Spanish",
3100
+ "country_english": "Spain"
3101
+ },
3102
  "quality": "low",
3103
  "num_speakers": 1,
3104
  "speaker_id_map": {},
 
3119
  },
3120
  "uk_UA-lada-x_low": {
3121
  "name": "lada",
3122
+ "language": {
3123
+ "code": "uk_UA",
3124
+ "family": "uk",
3125
+ "region": "UA",
3126
+ "name_native": "украї́нська мо́ва",
3127
+ "name_english": "Ukrainian",
3128
+ "country_english": "Ukraine"
3129
+ },
3130
  "quality": "x_low",
3131
  "num_speakers": 1,
3132
  "speaker_id_map": {},
 
3147
  },
3148
  "uk_UA-ukrainian_tts-medium": {
3149
  "name": "ukrainian_tts",
3150
+ "language": {
3151
+ "code": "uk_UA",
3152
+ "family": "uk",
3153
+ "region": "UA",
3154
+ "name_native": "украї́нська мо́ва",
3155
+ "name_english": "Ukrainian",
3156
+ "country_english": "Ukraine"
3157
+ },
3158
  "quality": "medium",
3159
  "num_speakers": 3,
3160
  "speaker_id_map": {
 
3179
  },
3180
  "sw_CD-lanfrica-medium": {
3181
  "name": "lanfrica",
3182
+ "language": {
3183
+ "code": "sw_CD",
3184
+ "family": "sw",
3185
+ "region": "CD",
3186
+ "name_native": "Kiswahili",
3187
+ "name_english": "Swahili",
3188
+ "country_english": "Democratic Republic of the Congo"
3189
+ },
3190
  "quality": "medium",
3191
  "num_speakers": 1,
3192
  "speaker_id_map": {},
 
3207
  },
3208
  "fr_FR-siwis-low": {
3209
  "name": "siwis",
3210
+ "language": {
3211
+ "code": "fr_FR",
3212
+ "family": "fr",
3213
+ "region": "FR",
3214
+ "name_native": "Français",
3215
+ "name_english": "French",
3216
+ "country_english": "France"
3217
+ },
3218
  "quality": "low",
3219
  "num_speakers": 1,
3220
  "speaker_id_map": {},
 
3235
  },
3236
  "fr_FR-siwis-medium": {
3237
  "name": "siwis",
3238
+ "language": {
3239
+ "code": "fr_FR",
3240
+ "family": "fr",
3241
+ "region": "FR",
3242
+ "name_native": "Français",
3243
+ "name_english": "French",
3244
+ "country_english": "France"
3245
+ },
3246
  "quality": "medium",
3247
  "num_speakers": 1,
3248
  "speaker_id_map": {},
 
3263
  },
3264
  "fr_FR-mls_1840-low": {
3265
  "name": "mls_1840",
3266
+ "language": {
3267
+ "code": "fr_FR",
3268
+ "family": "fr",
3269
+ "region": "FR",
3270
+ "name_native": "Français",
3271
+ "name_english": "French",
3272
+ "country_english": "France"
3273
+ },
3274
  "quality": "low",
3275
  "num_speakers": 1,
3276
  "speaker_id_map": {},
 
3291
  },
3292
  "fr_FR-gilles-low": {
3293
  "name": "gilles",
3294
+ "language": {
3295
+ "code": "fr_FR",
3296
+ "family": "fr",
3297
+ "region": "FR",
3298
+ "name_native": "Français",
3299
+ "name_english": "French",
3300
+ "country_english": "France"
3301
+ },
3302
  "quality": "low",
3303
  "num_speakers": 1,
3304
  "speaker_id_map": {},
 
3319
  },
3320
  "fi_FI-harri-low": {
3321
  "name": "harri",
3322
+ "language": {
3323
+ "code": "fi_FI",
3324
+ "family": "fi",
3325
+ "region": "FI",
3326
+ "name_native": "Suomi",
3327
+ "name_english": "Finnish",
3328
+ "country_english": "Finland"
3329
+ },
3330
  "quality": "low",
3331
  "num_speakers": 1,
3332
  "speaker_id_map": {},
 
3347
  },
3348
  "fi_FI-harri-medium": {
3349
  "name": "harri",
3350
+ "language": {
3351
+ "code": "fi_FI",
3352
+ "family": "fi",
3353
+ "region": "FI",
3354
+ "name_native": "Suomi",
3355
+ "name_english": "Finnish",
3356
+ "country_english": "Finland"
3357
+ },
3358
  "quality": "medium",
3359
  "num_speakers": 1,
3360
  "speaker_id_map": {},
 
3375
  },
3376
  "ka_GE-natia-medium": {
3377
  "name": "natia",
3378
+ "language": {
3379
+ "code": "ka_GE",
3380
+ "family": "ka",
3381
+ "region": "GE",
3382
+ "name_native": "ქართული ენა",
3383
+ "name_english": "Georgian",
3384
+ "country_english": "Georgia"
3385
+ },
3386
  "quality": "medium",
3387
  "num_speakers": 1,
3388
  "speaker_id_map": {},
 
3403
  },
3404
  "pl_PL-darkman-medium": {
3405
  "name": "darkman",
3406
+ "language": {
3407
+ "code": "pl_PL",
3408
+ "family": "pl",
3409
+ "region": "PL",
3410
+ "name_native": "Polski",
3411
+ "name_english": "Polish",
3412
+ "country_english": "Poland"
3413
+ },
3414
  "quality": "medium",
3415
  "num_speakers": 1,
3416
  "speaker_id_map": {},
 
3431
  },
3432
  "pl_PL-mls_6892-low": {
3433
  "name": "mls_6892",
3434
+ "language": {
3435
+ "code": "pl_PL",
3436
+ "family": "pl",
3437
+ "region": "PL",
3438
+ "name_native": "Polski",
3439
+ "name_english": "Polish",
3440
+ "country_english": "Poland"
3441
+ },
3442
  "quality": "low",
3443
  "num_speakers": 1,
3444
  "speaker_id_map": {},
 
3459
  },
3460
  "pl_PL-gosia-medium": {
3461
  "name": "gosia",
3462
+ "language": {
3463
+ "code": "pl_PL",
3464
+ "family": "pl",
3465
+ "region": "PL",
3466
+ "name_native": "Polski",
3467
+ "name_english": "Polish",
3468
+ "country_english": "Poland"
3469
+ },
3470
  "quality": "medium",
3471
  "num_speakers": 1,
3472
  "speaker_id_map": {},
 
3487
  },
3488
  "no_NO-talesyntese-medium": {
3489
  "name": "talesyntese",
3490
+ "language": {
3491
+ "code": "no_NO",
3492
+ "family": "no",
3493
+ "region": "NO",
3494
+ "name_native": "Norsk",
3495
+ "name_english": "Norwegian",
3496
+ "country_english": "Norway"
3497
+ },
3498
  "quality": "medium",
3499
  "num_speakers": 1,
3500
  "speaker_id_map": {},