105 lines
3.0 KiB
Python
105 lines
3.0 KiB
Python
import json
|
|
|
|
'''
|
|
############### Test Code Block Start ###############
|
|
x = {
|
|
"en_GB-alan-low": {
|
|
"key": "en_GB-alan-low",
|
|
"name": "alan",
|
|
"language": {
|
|
"code": "en_GB",
|
|
"family": "en",
|
|
"region": "GB",
|
|
"name_native": "English",
|
|
"name_english": "English",
|
|
"country_english": "Great Britain"
|
|
},
|
|
"quality": "low",
|
|
"num_speakers": 1,
|
|
"speaker_id_map": {},
|
|
"files": {
|
|
"en/en_GB/alan/low/en_GB-alan-low.onnx": {
|
|
"size_bytes": 63104526,
|
|
"md5_digest": "2acae8c79395ab109a7572f0afa61fff"
|
|
},
|
|
"en/en_GB/alan/low/en_GB-alan-low.onnx.json": {
|
|
"size_bytes": 4170,
|
|
"md5_digest": "4c0fa2c6763bf49b343cbb4f655a147b"
|
|
},
|
|
"en/en_GB/alan/low/MODEL_CARD": {
|
|
"size_bytes": 309,
|
|
"md5_digest": "b116c3cbdebac99ade9af03807cb9301"
|
|
}
|
|
},
|
|
"aliases": [
|
|
"en-gb-alan-low"
|
|
]
|
|
},
|
|
"en_GB-alan-medium": {
|
|
"key": "en_GB-alan-medium",
|
|
"name": "alan",
|
|
"language": {
|
|
"code": "en_GB",
|
|
"family": "en",
|
|
"region": "GB",
|
|
"name_native": "English",
|
|
"name_english": "English",
|
|
"country_english": "Great Britain"
|
|
},
|
|
"quality": "medium",
|
|
"num_speakers": 1,
|
|
"speaker_id_map": {},
|
|
"files": {
|
|
"en/en_GB/alan/medium/en_GB-alan-medium.onnx": {
|
|
"size_bytes": 63201294,
|
|
"md5_digest": "8f6b35eeb8ef6269021c6cb6d2414c9b"
|
|
},
|
|
"en/en_GB/alan/medium/en_GB-alan-medium.onnx.json": {
|
|
"size_bytes": 4888,
|
|
"md5_digest": "b11d9afd0a8f5372c42a52fbd6e021d4"
|
|
},
|
|
"en/en_GB/alan/medium/MODEL_CARD": {
|
|
"size_bytes": 320,
|
|
"md5_digest": "24a2232470ca1be071debf53c984666e"
|
|
}
|
|
},
|
|
"aliases": []
|
|
}
|
|
}
|
|
|
|
# convert into JSON:
|
|
y = json.dumps(x)
|
|
z = json.loads(y)
|
|
|
|
for voice_id, info in z.items():
|
|
print((f"{info["language"]["name_native"]} ({info["language"]["name_english"]}, {info["language"]["country_english"]})")
|
|
|
|
a = "English (English, Great Britain)"
|
|
#b = a.split(" ", 1)
|
|
print(a.split(" ", 1)[0])
|
|
|
|
############### Test Code Block End ###############
|
|
'''
|
|
|
|
# Attempts to load voices.json
|
|
try:
|
|
with open("voices/voices.json","r") as file:
|
|
data = json.load(file)
|
|
# Failed at loading voices.json
|
|
except FileNotFoundError:
|
|
print("Error: The file 'voises.json' was not found.")
|
|
|
|
# Create a list for Languages
|
|
mylist = []
|
|
|
|
# Appends and formats all the languages to the list
|
|
for voice_id, info in data.items():
|
|
mylist.append(f"{info["language"]["name_native"]} ({info["language"]["name_english"]}, {info["language"]["country_english"]})")
|
|
|
|
# Removes duplicate languages choices from list
|
|
mylist = list(dict.fromkeys(mylist))
|
|
|
|
# Prints avalible list
|
|
for myitems in mylist:
|
|
print(myitems)
|