import onnxruntime as ort
import soundfile as sf
symbol = "_,।,ँ,ं,ः,अ,आ,इ,ई,उ,ऊ,ऋ,ए,ऐ,ओ,औ,क,ख,ग,घ,ङ,च,छ,ज,झ,ञ,ट,ठ,ड,ढ,ण,त,थ,द,ध,न,प,फ,ब,भ,म,य,र,ल,ळ,व,श,ष,स,ह,ऽ,ा,ि,ी,ु,ू,ृ,ॄ,े,ै,ो,ौ,्,ॠ,ॢ, ".split(",")
speakers = "Male 1,Male 2,Male 3,Male 4 (Malayalam),Male 5,Male 6,Male 7,Male 8 (Kannada),Female 1 (Tamil),Male 9 (Kannada),Female 2 (Marathi),Female 3 (Marathi),Female 4 (Marathi),Female 5 (Telugu),Female 6 (Telugu),Male 10 (Kannada),Male 11 (Kannada),Male 12,Male 13,Male 14,Male 15,Female 7,Male 16 (Malayalam),Male 17 (Tamil),Male 18 (Hindi),Male 19 (Telugu),Male 20 (Hindi)".split(",")
speed = 1.0
sp = "Male 1"
text = "रामो वनं गच्छति।"
def text_to_sequence(text: str):
    if text[-1] != '।':
        text+="।"
    return [symbol.index(c) for c in text if c in symbol]
sess = ort.InferenceSession("sanskrit_tts.onnx", providers=["CPUExecutionProvider"])


sf.write("onnx_tts.wav", sess.run(None,{"text_seq":text_to_sequence(text),"speaker_index":[speakers.index(sp)],"length_scale":[speed]})[0], 22050)
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support

Collection including shethjenil/SansTTS