【发布时间】:2015-03-03 12:10:56
【问题描述】:
我在播放声音时遇到问题。
目的是制作一个与我的声音对话的文本到语音程序。
我录制了很多需要以正确顺序依次播放的音素(带有词性的.wav 文件)。 只有当前一个声音完成播放时,才能播放每个声音。 所以如果我的程序需要说“你好”,那么它会这样做:
**play("h.wav")
if "h.wav":isStopped() then:
play("e.wav")
if "e.wav":isStopped() then... etc ...**
出于测试目的,我想播放“a.wav”两次,但问题是我只听到“A”一次... 如果我玩例如'A' 然后是 'B',效果很好..
任何帮助将不胜感激!
这是我目前的测试代码:
function love.load()
voice = {"a","b","e","f", ......}
for i in pairs(voice) do
voice[i] = love.audio.newSource("VOICE/" .. voice[i] .. ".wav", "static")
end
end
function love.keypressed(key)
if key == "a" then
voice[1]:play()
while voice[1]:isPlaying() do end
voice[1]:play()
while voice[1]:isPlaying() do end
end
end
【问题讨论】:
-
我尝试了您的代码,并尽了最大努力,但我想这是一个 Love2D 错误。如果我尝试使用语音[1],然后使用语音[2],然后再次使用语音[1],它可以工作。我认为您应该将此报告给love2d.org
-
感谢您的尝试,我也很难,这是一个错误,问候