« いろいろbuild... | トップページ | クワガタ幼虫 »

2017年3月 4日 (土)

shairport-sync 3.0

unix向けのAirPlay実装、「shairport-sync」が3.0に上がってます。 2.8.6はちゃんとMac上でも動いてます。 これ、Raspberry Pi に入れてAirPlay-Audio機器を作るときなんかには必須のアプリです。

たとえば、、MacのSpeakerからiPhoneの音を流したい。 そんな時にshairport-syncをMacで起動させれば、AirPlay機器としてMacが機能するのですね。

Airlay

で、3.0をgithubから持ってきて・・・ 同じようにbuild。

んー・・ makeでいろいろなlibがないと言われます。うまく/usr/local/include/を探してくれないようです。link張るか、実体copyしてやりましょう。できた。

$ autoreconf -i -f
$ ./configure --with-os-type=darwin --with-ssl=openssl --with-soxr --with-dns_sd --with-stdout --with-ao
$ make

しかしiTunesやiPhoneからAirPlayすると
$ unexpected sample rate!
とエラーが出てexitしてしまいますね。

stdout で動かすとOKなので、libaoへの出力時にエラーになってるっぽい。で、調べてみた。
audio_ao.c の以下の箇所を修正した。

Shairp3

普通に考えれば再生開始時にsamplerateが0だったらエラーにするんだろうけど、0じゃなかったらエラーに落としちゃってる? 下のsampleformatも同様に修正した。

今回私はlibaoを使ってるのでaudio_ao.cだけを修正したけど、ほかにもありそう・・・(笑)

一応この修正でshairport-sync 3.0がMac上で動くようになります。 3.1あたりまで待てば治るのかなぁ?

PS 3/17追記:今日確認してみたら、上記のstart部分は修正されてましたね。libaoの出力はちゃんと治ってました。まだmake時にlibをうまく探せないのは同じですけどね。

|

« いろいろbuild... | トップページ | クワガタ幼虫 »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: shairport-sync 3.0:

« いろいろbuild... | トップページ | クワガタ幼虫 »