File size: 518 Bytes
8769d0e
28c0747
8769d0e
 
 
28c0747
8769d0e
 
 
 
 
 
 
28c0747
 
 
 
 
 
 
 
 
 
 
 
 
8769d0e
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
from piper import PiperVoice
import subprocess
import wave
import tempfile

VOICE_PATH = "voices/fr/fr_FR/siwis/medium/fr_FR-siwis-medium.onnx"

def generate(sentence):

    output_wav = tempfile.mktemp(
        suffix=".wav"
    )

    process = subprocess.Popen(
        [
            "piper",
            "--model",
            VOICE_PATH,
            "--output_file",
            output_wav
        ],
        stdin=subprocess.PIPE,
        text=True
    )

    process.communicate(sentence)

    return output_wav