问题标签 [liquidsoap]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
docker - Docker 中带有实时 ALSA 音频的 Liquidsoap 无法正常工作(口吃和缓冲区欠载)
虽然使用 Liquidsoap 在 Docker 中的简单音频播放output.alsa(..)
工作正常,但我无法让实时音频工作。基本上我想将模拟音频输入路由到模拟音频输出,例如output.alsa(input.alsa())
. 以下三个示例在本机上工作正常:
示例 1:缓冲 I/O
示例 2:额外缓冲 I/O
示例 3:无缓冲 I/O
通过 Docker 中的这些示例,无论我尝试哪种缓冲区或帧设置,我都会得到大量的音频中断和缓冲区欠载。Docker Container 的 CPU 使用率通常 < 1%,有时会飙升至 5%。使用当前的 Liquidsoap 2 分支,在设置一些额外的高缓冲区和帧大小时情况会好得多,但仍然会发生欠载。
我正在像这样启动容器(之前还尝试过为容器提供额外 CPU 和内存的特定设置):
ALSA 设备的default
定义很简单:
需要什么秘方吗?你有一个例子,你是如何让它工作的?
也许这根本不是 Liquidsoap 的问题。希望结合一些隐藏的 Docker 标志来做一些特殊的 ALSA 设备配置就足够了。
radio - Icecast 和 Liquidsoap - 没有这样的文件或目录
我的网络收音机不工作。
我使用 Debian 9、Icecast 2.4.2 和 Liquidsoap 1.1.1
我用命令启动了网络广播:
/etc/init.d/icecast2 重启
服务liquidsoap重新启动
我打开地址:http://MY_IP:8000/autodj
我在浏览器中遇到错误:404 - 找不到您请求的文件
我在 icecast 日志中遇到错误:“/usr/share/icecast2/web/autodj”没有这样的文件或目录
我的冰播配置(/etc/icecast2/icecast.xml):
我的液体肥皂配置(/etc/liquidsoap/radio.liq):
冰播日志:
原木液皂:
linux - Icecast2 和 Liquidsoap - 多个播放列表
全部。
我有以下用于运行多个播放列表的 radio.liq 文件。
这确实有效,但是,我想知道的是以下内容。
假设我有 50 多个电台/播放列表
有没有更好的方法来加载它们,而不是像我在上面的代码示例中那样单独输入它们的数据信息?
并且在添加新列表时不必重新启动 Liquidsoap,因此不会踢所有听众并重新启动每个站?
像这样的东西,例如:(
在 ASP 或任何服务器端语言中,会对动态内容执行类似的操作。ID-GOES-HERE = request.QueryString("ID")
然后
这将加载该特定电台的播放列表。
所以,如果 URL 是
Station.asp?ID=1
Station.asp?ID=2
Station.asp?ID=3
谢谢大家,您可以为此提供任何信息。
韦恩
cdn - 如何在 Icecast 服务器上处理 20k 并发侦听器
我想知道如何在 Icecast 服务器上同时处理超过 20k 的听众。我使用 Liquidsoap 作为音频流生成器(只有一个音频流通过 Icecast 服务器分发)。服务器在 AWS 上配置。此外,我想知道我是否需要使用 LB 和 CDN 来处理这么多的流量。
bash - Liquidsoap request.dynamic 故障
我是liquidsoap 和icecast 的新手,我想创建一个动态播放列表。我正在使用外部 bash 脚本来生成音频文件的多个路径,为此我正在使用 request.dynamic 但它似乎只读取了我的 bash 脚本输出的第一行。谁能帮帮我吗?谢谢
这是我的 Liquidsoap 脚本:
这是我的 bash 脚本:
这是它的结果: