返回

文章详情

Webradio服务器 - 将音频源广播给客户端

Hacker News2026年6月26日 17:57

该项目由NGI Zero Core资助,NGI Zero Core是一个由NLnet建立的基金,得到了欧盟下一代互联网计划的财政支持。详情请查看NLnet项目页面。使用:该工具旨在将音频实时流传输到全球网络,从tau-radio实例广播音频流,这是伴随软件。该工具的设计灵感来自Icecast软件,它提供了一个HTML音频流,可以在任何其他网站的音频标签中使用。你应该在远程服务器上运行此工具,例如AWS、Digital Ocean或任何具有正确权限的VPS。请注意,最小的Digital Ocean 'Droplet'没有足够的RAM来在本地构建该项目。解决方法是使用ex: cargo build --target x86_64-unknown-linux-gnu为该架构构建。安装方法:$ cargo install --git https://github.com/tau-org/tau-tower 第一次使用该工具时,它会在你的系统中搜索配置文件。它会在以下路径中查找:$HOME/.config/tau/tower.toml # 在macOS上或$XDG_CONFIG_HOME/tau/tower.toml # 在Linux上 如果在此处找不到配置文件,你将会被提示创建一个。# 用户名和密码不是安全的,它们只是# 将tauradio和tautower服务链接在一起 username = "用户名" password = "emanresu" # 设置监听端口,源流被传输到此 listen_port = 8000 # 设置广播端口,从中可以访问该流 broadcast-port = 8001 # 设置服务器http端点 - http://localhost:8001/tau.ogg broadcast-endpoint = "tau.ogg" # 可选:# 设置哪些其他网站能够重新广播该流# "*"允许所有,添加"http://localhost:4000"到列表中是多余的 cors_allow_list = ["*", "http://localhost:4000"] 如果你想临时覆盖配置,可以传递参数。# 例如:使用临时凭证,并禁用本地录音。$ tau-tower \ --listen-port <listen-port> \ --broadcast-port <broadcast-port> \ --cors-allow-list "*" 依赖项 在Linux(使用apt):$ sudo apt update $ sudo apt install build-essential 流式管道 tau-radio在你的本地机器上运行,并从系统的音频设备捕获声音。默认情况下,macOS上是BlackHole 2ch,而Linux上是pipewire,虽然这些可以通过配置或CLI参数覆盖。捕获的音频被流到tau-tower,它应该在远程服务器上运行。该服务器应用程序公开了一个音频媒体流,可以被许多客户端使用,作为网络广播。tau-tower旁边应该运行一个Asciinema实例,可以使用实时音频流作为实时终端流的背景,通过在流设置中将广播端点URL设置为媒体源进行实现。https://example.com:8002/tau.ogg 为了使其正常工作,Asciinema的origin必须添加到tower.toml中的cors_allow_list:cors_allow_list = ["https://example.com:4000"] 你的计算机 远程服务器(音频捕获)(可选tl / ssl)(代理)(广播器)(可选.流主机) tau-radio -> 互联网 -> Caddy -> tau-tower -> Asciinema 有关TLS终止和反向代理设置,请参见代理设置(Caddy)。

赞助内容

NordVPN Next-gen Antivirus

本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。

请我喝杯咖啡