squeeze2upnp で YAMAHA NP-S2000 を Roon から利用する方法
Roon は UPnP / DLNA 機器を直接の出力先として扱えません
squeeze2upnp を使い Squeezebox 互換デバイスとして偽装することで利用できるようになります
Roon の Squeezebox 出力機能を利用し YAMAHA NP-S2000 を Roon から再生できるようにします
・本記事では YAMAHA NP-S2000 を例に説明しているが、UPnP / DLNA Renderer として正しく実装された機器であれば、同様の構成で利用できる可能性が高い
全体構成と役割
・Roon Server(Windows)
Squeezebox プロトコルを出力する役割(LMS 代替)
・Linux PC
squeeze2upnp を -z オプションで常駐起動しSqueezebox → UPnP / DLNA 変換を行う
・YAMAHA NP-S2000
UPnP / DLNA Renderer として再生
ROON の設定
ROONの設定でメニュー>セットアップ で「Squeezebox サポートを有効にする」 を YES にする必要がある
手順① Linux で squeeze2upnp をダウンロードして展開
・Linux PC に UPnPBridge(squeeze2upnp を含むパッケージ)をダウンロード
・zip を展開する
例
・ホームディレクトリの「ダウンロード」に展開
・UPnPBridge-3.4.1 ディレクトリが作成される
<ダウンロード先>
こちらのサイトにアクセスしてページ下部の「Binary releases are as well 」
から以下のファイルをダウンロード
→ UPnPBridge-3.4.1.zip ※執筆筆時点(2025/12)
最新ファイルをサイトよりダウンロードして展開する
さまざまな環境用のファイルが含まれており Linux、Windows、MacOS、NAS を含む多数の OS と CPU アーキテクチャがサポートされている
手順② squeeze2upnp を一度実行して config.xml を生成
まずは設定ファイルを自動生成させるためオプションを付けずに一度起動する
cd ~/ダウンロード/UPnPBridge-3.4.1/Bin
sudo ./squeeze2upnp-linux-x86_64-static -i config.xml・同じディレクトリ内に config.xml が生成される
・この時点では細かい設定は未調整で問題なし
手順③ nano で config.xml を編集する
生成された config.xml を nano で編集する
nano ~/ダウンロード/UPnPBridge-3.4.1/Bin/config.xml
主に調整するのは common セクション
config.xml の実用設定例(Roon + NP-S2000)
<?xml version="1.0"?>
<squeeze2upnp>
<common>
<streambuf_size>1048576</streambuf_size>
<output_size>4194304</output_size>
<stream_length>-3</stream_length>
<enabled>1</enabled>
<remove_timeout>180</remove_timeout>
<codecs>aac,ogg,ops,ogf,flc,alc,wav,aif,pcm,mp3</codecs>
<mode>thru</mode>
<raw_audio_format>raw,wav,aif</raw_audio_format>
<sample_rate>192000</sample_rate>
<L24_format>1</L24_format>
<flac_header>1</flac_header>
<roon_mode>1</roon_mode>
<force_aac>0</force_aac>
<cache>1</cache>
<forced_mimetypes></forced_mimetypes>
<seek_after_pause>0</seek_after_pause>
<live_pause>1</live_pause>
<send_icy>1</send_icy>
<volume_on_play>1</volume_on_play>
<volume_feedback>1</volume_feedback>
<send_metadata>1</send_metadata>
<send_coverart>1</send_coverart>
<max_volume>100</max_volume>
【ポイント】
・sample_rate をDACの対応サンプリングレートに指定します
・force_aac は 0 にして FLAC を優先
・roon_mode 0→1 で有効化する必要があります
手順④ ディレクトリに移動し実行権限を貸与
cd ~/ダウンロード/UPnPBridge-3.4.1/Bin
chmod +x squeeze2upnp-linux-x86_64-static【補足】
chmod +x は 最初の1回だけ必要で、PC再起動しても権限は保持されます
手順⑤ squeeze2upnp を起動する
起動
cd ~/ダウンロード/UPnPBridge-3.4.1/Bin
./squeeze2upnp-linux-x86_64-static -z -c config.xml
※ -z オプションによりデーモン化され、起動コンソールを終了しても動作を維持します
動作の停止
pkill squeeze2upnp【補足】
・正しくデーモン化されSSH 切断後も動作を維持できます
・また、この方法ではアイドル時の CPU 使用率も安定します
動作確認のポイント
・Roon の出力先に Squeezebox 互換デバイスとして表示される
・再生ログに以下が出れば成功
FLAC encoding
NP-S2000: uPNP playing
・再生サンプリングレートはログで確認可能
・48kHz ソースは 48kHz のまま再生される
運用メモ
・nohup や systemd での常駐起動では CPU 使用率が高くなる場合がありました
・-z オプションを使った起動では CPU 使用率は安定し、常駐運用が可能でした
・本環境では -z を使った起動方法を推奨します

コメント