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