将数据从Webcaster传输到Icecast

时间:2018-07-17 07:17:39

标签: node.js radio icecast

因此,我正在使用Webcaster Browser Client,而且我也让Webcast NodeJS example server在本地工作。我正在从服务器中的客户端接收数据,例如

  

2018年7月16日星期一14:31:11 GMT + 0300(FLE日光时间)-获得了1252字节的二进制数据

但是我已经搜索了几天,似乎无法找到有关如何将这些数据实际传递给Icecast服务器的信息。

可能相关的附加信息:Icecast服务器:2.4.3;平台:Windows;服务器未运行liquidsoap示例,它是NodeJS

有人可以指出我的方向还是提供一些示例代码?任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

好的,所以我已经设法解决了我的问题。如果有人需要帮助,请发布解决方案以备将来参考。将此另存为script.liq

# Log dir
set("log.file.path","./tmp/basic-radio.log")

# Serveur settings
set("harbor.bind_addr","0.0.0.0")

# An emergency file
emergency = single("./file.ogg")

# A playlist
playlist = playlist(mode="randomize",reload=60,"./music")

# A live source
livedj = input.harbor(
       "mount",
       port=8080,
       password="hackme"
)

# fallback
radio = fallback(track_sensitive=false,
                 [livedj,playlist,emergency])

# Stream it out
output.icecast(
    %mp3,
    host = "localhost",
    mount = "stream",
    user = "source",
    public = true,
    port = 8000, password = "hackme",
    genre = "Surprise",
    name = "DemoStream",
    radio)

安装Liquidsoap并运行liquidsoap script.liq

此配置使用Icecast服务器的默认设置,因此您只需要启动Webcaster客户端并将其流式传输到ws://source:hackme@localhost:8080/mount。干杯!