ウェブサイト検索

Ubuntu PC/ノートパソコンのスピーカーをAirPlayオーディオプレーヤーとして設定する


このチュートリアルでは、Ubuntu LinuxをAirPlayレシーバーとして設定する方法を示します。これにより、PCのスピーカーでiPhone、iTunes、iOSデバイスおよびサードパーティのAirPlayソースからストリーミングされた音声を再生できるようになります。

Linuxには、Shairport Syncという人気のある無料のオープンソースアプリがあります。これは、元のShairport(サービス終了したもの)からフォークされたAirPlayおよびAirPlay 2のオーディオプレーヤーです。

Shairport Syncは完全なオーディオ同期を提供します。これは、オーディオソースによって指定された正確な時間に出力デバイスでオーディオが再生されることを意味します。

注意 1: Shairport SyncはAirPlayのビデオや写真ストリーミングをサポートしていません。

注意 2: このチュートリアルはUbuntu 24.04でのみテストされています。ただし、現在のすべてのUbuntuリリースで動作するはずです。

ステップ 1: オーディオ/スピーカー デバイス名を確認する

始める前に、Linuxコンピュータのサウンドカードとスピーカーのデバイス名を確認する必要があります。

1. まず、Ctrl+Alt+Tを押してターミナルウィンドウを開きます。ウィンドウが開いたら、コマンドを実行します:

aplay -l

コマンドが見つからない場合は、sudo apt install alsa-utilsを実行してインストールしてください。そして、そのコマンドはすべてのサウンドカードとデジタルオーディオデバイスのリストを表示します。

私のケース(下のスクリーンショットを参照)では、私のラップトップにはHDA Intel PCHという1つのサウンドカードしかありませんが、内蔵スピーカーALC257 アナログとHDMIケーブルを通して接続された外部モニターのスピーカーF24G3を含む2つのスピーカーがあります。

次に、すべてのPCMをリスト表示するコマンドを実行し、前のステップで得たスピーカー名に従って出力デバイスの名前を確認します。

aplay -L

出力が少し長すぎるので、代わりにスピーカー名でフィルタリングするために以下のコマンドを実行することができます:

aplay -L |grep F24G3 -B 1 -A 1

ここです:

  • grep F24G3 – F24G3 に一致する行を印刷するように指示します。最初のコマンドの出力に応じて、自分のものに置き換えてください。
  • -B 1 - 一致する行の前に1行の先頭コンテキストを印刷します。
  • -A 1 – 一致する行の後に1行のトレーリングコンテキストを出力します。

上のスクリーンショットが示すように、F24G3 HDMIスピーカーに直接アクセスするためにはhw:CARD=PCH,DEV=3を使用できます。また、内蔵スピーカーに直接ハードウェアアクセスするにはhw:CARD=PCH,DEV=0(短縮形ではhw:0)を使用できます。

他のすべて(スクリーンショットの下線が引かれているものも)が私のテストで動作しますが、ソフトウェアの変換やサンプルのミキシング、またはその他の目的のためでもあります。

ステップ2: Shairport Syncをインストールして設定する

ソフトウェアパッケージは、Ubuntu 20.04、Ubuntu 22.04、Ubuntu 24.04、およびUbuntu 24.10を含むすべての現在のUbuntuリリースのシステムリポジトリで利用可能です。

インストールするには、単にターミナルを開き(Ctrl+Alt+T)、次のコマンドを実行してください:

sudo apt install shairport-sync

次に、次のコマンドを実行してその設定ファイルを編集します:

sudo gnome-text-editor /etc/shairport-sync.conf

gnome-text-editor を 22.04 およびそれ以前のものには gedit に、XUbuntu XFCE には mousepad に、またほとんどのデスクトップで動作する nano に置き換えてください。

ファイルが開いたら、下にスクロールしてalsa =セクションを見つけてください。その後、次を行ってください:

  • 「output_device」行の先頭にある//を削除して有効にしてください。
  • ステップ1に従って「output_device」値を設定します。私の場合、HDMIスピーカーにはhw:CARD=PCH,DEV=3を使用でき、内蔵スピーカーにはhw:CARD=PCH,DEV=0を使用できます。
  • (オプション) 選択のために、mixer_device、output_rateなど、より多くのルールを有効にして設定することができます。

編集が完了したら、ファイルを保存します。nanoの場合は、Ctrl+Sを押して保存し、Ctrl+Xを押して終了します。

ステップ3: Shairport Syncサービスを有効にして再起動し、適用します

ソフトウェアはavahi-daemonが実行中である必要があります。まず、サービスがアクティブに実行中であることを確認するためにコマンドを実行してください。

systemctl status avahi-daemon.service

動作していない場合は、systemctl start avahi-daemon.serviceを実行して開始してください。

そして、変更を適用するためにShairport Syncサービスを再起動してください。

sudo systemctl restart shairport-sync.service

Debianや他のLinuxでは、ソフトウェアパッケージをインストールした後、サービスがデフォルトで有効になっていない場合があります。その場合は、sudo systemctl enable --now shairport-sync.serviceを実行して、有効化して開始してください。

最後に、iOSデバイスで音楽を再生し、AirPlayを使ってスピーカーへのキャストを選択してください。

注意: 指定されたAirPlayソースには約2または2.5秒の遅延があります。私の場合、音が非常に小さいです。何も聞こえない場合は、iOSデバイスの音量ボタンを押して音を上げたり下げたりしてみてください。

関連記事: