Squiso is a free, powerful automation tool that lets you customize your Twitch stream using simple scripts.

How to Add an Echo Effect on a Generated TTS Message

This examples generates an MP3 Text-To-Speech audio file and then uses FFMPEG to add an echo effect before playing it with Twitch Channel Points.

Script Example

import com.squiso.*; import com.squiso.exception.*; import com.squiso.scripting.*; import com.squiso.scripting.data.*; import com.squiso.keyboard.*; import com.squiso.twitch.*; import com.squiso.datatypes.*; import com.squiso.utils.*; // Important - Please do not change the row below - otherwise you will get a compilation error! public class Script_Example extends SquisoScript { @Override public void onTwitchChannelPointRedeem(OnTwitchChannelPointRedeemData data, API api) throws SquisoException { // If the channel point reward is "Echo Brian" if (data.getRewardName().equals("Echo Brian")) { // Generate a TTS audio using the Brian voice // All voices can be found here: https://www.squiso.com/voices/ SquisoData tts = api.generateTTS("ggw6pyfz", data.getRedeemText()); // Generate a random ID that we will use through-out the script String randomID = StringUtil.getRandomAlphaNumericString(8); // Create a filename for the generated TTS String file = randomID + ".mp3"; // Save the TTS audio to the disk api.writeFile(file, tts); // Log that we saved the generated TTS api.log("Saved generated TTS to \"" + file + "\"."); // Create a new filename for the echo version String fileEcho = randomID + "_echo.mp3"; // Add an echo effect to the audio file using FFMPEG // This requires that you have downloaded and added ffmpeg.exe and added it in the Squiso folder // FFMPEG is a free audio tool that can do a lot of audio manipulation String command = "ffmpeg.exe -i " + file + " -filter_complex \"aecho=0.8:0.9:500|1000:0.2|0.1\" " + fileEcho; api.exec(command); // Play the echo version api.playAudio(fileEcho); } } }