Ubuntu + PulseAudioネットワークサーバーがインストールされたLinuxボックスがあります。ラップトップ(Linuxもインストールされている)からローカルネットワーク経由でボックスにオーディオをストリーミングできます。
最近、ラップトップにWindows7をインストールしました。ノートパソコンのオーディオをボックスにストリーミングしたい。 WindowsからLinuxボックスへのPulseAudioを介したネットワーク経由のオーディオストリーミングのセットアップを誰かが手伝ってくれる?
最小限のソフトウェアを使用した本当にシンプルなソリューションは、 VLC as RTP server を使用してオーディオをストリーミングし、pulseaudioに RTPソース を設定することです。
Jack
ストリーミングサーバーを使用した多くのサクセスストーリーがあります。
それらの中の一つ:
https://blogs.gentoo.org/mgorny/2015/01/16/surround-sound-over-network-with-windows-8/
答えの2番目の部分 https://superuser.com/a/378000/6557 (Windowsの部分)はおそらくあなたのケースに当てはまります:
古いWindowsesdドライバー、またはlincoツールを使用します。
AFAIU、現時点ではWindows用のpulseaudioサウンド出力ドライバーはありません。 VLC用のpulseaudio出力モジュールはWindows用に構築されています 。 (これにより、少なくとも簡単な方法でVLCからリモートのPulseAudioサーバーにサウンドを出力できます。)
インターネットで見つかったプログラムを変更して、 WLStream を作成しました。これにより、Windows出力デバイスからオーディオをストリーミングできるため、PulseAudioはLinuxホストでオーディオを再生できます。 2つの間の通信は、PuTTYのplinkを使用して行われます。ネットワークが原因でオーディオストリームに遅延が発生します。plinkから送信されたTCPパケットの特権を変更するか、VoIPの場合と同じようにルーターの構成を変更すると、確実になります。オーディオのストリームラグを減らしますが、私の調査はこれ以上進みませんでした。WLStreamはVisual Studio 2017を使用してコンパイルでき、前回のバージョンからプリコンパイルされています ここ 。
https://github.com/duncanthrax/scream
セットアップには5分もかかりませんでした。複数のサンプルレートでWindowsからのユニキャストおよびマルチキャストrawストリームをサポートします。 Windows、ALSA、Pulse-audioのリスナーがあります。
私はJACKの使用に成功しましたが、Eir Nymの回答とは異なり、要求どおりLinuxボックスからサウンドが再生されています。ここでそれを少し書きました: https://Gist.github.com/kotarou3/3813bbf7833a0e4618f7fbe8a377872d
PulseAudioよりもJACKを使用する利点は、レイテンシーが低くなることです(正しく構成した場合)。音楽を演奏しているだけでも問題ありませんが、ゲームや録音作業などは低レイテンシーが必要です。
後世のための部分的な引用:
WindowsからLinuxにオーディオをストリーミングする
Ubuntu 16.04およびWindows 10 Redstone 1でテスト済み
両方のボックスが同じネットワーク上にある必要があります(マルチキャストパケットがそれらの間で渡されるように)
取り付け
Linux
- ジャックの設定( Cadence で簡単に実行)
ウィンドウズ
- JACKと ASIO Bridge をWindowsボックスにインストールします。
- JACKインストールディレクトリから
regsvr32 32bits\JackRouter.dll
およびregsvr32 64bits\JackRouter.dll
を実行します32bits\JackRouter.ini
および64bits\JackRouter.ini
を変更して、チャネルとサンプル構成に一致させます- (オプション)ASIO Bridge(Hi-Fi Audio)入力をデフォルトの再生デバイスとして設定します
ランニング
- Linuxでnetjack2サーバーを
jack_load netmanager
で起動します(自動ロードするために.jackdrc
に追加することも可能です)- Windows(スタートメニューにあります)でJACK NetDriverを実行するか、
jackd -R -d net
- Windowsボックスのホスト名という名前の新しいデバイスがLinuxJACKパッチパネルに表示されているはずです(Cadenceを使用している場合は Catia )。必要に応じて接続します(注:2つ以上ある場合、チャネルが期待どおりに一致しない場合があります)。
- ASIO Bridgeを実行し(これも[スタート]メニューにあります)、ASIOをオンにし、ASIOデバイスをJackRouterに設定します。
- ASIO Bridgeは、Windows JACKパッチパネルでシステムデバイスへのルートを自動的にセットアップする必要があります。 qjackctl(Jack Controlin Startメニュー)→Connectionsで再確認できます。 -)そして、そうでなければそれらを接続します