在不带文件的 HTML 中嵌入歌曲
Posted
技术标签:
【中文标题】在不带文件的 HTML 中嵌入歌曲【英文标题】:Embed song in HTML w/o file 【发布时间】:2021-07-10 22:27:14 【问题描述】:我正在设计一个可以在智能手机上使用 html 和 JS 生成的迷你游戏。 它将处于脱机状态,无法访问任何文件。
所以我想知道如何在其中嵌入基本音乐和一些声音设计。
我看到了 2 个选项:
用JS制作一个声音发生器,并设计一个可以播放这个发生器的声音(类似link)
将低保真 mp3/ogg 或其他格式转换为 base64 并直接添加到 HTML (src="data:audio/mp3;base64...")
第一种方法必须是较轻的,但目前可能很难设计歌曲。对硬件来说也许不是那么轻?
第二种方法更容易使用,但由于数据量大,我不知道它是否是一个好的选择。
对其中一种方法有什么建议吗?或者你有更好的主意?
【问题讨论】:
如果您必须仅使用 HTML 文件进行分发,这些实际上只是最好的选择。 【参考方案1】:游戏可能需要以某种方式分发到手机上,因此您应该不仅能够将 HTML 和 JS 合并到分发包中,还应该能够将其他资产文件(例如图像和声音文件)合并到分发包中。如果是这种情况,则无需尝试将音乐嵌入 HTML(选项 2)。只需发送一个 MP3 文件,其中包含您想要播放的音乐作为该软件包的一部分。
【讨论】:
感谢您的回答。但我没有可能添加那个文件。我已经可以使用第二个选项嵌入图像并且效果很好,但我不知道对于超过 10kb 的文件是否是个好主意......或者可能超过 100kb。以上是关于在不带文件的 HTML 中嵌入歌曲的主要内容,如果未能解决你的问题,请参考以下文章
阻止嵌入的 Javascript 歌曲在 Chrome 上自动播放?