【发布时间】:2023-03-21 02:16:02
【问题描述】:
这可能是一个愚蠢的问题,但我对此很陌生。我可能会以非常错误的方式处理它哈。
所以我编写了一个从文本文件中学习并生成句子的后端。它还将生成该句子的音频版本。起初,我在使用 Audio 对象来实际加载该音频文件时遇到了很多麻烦,直到我意识到相对路径是相对于 dist 文件夹的。
播放文件的代码非常简单。我想我不明白它是如何工作的(我现在只是让响应带回一个布尔值)
if (response.data) {
this.audio = new Audio('text.mp3')
this.audio.play()
}
生成的音频只是覆盖了现在位于 dist 文件夹中的同一个文件。单击按钮时它将播放音频文件。但是,在您生成另一个句子(然后覆盖音频文件)并单击播放按钮后,即使音频文件已更新,它将播放原始音频,而不是新音频。
我有点不知道为什么它不使用新版本的文件创建音频的新实例?我觉得内存没有被释放或其他东西,javascript试图采取捷径而不是实例化一个新对象,但不知道如何解决这个问题。
谢谢!
--编辑-- 好的,由于内存没有被释放,所以它是def,bc在等待一段时间并返回它之后,音频已更新>.>
【问题讨论】:
标签: javascript node.js vue.js audio