いまさらながら購入したMac mini、メモリを8GBに増設したところすこぶる快調ですが、問題がひとつ。スリープから復帰直後、マウスカーソルが消失することがあるのですよ。こうなると、システムを再起動するしかありません。Thunderboltと関係ありそうですが……現在、原因と対処法を調査中です。

さて、今回は「AirPlayサーバ」について。RAOP(Remote Audio Output Protocol)というプロトコルを利用し、iTunesやiOSデバイスといったRAOPクライアントからオーディオ/ビデオのワイヤレス転送を受け付けるサーバだが、仕様は公開されていない。だが、AirPlayをより広範囲に使いたいユーザは多いはずで、その方法を探ってみたい。

近ごろのOS Xオーディオ事情

これまでAppleがOS Xユーザに提示してきたオーディオ環境は、iTunesにオーディオトラックを貯め込み、それを適宜iPodに転送して楽しむというもの。オーディオCDからリッピングした曲も、iTunes Storeで購入した曲も、iTunesライブラリにファイルの形で存在するという前提に立っていた。

しかし、iCloudの登場以降、その世界観に変化が生じた。いちどiTunes Storeで購入した曲は、iTunes Storeに購入履歴が残りいつでも再ダウンロードできるため、バックアップを気にすることも、敢えてiTunesライブラリに貯め込む必要もなくなった。現在のところ北米のみのサービスだが、曲(ファイル)の所有を確認できれば同じ曲をiTunes Storeから無償ダウンロードできる「iTunes Match」もスタートしている。

そこで悩みのタネとなるのが、「なにで聴くか」ということ。直接iOSデバイスで楽曲を入手/保管できるようになったとはいえ、いつもヘッドフォン端子からの出力ではさびしい。同じ曲(ファイル)とヘッドホンでも、Macに接続したデジタルオーディオ(USB-DACなど)を通したほうが、明らかに音がいいからだ。iPhoneの機動性を損なわずに、もっといい音を楽しめないものか?

その答えのひとつが「AirPlay」だ。対応デバイス宛てに無劣化でオーディオをストリーミング配信するので、理屈のうえではDock端子のアナログ出力(高級オーディオ機にはデジタル入力に対応する機器もあるが)より音質劣化が少なく、なによりワイヤレスであることがうれしい。iOSデバイスから"飛ばす"場合も、数回タップする程度ですむ。

そこに問題があるとすれば……配信先のデバイスが、AirMac ExpressかApple TV、あるいはライセンスを受けたサードパーティー製品に限定されてしまうことだ。OS XをAirPlay受信機として利用したい、それが今回の狙いである。

←AirPlayの配信先は、Apple TVかAirMac Express、あるいはライセンスを受けたサードパーティー製品の3択だ

↑このように、他のマシンで動作するiTunesからAirPlayを"受ける"ことが狙いだ

OS XをAirPlay受信機として利用したい!

規格としてのAirPlayは、AirMac Expressに採用れた第1世代と、Apple TV 2で採用されている第2世代がある。第1世代はもともと「AirTunes」と呼ばれていたもので、オーディオと静止画像のみサポートされる。第2世代では互換性を維持したものの、ビデオにも対応するなど規格としては大きな違いがある。

また、AirMac ExpressとApple TV 2は、通信に必要な「暗号鍵」が異なる。AirPlayで通信するときには、まず公開鍵を持つAirPlayクライアント(例:iTunes、iOSデバイス)が秘密鍵を持つAirPlayサーバに問い合わせ、鍵が一致すればワイヤレス配信がスタートするしくみだが、AirPlayサーバであるAirMac ExpressとApple TV 2とでは秘密鍵が異なるのだ。

AirMac Expressの秘密鍵は、今年の春に解かれてしまった(関連記事:AirPlayを聴けるフリーソフト「ShairPort」を試す)。一方、Apple TV 2の秘密鍵は守られたまま。だから、AirPlayサーバ互換ソフトが開発されるにしても、現状ではオーディオと静止画像しかサポートされない。

前述した"OS XをAirPlay受信機として利用したい"という願望は、ShairPortおよび派生ソフトにより、とりあえず達成されている。いずれも取り出されたRSA秘密鍵を利用するという点では共通だが、OS X上に構築しようとすると、OpenSSLやAvahiといったライブラリまでコンパイルしなければならず、事実上ビギナーお断りの状態だ。

そこに一縷の光が……というほどではないが、ここに紹介する「RPlay」は、かんたんな操作で手元のOS XがAirPlayサーバに早変わりする。この「RPlay」はShairPortのJava移植版であり、別途Javaランタイムが必要になるが、Finder上でファイルをダブルクリックするだけでいいお手軽さ。起動後に現れるウインドウに適当な文字列を入力し、「Start Airport Express」ボタンをクリックすれば、iOSデバイスにAirPlayの出力先として現れるはずだ。

Lionでは、はじめてJavaの機能を必要とした時点でランタイム環境のダウンロードが始まる

アーカイブを展開し、「Rplay.jar」をダブルクリックする

適当な文字列を入力してボタンをクリックすれば、OS XがAirPlayサーバに早変わりする

iOSアプリ『mDSN Watch』を使うと、RplayがRAOPサーバとして稼働していることを確認できる

もちろん、iOSアプリの『ミュージック』から配信先として選択できる

このRPlay、開発途上のためノイズの発生やストリームの中断もあるが、問題点が解消されれば(Macにデジタル接続された)高級オーディオ機との連携も視野に入ってくる。いちオーディオファンとして、今後のブラッシュアップに期待したい。本音を言えば、OS XにApple純正のAirPlayサーバ機能を搭載してほしいのだけれど。

関連記事