This commit is contained in:
2025-06-16 19:37:02 -04:00
parent 696f7106a4
commit 61724d2df6

View File

@@ -9,6 +9,13 @@ local function getFileName(name)
return fullFile
end
local function randomFileName(extension)
local name = ""
for i = 1, 12 do
name = name .. string.char(math.random(97, 122)) -- az
end
return name .. (extension or "")
end
local function playSound(speaker, fileName)
local fileStream = getFileName(fileName)
@@ -38,16 +45,14 @@ local function playTTSFile(speakers, value)
local message = textutils.urlEncode(value)
local url = "http://api.astrocore.space/api/TextToSpeech?message=" .. message
local response, err = http.get { url = url, binary = true }
if not response then error(err, 0) end
while true do
local chunk = response.read(16 * 1024)
if not chunk then break end
local buffer = decoder(chunk)
while not speakers.playAudio(buffer, 200) do
os.pullEvent("speaker_audio_empty")
end
end
local name = randomFileName(".dfpwm")
local fileData = response.readAll()
local file = fs.open(name,"w")
file.write(fileData)
file.close()
response.close()
playSound(speakers, fileData)
shell.execute("rm", name)
end
local function createSoundFile(fileName)