我正在尝试制作一个吉他练习网站,一个关键功能是循环播放非常短的 mp3 文件(几秒钟长),两者之间的间隙绝对为零。例如,它可以是一个 4 小节长的和弦进行,我想让用户无缝地循环它。
我尝试使用带有属性的 HTML5<audio>
标记。loop
谷歌浏览器在循环之间给出了一个小的间隙,但对于我的目的来说足够大,完全不能接受。我还没有测试过其他浏览器,但我相信它不会工作。
一种可能的解决方法是使用ffmpeg
与 mp3 相同的音频流式传输重复。但是,这会消耗大量带宽。
对我自己来说,我使用 Audacity 进行无间隙循环,但不幸的是,Audacity 没有网络版本。
那么,您知道如何在浏览器中以零间隙循环播放 mp3 吗?我更喜欢非 Flash 解决方案,但如果没有其他方法,我将使用 Flash。
编辑: 感谢您的所有建议。事实证明,Flash 可以正常工作。我在http://vmlucid.lcm.hk/~netvope/audio/flash.html做了一个玩具演示。令我惊讶的是(我过去只将 Flash 与资源消耗和浏览器崩溃联系起来),Flash 和 ActionScript 设计得相当好并且易于使用。我的第一个 Flash 项目只用了 3 个小时 :)