2015年04月05日

Androidタブレットを浴室テレビにする

2015年3月末のケーブルテレビ局のデジアナ変換放送終了に対応するため、ようやく浴室テレビをリプレースした。
これまでは、リンナイ MV-S710 という7インチのアナログテレビが付いており、我が家では大変重宝していた。画質はデタラメだったが、浴室にテレビが有るのと無いのとでは、快適さに雲泥の差がある。

最初は浴室テレビ専用機を検討したが、デザイン的にいまいちなものしかないことと、視野角の狭いものばかりなことから、浴室テレビ専用機は検討から外れ、タブレットでなんとかしてみよう、ということになった。

我が家では以下の構成で浴室テレビ視聴環境を構築した。

・浴室テレビ側
 テレビ用端末  :10.1インチ Androidタブレット F-05E (防水、Full HD)
 視聴用アプリ  :RemoteTest+MX Player
 タスク制御   :AutoMagic

・母艦側
 チューナー端末 :PC(Windows7)+PT3+RecTask+EDCB
 配信アプリ   :RemoteTestServer+VLC

完成図はこんな感じ。F-05Eを設置したところ。


余談だが、F-05Eは、余生を浴室テレビとして活躍するために生まれてきたと言っても過言ではないぐらい、浴室テレビに適した構造だった。
おもて面のボタンで電源ON/OFF可能、スピーカーもおもて表面、背面に電源端子があるので、配線を見せずに取り付け可能、といった感じで、まさに浴室テレビ向け。


テレビの準備
まずはAndroidタブレットをテレビとして利用できるようにしておく。
RemoteTestを使って視聴する手順はいろいろ紹介されているので、ここでは触れない。
参考までに、RemoteTestServerの設定ダイアログはこんな感じ。



浴室内での操作を楽にするために
Androidタブレットをテレビとして利用できるようになったところで、以下設定を行った。

そもそもAndroidタブレットはテレビ専用機ではないため、電源やら後始末やらを考えてあげなければならない。例えばテレビ視聴中に、いきなり電源OFFにしてしまうと、母艦側のストリーミング処理は走ったままになってしまい、チューナーも掴みっぱなしになってしまう。
これらを対処するため、電源OFF時の後始末をAutoMagicにやらせる。

基本的に、どんな状態であっても、電源ボタンを押すだけで終了できるようにしている。


AutoMagic動作概要
AutoMagicにて、電源ON/OFFをトリガーにして実行されるタスクを用意し、動作を自動化している。こんな感じで2つのタスクを用意。


それぞれの動作概要は以下の通り。

■F-05Eの電源をONにした場合の動作



左から順番に、
0. トリガー=ディスプレイがONになったら以下を実行する

1. WOLパケットを母艦に飛ばし、母艦を起動させる

2. 電源OFFのトリガーを有効化

3. 電源ONのトリガー(本タスクのトリガー)を無効化
※これをする理由は、次項の「F-05Eの電源OFFにした場合」を参照。

4. RemoteTestを起動する

5. 母艦が応答できるまでの数秒を待機させる(準備中ダイアログ表示)


6. RemoteTest上のサーバ名箇所を自動クリックする
ホスト名部分を自動クリックさせ、以下のチャンネル選択画面に遷移。


ここまでを電源ON時に自動で実行させる。

あとはチャンネルをタップすることで番組が表示される。

あらかわいい!個人的には眞子さまのほうが好みだけど(*^_^*)

チャンネルの変更は、左下の戻るボタンで一旦チャンネル選択画面に戻る必要がある。このチャンネル変更の操作を受け入れてもらえるか、一番懸念していたが、一覧で選べることと、番組名が出ていることで、逆に好評だった。

ちなみに、チャンネル一覧で表示されるチャンネル名は少々いじっている。
チャンネル名は、TvTestフォルダ内の「BonDriver_PT3-T.ch2」内の文字列が反映される。

BonDriver_PT3-T.ch2 例
; TVTest チャンネル設定ファイル
; 名称,チューニング空間,チャンネル,リモコン番号,サービス,サービスID,ネットワークID,TSID,状態
;#SPACE(0,地デジ(UHF))
【1】 NHK総合,0,14,1,0,1024,32736,32736,1
【2】 Eテレ,0,13,2,0,1032,32737,32737,1
【3】 TVK,0,5,3,0,24632,32375,32375,1
チバテレビ,0,17,3,0,27704,32327,32327,0
テレ玉,0,19,3,0,29752,32295,32295,0
【4】 日本テレビ,0,12,4,0,1040,32738,32738,1
【5】 テレビ朝日,0,11,5,0,1064,32741,32741,1
【6】 TBS,0,9,6,0,1048,32739,32739,1
【7】 テレビ東京,0,10,7,0,1072,32742,32742,1
【8】 フジテレビジョン,0,8,8,0,1056,32740,32740,1
【9】 TOKYO MX,0,7,9,0,23608,32391,32391,1
J:COM HD,0,0,10,0,23656,32397,32397,0
J:COM横浜,0,6,11,0,24697,32383,32383,0
放送大学,0,15,12,0,1088,32744,32744,0
各チャンネルの最後のカラムを0にすると一覧に表示されない。


■F-05Eの電源をOFFにした場合の動作



0. トリガー=ディスプレイがOFFになったら以下を実行する
電源OFF時、ディスプレイがOFFになると実行される。従って、電源ボタンで一瞬画面OFFになり、その後このタスク実行のために画面ONになり、以下のタスクが実行される。
※電源ON時のタスク内で、3.電源ONトリガーの無効化は、ここで電源ONタスクが発動しないようにするため。

1. 戻るボタンを複数回自動押下し、RemoteTestを完全に終了させる
連射すると取りこぼすので、押すごとに300msのsleepを挟む。戻るボタンは5回押したことにする。実際は5回も押す必要はないが、確実にホーム画面まで戻すために多めに押させる。RemoteTestを完全に終了させることで、母艦側の処理も完全に終了させることができる。

2. 電源OFFのトリガーを(本タスクのトリガー)を無効化
※これをやっておかないと、この後の電源OFF時にまた本タスクが起動される。

3. 電源ONのトリガーを有効化


4. スリープに移行させる=画面OFF



以上で、テレビのOFFは、電源ボタンだけで対応できるようになった。
3月中旬頃からこれまでの間、プロセスが残ることなく安定稼働できている。


■画質とか、RemoteTestの設定とか
IPS液晶なので視野角は不自由なく問題ない。解像度も高いので、リンナイ MV-S710から比べると超絶グレードアップした感がある。欲を言えばもう少し発色が濃いと最高だが、浴室テレビとしては十分すぎるほどにきれいだと思う。

配信設定はいろいろ変えてみたけど、最終的には1440x1080の30p(BSの場合は1920x1080の30p)に落ち着いた。
考え得るあらゆる設定を試したが、残念ながら60pでの配信はできなかった。
前回レビューしたPIX-BR321(=1280x720 30p)よりは確実に画質はいいので、とりあえずこのまましばらく運用してみようと思う。
配信時の母艦側のCPU負荷は35%前後。

放送波をそのまま変換せずに配信すると、一見、問題なく表示されているように見えるが、インターレース縞が出ないように表示されているだけ。
インターレースを素で表示しているのか、1440x540の解像度のようで、よく見ると輪郭がギザギザ、フレームレートは30で、結構残念な感じ。ただインターレース縞は見えないし、母艦の負荷もほぼ0なので、これはこれでアリかもしれないけど。

ちなみにRemoteTestServerの配信設定は以下の通り。
VLCOption.txt の内容。黄色の部分が今回追加した部分。
無変換,'-vvv %src% --sout=#duplicate{dst=transcode,select="es=0",dst=transcode{acodec=mpga,ab=128,channels=2,afilter=audio_format},select="es=1"}:standard{access=http{mime=video/mpeg},mux=ts,dst=%dest%} --no-ts-es-id-pid --sout-ts-pid-audio=68 --intf="rc" --rc-quiet --rc-host=%rc-host% vlc://quit'
1080p,'-vvv %src% --sout=#duplicate{dst=transcode{vcodec=h264,vb=4000,venc=x264{profile=main,keyint=60,preset=faster}},select="es=0",dst=transcode{acodec=mpga,ab=128,channels=2,afilter=audio_format},select="es=1"}:standard{access=http{mime=video/mpeg},mux=ts{use-key-frames},dst=%dest%} --no-ts-es-id-pid --sout-ts-pid-audio=68 --intf="rc" --rc-quiet --rc-host=%rc-host% vlc://quit'

720x480,'-vvv %src% --sout=#duplicate{dst=transcode{vcodec=h264,vb=1500,venc=x264{profile=main,keyint=60,preset=faster},width=720,height=480},select="es=0",dst=transcode{acodec=mpga,ab=128,channels=2,afilter=audio_format},select="es=1"}:standard{access=http{mime=video/mpeg},mux=ts{use-key-frames},dst=%dest%} --no-ts-es-id-pid --sout-ts-pid-audio=68 --intf="rc" --rc-quiet --rc-host=%rc-host% vlc://quit'
960x540,'-vvv %src% --sout=#duplicate{dst=transcode{vcodec=h264,vb=2000,venc=x264{profile=main,keyint=60,preset=faster},width=960,height=540},select="es=0",dst=transcode{acodec=mpga,ab=128,channels=2,afilter=audio_format},select="es=1"}:standard{access=http{mime=video/mpeg},mux=ts{use-key-frames},dst=%dest%} --no-ts-es-id-pid --sout-ts-pid-audio=68 --intf="rc" --rc-quiet --rc-host=%rc-host% vlc://quit'
1280x720,'-vvv %src% --sout=#duplicate{dst=transcode{vcodec=h264,vb=3000,venc=x264{profile=main,keyint=60,preset=faster},width=1280,height=720},select="es=0",dst=transcode{acodec=mpga,ab=128,channels=2,afilter=audio_format},select="es=1"}:standard{access=http{mime=video/mpeg},mux=ts{use-key-frames},dst=%dest%} --no-ts-es-id-pid --sout-ts-pid-audio=68 --intf="rc" --rc-quiet --rc-host=%rc-host% vlc://quit'
1080pの設定を使用中。地デジは1440x1080、BSは1920x1080で配信される。
ただし先に書いた通り30p。

参考までに、以下のような設定にしても60pにはならなかった。
1280x720Linear,'-vvv %src% --sout=#duplicate{dst=transcode{fps=59.94,vcodec=h264,vb=3000,venc=x264{profile=main,keyint=60,preset=faster},width=1280,height=720,deinterlace-mode=linear},select="es=0",dst=transcode{acodec=mpga,ab=128,channels=2,afilter=audio_format},select="es=1"}:standard{access=http{mime=video/mpeg},mux=ts{use-key-frames},dst=%dest%} --no-ts-es-id-pid --sout-ts-pid-audio=68 --intf="rc" --rc-quiet --rc-host=%rc-host% --sout-transcode-fps=59.94 --sout-deinterlace-mode=linear vlc://quit'
他にもいろいろ試したけど30pにしかならなかった。

60pのmp4を無変換で配信すると60pで表示できているので、MX Playerの問題ではなく、配信側(VLC)の問題のようだ。
放送波を60p変換して配信する設定をご存知の方、教えていただけますと幸いです(^^)


posted by frogie at 15:30 | Comment(0) | TrackBack(0) | 浴室テレビ | このブログの読者になる | 更新情報をチェックする

2015年04月30日

無線LAN中継器(リピーター) BUFFALO WEX-733D 設定メモ

先日、浴室テレビをAndroidタブレットにリニューアルしたが、WiFiアクセスポイントから離れていることもあり、映像が途切れることがあった。
改善すべく、WiFi中継機(リピーター)BUFFALO WEX-733Dを導入したが、設定で大いにはまったので備忘録を兼ねて設定メモ。

当方の環境と接続構成は以下の通り。

(A)アクセスポイント:NEC Aterm WG1400HP
           WPA2-PSK(AES)、SSIDステルス、MACアドレス制限
(B)リピーター   :BUFFALO WEX-733D
(C)浴室テレビ   :ドコモ F-05E
接続(A)-(B)間   :5GHz
接続(B)-(C)間   :2.4GHz or 5GHz


リピーター BUFFALO WEX-733D の設定

1.初期設定
通常は、WPSボタンとかで手間はかからないと思うんだけど、当方の場合、アクセスポイントに、SSIDステルス、MACアドレス制限を行っているので、WPSボタンでは設定できない。
設定画面を開くには、有線LANポートにPCを直結して行う。ストレートケーブルでOK。

WEX-733Dを起動し、一旦初期化(WPSボタン10秒長押し)。
自動で再起動後、LEDの点灯がPower1つになったら、LANケーブルをPCと直結。
WEX-733DがDHCPサーバとなり、以下のIPアドレスが割り当てられる。

WEX-733D:192.168.20.1
PC   :192.168.12.100

WEX-733D管理画面
http://192.168.20.1/

ID: admin
PW: password

上流のAterm WG1400HPはMACアドレス制限をしているので、登録するMACアドレスを取得するため、システム情報にて、2.4GHzと5GHzのMACアドレスをメモしておく。
システム情報

※1 アクセスポイントに登録する接続許可MACアドレスは、このMACアドレスではダメだがメモする。このMACアドレスを元に自分で計算が必要。

2. アクセスポイントにリピーターのMACアドレスを登録する
上記のシステム情報画面で確認できるのは、下流側のMACアドレスであり、登録すべき上流側へのMACアドレスは、なんと自分で算出しなければならない。

#そもそも下流側へのMACアドレスがわかったところで何に使うのか?
#考えたやつヴァカだろ、と言いたくなるレべル。
#まさか下流側のMACアドレス表示とは気付かず、無駄に1回目のはまり。

アクセスポイントに登録するMACアドレスは、以下の方法によって算出する。
http://faq.buffalo.jp/app/answers/detail/a_id/15113#02

上記より抜粋
WEX-733Dの設定画面にて、2.4GHzと5GHzのMACアドレスを確認(これは下流側のMACアドレス)。
それぞれ以下の計算式に当てはめて算出。

1)無線MACアドレスの2桁目に2を足す
 ※2桁目の想定される値:0→2、4→6、8→A、C→E

2)無線MACアドレスの8桁目が奇数の場合、1を引く(偶数の場合はそのまま)
 ※8桁目の想定される値:1→0、3→2、5→4、7→6、9→8、B→A、D→C、F→E

例)CC:E1:D5:4A:1C:FC
   ↓
   CE:E1:D5:4A:1C:FC

   B0:C7:45:31:47:75
   ↓
   B2:C7:45:30:47:75

上記算出したMACアドレスを、接続許可MACアドレスとしてアクセスポイントに登録する。

3.上流アクセスポイント(WG1400HP)の5GHz使用チャネルを固定する
上流アクセスポイントの設定にて、5GHzのオートチャネルセレクト機能を、
「使用しない」に設定。 ← 超重要
使用チャネルを36(W52)にする。

オートチャネルセレクトにしていると、WEX-733Dの設定直後は繋がるんだけど、15分もすると切断され、二度と接続できなくなり、WEX-733Dを初期化する以外、回復させることができない。有線LAN接続でもダメ。
接続できてしばらく使えるだけに、原因がさっぱりわからず、2回目のはまり。

4.WEX-733Dの諸設定を行う
設定画面は、基本的に見ればわかるので割愛。

備忘録としてのスクリーンショット
詳細設定


2.4GHz 無線設定


5GHz 無線設定


詳細設定 MACアクセス制限
WEX-733Dへ接続する機器(F-05E)を登録する。
ちなみに、上流のアクセスポイント(WG1400HP)のMACアドレス制限は何も引き継がない。つまり、WEX-733Dに接続できたものは、上流の制限に関わりなく、上流側と通信可能となる。
なのでMACアドレス制限を掛けたい場合は、WEX-733Dにも登録する必要あり。

5.設定を保存して再起動
電源投入後、リピーターとして機能し始めれば完了。

ちなみに電源を入れてリピーターとして機能し始めるまでに10分近く掛かる。
ちょっとした設定変更でも再起動要求されるのは、ほんと勘弁してほしい。

2015.06.28追記
本体のスイッチを5GHz固定にして、上記スクリーンショットの「5GHz 無線設定」を「無効」にし、さらにF-05Eの5GHz接続設定を削除したら、リピーター再起動後の復帰が格段に早くなった。(1分ぐらいで立ち上がり完了)
これは、上流のアクセスポイントとは5GHzでのみ接続し、下流側は2.4GHzでのみ接続する設定。

以前の設定で遅かった原因は、推測の域を出ないが、おそらく、上流側アクセスポイントと接続が確立する前に、下流側から来た接続要求を受け付けてしまい、おかしなことになっているのではないかと思われる。上流−下流が同周波数帯の場合は、時分割で処理していることから、先に受け付けた下流側からの接続処理が完了するまでの間、次の処理(上流側との接続)に移れず、何らかのタイムアウト待ちに陥っているのではないか、と思われる。
----

F-05Eからの接続について
F-05EのWiFiがしょぼいため、SSIDをステルスにしてると5GHzが繋がらない。
しょうがないので、WEX-733DとF05E間は、2.4GHzだけにしている。

消費電力について
2015.06.28追記
 アイドル時:1〜2W
 TV視聴時 :2W
優秀だと思う。これなら24時間つけっぱなしでも安心。
TV視聴時は、最大6Mbps程度の通信量。
----

最後に
有線LANポートは初期化時しか役に立たないので、設定誤りで繋がらなくなった場合は、迷わず初期化するべし(WPSボタン10秒長押し)。

2015.06.28追記
通信の安定性、ファームウェアの出来は、正直低い印象。
リンクアップ速度の著しい低下(1Mbpsでリンク)や、接続断が時々発生する。また、実効速度が通常時の半分程度しか出ない状態になることも時々あり、その際は、WEX-733Dの再起動で元に戻る。
F-05E側の問題かもしれないし、無線なので外部の影響も否定できないが、WEX-733Dの再起動で元に戻るのは、WEX-733Dの問題と考えざるを得ない。

また、運用中の状態で、管理画面の画面左のメニューの上から2番目「接続設定」をクリックすると、上流側アクセスポイントとの接続が失われ、本体再起動しないと復帰できない。
なので「接続設定」に進むことができない。(初期設定時は可能)

現状、消費電力の低さだけが取り柄ってところ。
今後のファームウェアのアップデートに期待してます。
----
posted by frogie at 15:18 | Comment(0) | TrackBack(0) | 浴室テレビ | このブログの読者になる | 更新情報をチェックする