流音频到浏览器

时间:2020-03-06 15:01:38  来源:igfitidea点击:

我将大量音频以非常自定义的格式存储在我的Web服务器上,除了我自己的应用程序之外,其他任何东西都无法回放。该应用程序是一个Win32应用程序,可以连接到我的Web服务器并流式传输和重放该音频。

我真的很希望能够从浏览器中进行流式传输和重放,但是不知道从哪里开始。理想情况下,我希望该技术能够跨平台(不同于我当前的Win32应用程序)和跨浏览器(IE 6及更高版本和Firefox)。

我目前的想法是看类似的东西:

  • Flash,但这不只是重播mp3音频吗?
  • Java,是否仍可免费使用VM?
  • 将音频转换为Web服务器上的WAV文件,然后使用他人的插件重播该文件。出于性能原因,我宁愿将转换从Web服务器上移开,但仍然是一种选择。
  • 编写我自己的自定义插件以完成完整的流和重放操作。

任何指导将是最有用的。

请注意,音频不是音乐,简单地转换为其他音频格式也不是一件容易的事。存储的音频也会频繁(每分钟)更改,因此需要不断进行转换。

解决方案

为什么要使用专有的音乐格式?我什至不愿意下载一个程序来收听它。

我建议我们将其转换为mp3,然后使用Flash。

构建自己的插件可能很困难,有许多不同的平台需要满足需求,例如已经为它们编写了Flash。

我将在服务器上将音频转换为WAV(或者MP3)。由于主要操作系统处理音频API的方式不同,因此编写自己的跨平台浏览器组件将需要大量工作。

尝试看一看shoutcast。
基本上,它是一个服务器应用程序,它将音乐传输到通过浏览器(实际上是我们自己的广播电台)与其连接的任何客户端。我本人从未使用过它,但应该直截了当。
另一个想法是Winamp Remote。再次将应用程序安装在服务器上,但是这次我们可以在其网站上浏览音乐收藏并播放单个歌曲。

除了转换服务器端之外:在ActionScript或者Java中为格式实现解码器。然后,我们可以编写Flash电影或者播放它的Java小程序。除非格式非常复杂,否则两种语言/运行时都应足够快以进行实时解码。由于几乎每个人都安装了插件,因此Flash将是两者中更易于访问的。 (10之前的Flash版本可能不支持播放原始声音缓冲区,对此我不是专家。)Java插件绝对是免费的,但是我们需要用户安装它。