HN 日本語サマリー

← 一覧へ戻る
Web開発

Webradioサーバー – クライアントに音声ソースをブロードキャストする

Webradio server – broadcasts audio source to clients (github.com)

9 pointsby modinfo2 コメント

要約

tau-towerは、tau-radioという付属ソフトウェアからの音声ストリームを世界中にライブストリーミングするためのWebラジオサーバーです。Icecastソフトウェアをモデルにしており、Webサイトのaudioタグで使用できるHTML音声ストリームを提供します。本プロジェクトは、NGI Zero Coreからの資金提供を受けており、設定ファイルや依存関係、ストリーミングパイプラインに関する詳細な情報が提供されています。

全文翻訳

検索…Control⌃KニュースレターRSS このプロジェクトは、NLnetが欧州委員会の次世代インターネットプログラムからの財政支援を受けて設立した基金であるNGI Zero Coreを通じて資金提供されています。詳細については、NLnetプロジェクトページをご覧ください。 使用方法: このツールは、付属ソフトウェアであるtau-radioのインスタンスからのオーディオストリームを世界中のウェブにライブストリーミングし、オーディオストリームをブロードキャストするために構築されています。Icecastソフトウェアをモデルにしており、他のウェブサイトのaudioタグで使用できる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 = "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にストリーミングされます。このサーバーアプリケーションは、多くのクライアントがWebラジオとして利用できるオーディオメディアストリームを公開します。tau-towerと並行して、Asciinemaのインスタンスが実行され、ストリーム設定でブロードキャストエンドポイントURLをメディアソースとして設定することで、ライブオーディオストリームをライブターミナルストリームのバックグラウンドとして使用できます。 https://example.com:8002/tau.ogg これを機能させるには、Asciinemaのオリジンをtower.tomlのcors_allow_listに追加する必要があります。 cors_allow_list = ["https://example.com:4000"] あなたのコンピューター リモートサーバー (オーディオキャプチャ) (オプションのtls/ssl) (プロキシ) (ブロードキャスター) (オプションのストリームホスト) tau-radio -> インターネット -> Caddy -> tau-tower -> Asciinema TLS終端とリバースプロキシの設定については、プロキシ設定(Caddy)を参照してください。