mpd経由のストリーミングシステムオーディオ

mpd経由のストリーミングシステムオーディオ

私はmpdを使って.mpd経由で私の携帯電話(Hi-Fiに接続されている)に音楽をストリーミングしますhttp

しかし、これは私のmpdデータベースにある曲でのみ機能します。私はしばしばブラウザで何かを再生したいと思うし、mpdそれを介してストリーミングすることができます。

スピーカーの代わりにスピーカーpulse audioに出力をルーティングする方法はありますか?mpd

ベストアンサー1

mpdはパルスオーディオ入力ソースを許可しないため、パルスオーディオをルーティングする直接的な方法はありません。渡すMPD。

しかし、gstreamerと少しの創造性を使用することで、達成したいことはまだ可能です。私は数年前にこれをしました。

私は書いたこのアプリグラフの「Gstreamerパイプラインスクリプト」コンポーネントを実装します。

ストリームグラフ http://tiyukquellmalz.org/sean/stream.svg

図を要約すると、次のことが起こります。

  • mpdはディスクから音楽ファイルを読み取り、デコードし、module-null-sinkパルスオーディオタイプのオーディオ出力に「再生」します。
  • Adobe Flash、gnome Shellのビープ音、Webブラウザなど、コンピュータからサウンドを出力する他のプログラムも、オーディオ出力をmodule-null-sinkpulseaudio(システムの基本的なオーディオ機器になる)に送信します。
  • 出力には、ヌルシンクでプッシュされたオーディオを取り、マイクなどの入力デバイスのように再び「キャプチャ」できるソースがmodule-null-sinkあります。.monitor
  • Pulseaudioは、mpd、Webブラウザ、Pulseaudioを使用するすべてを含む、コンピュータ全体ですべてのオーディオプログラムの動的ソフトウェアミキシングを実行します。
  • tribblify私はGStreamerを使用して、システム上の他のプログラムとmpdミックスオーディオを含むpulseaudioヌルシンクモニタオーディオをキャプチャし、MP3エンコーディングを実行し、それをShoutcast / icecastサーバーにストリーミングするプログラムを作成しました。tribblify本質的に「ストリーミングソース」になります。
  • プログラムは、tribblifympdが再生しているオーディオのタグを変更した時点を自動的に検出し、そのタグをshoutcastストリームにプッシュします。
  • Icecastサーバーまたはshoutcastサーバーは同じコンピューターまたは別のコンピューターに存在し、結果をすべての接続クライアントにストリーミングできます。

おすすめ記事