diff --git a/pipertts-script (Theory Test?).py b/pipertts-script (Theory Test?).py new file mode 100644 index 0000000..0cabf9d --- /dev/null +++ b/pipertts-script (Theory Test?).py @@ -0,0 +1,31 @@ +from piper.voice import PiperVoice as piper # Backbone of text to speech +import pyaudio +import os +print(os.popen('xsel').read()) + + + +TextToSpeak = os.popen('xsel').read() + +voice = piper.load("path/to/en_US-amy-medium.onnx") # Load the model + +chunks = voice.synthesize(TextToSpeak) # Set up Piper to stream audio +first_chunk = next(chunks) # Get the first chunk to set up audio stream configuration + +p = pyaudio.PyAudio() +stream = p.open( # Open audio stream with correct settings + format=p.get_format_from_width(first_chunk.sample_width), + channels=first_chunk.sample_channels, + rate=first_chunk.sample_rate, + output=True, +) + +stream.write(first_chunk.audio_int16_bytes) # Play the first chunk + +for chunk in chunks: # Play subsequent chunks of audio + stream.write(chunk.audio_int16_bytes) + +# Cleanup +stream.stop_stream() +stream.close() +p.terminate() \ No newline at end of file