按需音频流

时间:2011-11-15 18:24:31

标签: web-services rest audio-streaming playlist liquidsoap

有没有人遇到过可以动态流式传输由HTTP网址识别的任意来源的软件。

我正在寻找一种基于服务器的软件,该软件可以公开RESTful接口以接收播放列表的定义并使用流URL回复,这将播放播放列表。播放列表中的声音文件位于可通过HTTP访问的其他系统上。

我确实看过liquidsoap项目,但无法弄清楚如何将其包装到RESTful Web服务中。

1 个答案:

答案 0 :(得分:1)

在liquidsoap中实现RESTful服务器会非常麻烦。我会用任何“普通”的Web编程语言(如PHP)构建RESTful Web服务,然后让liquidsoap调用相同的服务来获取轨道/文件。在此示例中,对http://127.0.0.1/next的GET请求应将一个http url返回到mp3 / ogg / whatever。

(liquidsoap 1.0版的示例代码 - 此示例不会在早期的0.x-something版本上运行)

def autopilot() =
  def result()
    result =
      list.hd(
        get_process_lines('curl http://127.0.0.1/next')
      )
    request.create(result)
  end
  audio_to_stereo(request.dynamic(result))
end

radio =
  mksafe(
    autopilot()
  );

output.icecast(%mp3(samplerate=44100, stereo=true, bitrate=128),
  host="127.0.0.1",
  port=8000,
  password="secretpassword",
  mount="radio.mp3",
  radio
);

在此示例中,您需要一个icecast2服务器才能将流发送到。