居間のAV AmpをOpenHome化してみた

suu%3CmxGraphModel%3E%3Croot%3E%3CmxCell%20id%3D%220%22%2F%3E%3CmxCell%20id%3D%221%22%20parent%3D%220%22%2F%3E%3CmxCell%20id%3D%222%22%20value%3D%22AV%20Amp%22%20style%3D%22text%3Bhtml%3D1%3BstrokeColor%3Dnone%3BfillColor%3Dnone%3Balign%3Dcenter%3BverticalAlign%3Dmiddle%3BwhiteSpace%3Dwrap%3Brounded%3D0%3B%22%20vertex%3D%221%22%20parent%3D%221%22%3E%3CmxGeometry%20x%3D%22523.5%22%20y%3D%2298.5%22%20width%3D%2270%22%20height%3D%2220%22%20as%3D%22geometry%22%2F%3E%3C%2FmxCell%3E%3C%2Froot%3E%3C%2FmxGraphModel%3E数年前、

先日、思うところあって居間のシステムをOpenHome対応にしてみたところ、大変気持ちよくオーディオ・コンテンツを楽しめるようになりましたので、そのことを以下に書きます。

数年前、マランツ・ブランドの薄型AV Ampを買いました。居間のTVにはこのアンプがつながっており、ステレオ・スピーカーを鳴らしています。薄型TV内蔵のスピーカーは音が貧相なので、このシステムを組んで、いい気持ちで映画を観ることができるようになりました。

DLNAによるシステム

さて、このAV AmpにはDLNA Rendererの機能が搭載されています。そこで、購入当初、ちょっと無理をして実験的に下の図のようなシステムを構築しました。

f:id:suikan:20190105210402p:plain

DLNAだけで構成したシステム

DLNAは家庭用のネットワーク・システムでオーディオ&ビデオ・コンテンツをサーバーに格納しておき、自宅のどこにいてもAVシステムでそれを楽しもうというものです。DMSはDigital Meida Server, DMRはRenderer、DMCはControllerです。Rendererとは、要するに絵や音を出力する装置ですね。DLNAはビデオにも対応しますが、私がとりあえずやりたかったのは、手元のCDからリッピングした音源を居間でも楽しめるようにすることです。

で、このシステムですが散々でした。当初AV AmpのUIからDMSにアクセスしたのですが、あまりに操作性が悪くて断念。まぁこれは、上図のようにスマホDMCアプリを使えばよいことです。

ところが、これも使いにくいのです。一番の問題はDMCのアプリで、アルバム一枚演奏が終わるまで、DMC役のスマホの電源を切れませんし、アプリをバックグラウンドにすることもできません。

要するに常にDMCアプリの面倒を見て置かなければならず、話になりませんでした。

OpenHome

最近になってOpenHomeをというものを知りました。

これは、DLNAの良い所をつまみ食いして、悪いところをただしたようなシステムです。OpenHomeにはいくつか特徴がありますが、最大の特徴は次の2つです。

  • ギャップレス再生が可能
  • プレイリストをRendererが持つ

2番めのものは、ようするにアルバムの再生を指示したあとは、寝っ転がってスマホでネットサーフィンをしようが、雑誌を読もうが好きにできるというものです。考えてみればリラックスして音楽を聴くなど当たり前のことなのですが、DLNAにはできませんでした。

さて、それはいいのですが手元にOpenHome Rendererが無いのでは話になりません。Controllerはスマホアプリを使うにしても、Rendererが無いと音が出ません。

よくしたもので、DLNA RendererをOpenHome Rendererに化けさせるブリッジ・ソフトウェアがフリーで配布されています。Bubble UPnP Serverというソフトです。このソフトはControllerからOpenHomeのプレイリストを受け取り、そのリストに応じてDLNA Rendererに再生指示を出します。ですので、手持ちのDLNAシステムに1要素追加するだけでOpenHomeシステムを構築できます(下図)。なお、OpenHome ControllerとなるアプリはTEAC HR Streamerを使ってみました。蛇足ながら、DLNA RendererにはAmazon Fire StickのアプリであるAirReceiverを使いました。単に、今はAV Ampをネットに接続していないからです。

f:id:suikan:20190105210405p:plain

Bubble UPnP Serverを使ってOpenHome化したシステム

Bubble UPnP Serverは試験的にUbuntu Desktopを使っているPCに入れてみました。設定は簡単ですし。コントローラの使い心地もまぁまぁです。

Bubble UPnP Serverは、Windows / Linux / MacOS版が提供されており、Linux版はRaspberry Piでも動作します。このご時世、どこのご家庭にも使わなくなったRasPiが放置されていますので、こんなふうに役立ててみるのも手でしょう。

OpenHomeについて

OpenHomeに関しては逆木さんの詳細な記事を参考にしました。

av.watch.impress.co.jp

kotonohanoana.com

ThinkPad x230の互換バッテリを購入した

ThinkPad x230は購入から6年ほど経過しました。この間、結構な頻度で使っています。おそらく3日に1度以上は使っていると思います。

流石に電池がヘタってきました。6年も使っていれば仕方がない…とは言えないんですよね。だってThinkPadですよ。省電力マネージャを駆使してこの6年間、バッテリ充電量を80%くらいに抑えてきたのです。意図しない完全放電も2,3回です。へたるなんて納得できません。

f:id:suikan:20181126211506p:plain

セルバランス問題のようです…

セルバランスは理屈の上では外部から強制的に放電量を揃えてやれば解決するのですが、何分ThinkPad x230のバッテリは強敵です。海外まで検索してもバッテリパックを綺麗に分解した写真がありません。セルは健在と思えるだけに残念ですが諦めるしかありません。

というわけで互換バッテリを購入しました。

WorldPlus バッテリー LENOVO ThinkPad X230 X230i X220 X220i X220s 対応 6セル

WorldPlus バッテリー LENOVO ThinkPad X230 X230i X220 X220i X220s 対応 6セル

 

 Lenovoの純正にしようかな、とも思ったのですが流石に値段が3倍近く違うと躊躇します。レビューにビクビクしながら購入。最初は充放電の様子が安定しませんでしたが、完全充電と完全放電を2サイクルほど行ったあとは落ち着きが出てきました。

11月21日に80%設定で充電したあと、5日で2%程度充電量が減りました。ちょっと放電量が多いようにも思いますが、もう少し様子を見てみましょう。

ホームグループが無くなった

自分のPCのWindowsを再インストールしたので、家族のPCのホームグループに再接続しようとしました。ところが、できません。

ホームグループはwindowsの機能で、家にある家族のPCに接続されたプリンタを自分のPCから使う、といったことが簡単にできます。ここ数年この方法でそこそこうまくいっていました(トラブルもありましたが)。

が、そのホームグループがないのです。ホームグループの設定方法をネットで検索しても、Windows10にそのための設定がありません。おかしいな、と検索すること数分。しびれを切らした家族が

「私が印刷する」

と言い出しました。これは会社では起きない問題です。家族のPCの管理責任は私にありますが、与えられる時間はほんの少し。勝手にOSの設定が変わるようでは困ります。

結局、自分のPCに戻って検索した結果がこれ。

  ホームグループは Windows 10 (Version 1803) から削除されました

がっくりです。勝手に変えられると困るんですよね。しばらくプリンタは使えそうにありません。

イスラエルのタクシー事情が激変していた

そういえば先月イスラエルに出張がありました。

ホテルからオフィスまでは1.5km程度で歩ける距離ですが、今回は事情あってタクシーを呼びました。タクシーはホテルのドアマン*1に呼んでもらいます。これは過去も必要に応じてそうしていました。20年ほど前はタクシーがホテルに常時数台いましたし、最近でも呼べば10分程度で来てくれました。

ところが今回は、45分!

うそでしょ、私は余裕を持って15分前に呼んだのに。次の日30分前に呼んだら1時間待ちました!

結局イスラエル、というかヘルツェリアでは「ホテルのフロントにタクシーを呼んでもらう」というワークフローが急速に崩壊してしまったようです。現地はGettと呼ばれるアプリが人気で、みなこれを使っているとのこと。

play.google.com

試しに使ってみたら、なんと5分もせずにタクシーがホテルにやってきます。事前にやってくる車のナンバーもわかりますし、決済は現金でもカードでもOK。チップは乗車中に変更できますので運転手も概ね丁寧です。なにより空港に行くために現金を用意する必要がありません。

帰国後オフィスで同僚に話しましたが、みな

「こいつ興奮して何言ってるんだ」

という表情。ところが、その後出張に行った同僚が帰国後開口一番

「あのアプリすごいですね!」

と話していました。迎車に向かっている車の位置もリアルタイムでわかりますし、やはり便利なアプリです。

それにしても、GETTが便利なのはともかく、そのために崩壊している無線配車サービスを誰もテコ入れせず放置しているというのはどういうことでしょう。バカを見るのは知らない旅行者だけです。

なんというか、この雑なところは20年前から変わりませんね。

*1:でいいのかな

Walkman A56を買った

Walkman A56 を買いました。

Walkmanは一時Android Walkmanを使っていたのですが、大きさの割に容量小さいとか筐体も動作も重いために結局それより先に買ったWalkman S754 (8GB)を使い続けていました。購入したのは2011年で、7年間よく働きましたが流石に電池のヘタリがひどくなってきました。画面の黄ばみはともかく、電池のヘタリは通勤用としては困ります。

ということで、Walkman A56(32GB)を新たに購入しました。

手持ちのCDは今年になって全部*1AACフォーマットでリッピングしなおしました。ついでにジャケット写真もそこそこ大きなものをネットで漁りまくって刷新しています。全部で24GB。

「32GB品なら余裕でしょ」

と思っていたらあらびっくり、ユーザー領域は26GBしかないんですね。まぁ、2GBというと、CD数十枚分ですので最近の購買速度を考えればそれほど困らないです。そうでもないかな?最近また聞いてみたい曲がにょきにょき増えていますが、まぁなんとかなるでしょ。

ともかく、新しいウォークマンは転送速度が非常に速く*2、管理ソフトのmusic centerも以前のソニー製管理ソフトより安定で*3、画面がSシリーズより大きくてジャケットを見るのが楽しく*4イスラエル出張でも現地につくまで余裕で電池が持つ*5ので、これからもずっと使い続けることになりそうです。

そうそう、Liイオン電池の充電を90%でストップする機能がついています。これはいいですね!

 

*1:300枚くらい

*2:24GBに1時間かからなかった

*3:転送中1度もフリーズしなかった

*4:音楽再生中に古いアルバムジャケットを見ながら泣きそうになった

*5:ノイズキャンセラつけっぱなしで飛行中に寝ている

Ubuntu 16.04のビデオドライバいれかえ

ここ最近不調だったUbuntu 16.04 のビデオドライバを入れ替えました。NVIDIA製ドライバに変更後は、安定して動いています。

事の発端はデスクトップ機へのWindows 10再インストールでした。このPCはWindows 7時代から継続的にアップデートをしており、動作がかなり緩慢になっていました。結局たまりかねてWindows 10を入れなおしたわけですが、ついでに入れ替えたUbuntu 16.04 が不安定になるというのは予想外でした。

症状としてはフリーズです。利用中に前触れ無く画面がフリーズし、その後はCTRL-ALT-F2も効きません。電源を落とす以外に対策はありませんでした。

調査

 Googleで調べてみると、NVIDIA製カードのフリーズは多く、しかも長い間解決されていませんでした。ただ、多くの場合CTRL-ALT-F2でキャラクタ端末に移行できており、その点は私と違います。

そこで/var/log/syslogを調べてみました。


    
Oct 28 08:07:20 580s pulseaudio[2372]: [alsa-sink-USB Audio] alsa-sink.c: We were woken up with POLLOUT set -- however a subsequent snd_pcm_avail() returned 0 or another value < min_avail.
Oct 28 08:15:46 580s kernel: [ 3066.343126] nouveau 0000:01:00.0: chromium-browse[25350]: nv50cal_space: -16
Oct 28 08:15:50 580s kernel: [ 3070.400951] nouveau 0000:01:00.0: fifo: SCHED_ERROR 0a [CTXSW_TIMEOUT]
Oct 28 08:15:50 580s kernel: [ 3070.400962] nouveau 0000:01:00.0: fifo: gr engine fault on channel 5, recovering...
Oct 28 08:15:56 580s kernel: [ 3076.201519] [drm:drm_atomic_helper_swap_state [drm_kms_helper]] *ERROR* [CRTC:37:head-0] hw_done timed out
Oct 28 08:16:06 580s kernel: [ 3086.441587] [drm:drm_atomic_helper_wait_for_dependencies [drm_kms_helper]] *ERROR* [CRTC:37:head-0] hw_done timed out
Oct 28 08:16:16 580s kernel: [ 3096.681658] [drm:drm_atomic_helper_wait_for_dependencies [drm_kms_helper]] *ERROR* [CRTC:37:head-0] flip_done timed out

ちょっとわかりにくいですが、08:15:56にdrmのエラーが起きており、それから20秒くらいのメッセージを最後にログは終了しています。調べたところdrmは主犯ではなくその直前、08:15:46に発生したnouveauの問題から煽りを食らって発生したようです。

nouveauはNVIDIAグラフィックス・カード用のオープンソース・ドライバです。このドライバがどうやら原因のようですので、ドライバをNVIDIA製に変更することにしました。

ドライバ変更

ドライバは『ソフトウェアとアップデート』から変更できます。ラジオボタンでNouveauからプロプライエタリのドライバに選びなおし、変更の適用をクリックするだけです。

https://pbs.twimg.com/media/Dql-qZtX4AEBsmU.jpg

結果

日曜日に変更をかけましたが、その後フリーズはなく安定して動作しています。