« TvRemoteViewer_VB バージョンアップ支援ツールを公開しました | トップページ | QSV/NVEnc + TVRemoteViewer_VBで軽量PCでもロケフリ フルHDでも気軽にストリーミング »

2015年11月24日 (火)

Amazon Fire TV StickをTvRemoteViewer_VBで活用する

最近Amazonが出しているストリーミング再生用のガジェット Fire TV Stick

が手に入りましたので、TvRemoteViewer_VBでこれを活用する手順を検証しました。ここではそれをご説明したい思います。

結論から言えば、Fire TV Stickも、(また据置型のFire TVもアーキテクチャは同じですから恐らくは同じ方法で)Chromecast/AndroidTVとほぼ同じように動きます。
またノートPC等と一緒に持ち運べばリンク先の解説と同じ方法で、滞在先のテレビ/モニタを「おうちTV化」することも可能になります。

Tvstart0

FireTV Stickの中身はAndroid(現在 lollipop )ベースですから、Android5.x のブラウザで動かすTvRemoteViewer_VBと特性はほぼ同じです。性能はこちらのスペック表にあるように、小さいながらも十分に速く、動画も滑らかです。実際Javascriptの性能を計測してみても、

Jscapa

比較すればChromecastよりは上、Nexus Playerよりは下の性能になり、実況もそこそこのフレームレートできちんと流れます。

結局AndroidTVとFireTVはほぼ同じ作りで、本質の違いは Googlecastの仕組みの有無という点に尽きます。(もう1つ、ここに関係ない違いとしてワイヤレスHDMI回路=Miracast支援H/W の有無がありますが。)
FireTVでTvRemoteViewer_VBを動かす場合、Googlecast + Media Player Libraryの持つH/Wに最適化されたメディア再生機能は使えず、汎用ブラウザの動画エンジンに依存することになるので、最近まで動画性能はやや劣る感じで、特にフレームレートが十分ではなく動きがぎこちないシーンがありました。が、2015/12末に落ちてきたFireOS 5.0.4 536116920 で劇的に改善され、現在ほぼ同等の高画質環境になっています。

但しAndroid上のブラウザ固有の"癖"はそのまま持っています。具体的には
(1) Dolphin Browser以外のブラウザでは動画開始に必ず人手の介在(開始ボタンのクリック/タップ)が必要になる。 →ご参考
これではリモコンで操作するデバイスとしては使い物になりませんので、必然的にDolphin Browserから使うことになります。
またFirefox/Flashfoxでも自動開始ができFlashも再生できるものの、やはり通常のHLS動画が遅くて非実用的ですので、Flashを再生したい時以外は使わない方が良いと思います。

(2)TVのライブ再生中、およびファイル再生でエンコード未了の間の(ストリーム再起動を伴わない)シークはできません。 →ご参考
ファイル再生時の自由なシークはエンコード終了後にできるようになります。

(3)ただし、プログラム(リモコン機能)からのボリューム操作は通常のAndroid端末と違いきちんと出来ることが判りました。したがって普通にTvRemoteViewer_VBを使う際に付属のリモコン操作はほとんど必要ありません。(他アプリからの切り替え時に当然必要なので、全く不要という事にはなりませんが。)

こういった特性はありますが基本的には素直なAndroid端末として動作しますので、Fire TV Stick起動と同時、あるいはFire TV Stickのトップ画面のアイコンからDolphin Browserを起動すれば、ブラウザのホーム画面の設定にしておくことでTvRemoteViewer_VB の画面が自動的に立ち上がって、手元の端末からリモコン機能

Firecontrol_2

を使って、テレビや録画を全画面で映すにしろ実況を流すにしろ、全ての操作ができることになります。

以下ではこれを使うためのカスタマイズをご説明したいと思います。

1.カスタマイズ作業の流れ

Android端末の一種と考えれば、これが普通に使えることは何の不思議もありませんが問題は、どうやって利用時にキーボードやマウスなどが不要な形で動くようにするか、という点になります。

この辺、本当はGoogleCastの仕組みがFire TV でも動くようにすれば簡単で、Chromecast/AndroidTVと同じ操作性になる上、Media Player Libraryの優れた機能もそのまま使えることになります。
実際のところ、今年(2015)の8月まではAmazonが有料プログラムとしてGoogleCast互換機能を提供していたようです(痕跡はこちらに今でも残っています)が、残念ながらGoogleからリバースエンジニアリングの疑いがあるというクレームが出て、差止めになっています。
まあこの辺はChromecast/AndroidTVにとっては差別化の根幹部分なのでGoogleも簡単には外に出したくないと思いますし、ましてや今のGoogleとAmazonの関係を考えると、この機能の提供は当分望めないと思います。

そこでここではAndroid用に流通しているプログラムのみを使って、そういった操作が出来るようにします。
必要なカスタマイズ項目と実現方法は以下の通りです。

カスタマイズ項目 課題 解決方法
1)マウス/キーボードの準備 FireTV付属リモコンだけでは、通常のAndroid用プログラムの導入やカスタマイズ操作は殆どできない。 BT(Bluetooth)マウス(必須)とキーボード(推奨)を用意する。導入の各局面で付属リモコン、マウス、キーボードのどれが必要かは都度変わるが、キーボード操作はリモコンで何とか代替できてもマウス操作はできないので、最低限BTマウスは必要。
2)Android用のプログラムが導入できるようにする。 Fire TVはGoogle Playにはログインできず、Amazonのサイトで入手できる対応プログラムも限定的である。 各プログラムをapkファイルから直接導入する。
3)野良アプリ用プログラムメニューの準備

apkファイルから直接導入したプログラムはFire TVのメニューに表示されない。

※但し2016/4/初旬に落ちてきたファームバージョン5.0.5.1では、標準で「Homebuttonボタン 2回クリック」で野良アプrが表示されるようになりましたので、ここの導入は一応不要です。

そのようなトップメニューを出すプログラムを導入する。
4)Dolphin Browserのカスタマイズ Dolphin BrowserのJetpackと相性が悪いようで、併用すると動画自動スタートが効かない。 またブラウザのタブや操作用アイコンが表示され、邪魔になる。 「jetpack」の機能をOFFにする。またホーム画面の設定や全画面化など、必要なカスタマイズをおこなう。
5)スリープの抑止 FireTVは20分程度でスリープ移行する仕様になっており、普通は動画再生中はスリープ動作は抑止される筈だが、ブラウザで動画を表示させる場合抑止ができず、視聴中に勝手にスリープしてしまう。(スリープ時間のカスタマイズも出来ない。) スリープを抑止するプログラムを導入し、システムスタート時に常駐させる。
6)FireTV起動時のプログラム自動開始 FireTV起動のたびにマウスやキーボードを使って操作するのは非常に面倒 基本FireTVを起動すればDolphin Browserまで自動で起動するようにする。(付属リモコンのHomebuttonボタン を押せばトップメニューに戻る)

以下ではそれぞれの作業手順をガイドいたします。個々の作業はTvRemoteViewer_VBを導入された方なら問題ないレベルだと思いますし、特にグレーゾーンな作業もありません。

2.各カスタマイズ作業

0)Fire TV Stickの準備

まずそもそもですが、Fire TV Stickを購入したらWiFiの定義やプログラムアップデートなど、基本の設定をおこなってください。手順は付属のガイド(こちらはそのPDF)の他、本家の各種ヘルプもご参考に。

実際の導入体験記等はFire TV Stickでググれば沢山出てきます(
まあ発売間もない時期ですしタイアップ記事と思われるものも多いのですが(Chromecastもそういう所は同じ)、とりあえず雰囲気は判ると思います。

1)BT(Bluetooth)マウス/キーボードの準備

導入・設定が終わってしまえばマウス/キーボードとも殆ど不要になりますが、導入時にはこれらが必要になります。
特にマウスは付属リモコンで代替できない操作があるため、必須です。
なお、Andorid端末をマウス代わり使うソフト・等もあるのでBTマウスが無い場合代替できるかもしれませんが、どの局面でも使えるか当方テストしていませんので、使う場合は自己責任でどうぞ。
キーボードの文字入力はリモコンから(ふっかつの呪文方式で)入力できるので必須ではありませんが、あるとストレスが減ります。tabキーでの項目送りも、リモコンの十字キーでも代替できますが、操作が速くなります。

といってもマウス・キーボードは導入の為だけの利用ですので、手許に既に持っている場合は極力それを流用し、またこのために手に入れるのであれば、以下のような最低限のもので十分です。

入手しておけば、今後いろいろFireTVを活用するのにも役立つと思います。

マウス・キーボードを用意できたら、FireTVのトップメニューから「設定→コントローラー→その他のBluetoothj端末」を選んでください。

Bt1

端末を検索する、を選んでマウス/キーボードのペアリングボタンを押せば、暫くして以下のように左欄に検出され、使えるようになります。

Bt2
(キーボードの場合確認の数字入力を求められますので、入力してEnterを押してください。)

以上でマウス/キーボードが使えるようになります。
なおつまらない事ですが、キーボードは日本語キーボードであっても英語101キーボードの扱いになりますので、@や:のような記号の入力はキートップの表記位置と異なります。ご注意ください。

2)Android用のプログラムが導入できるようにする。

① apkファイルについて

Android用フリーのプログラムは、本家のGoogle Playストアの他に、導入用モジュール(.apkファイル)の形でいろいろなサイトに存在しており、このapkを入手してAndroid上でそのファイルをクリックすれば、PlayストアにアクセスできないFireTVのようなデバイスにも大抵のプログラムは導入できます。(正常に動くかどうかは別として。)

ただ、apkの配布サイトは検索する人が多いせいか偽装サイトや、比較的まともなものでも(踏んではいけない)トラップ広告が非常に多く、注意が必要です。特にAndroid端末から直接アクセスするとトラップが発動しやすくなっていますので、apkの入手は手元のパソコンでおこなってください。

いくつかのサイトの中でも(今のところ)比較的内容豊富でトラップも見分けやすいサイトをご紹介しておきます。

(1) APKMirror
http://www.apkmirror.com/
Fire_apk_mirror1

右側のSearch欄にキーワードを入れれば、該当プログラムが見つかればその各バージョンや(区分けがある場合)無印のarmプラットホーム用の他atomなどインテルベース向け(x86)版などアーカイブも豊富ですので、大所はここで見つかると思います。

(2) apk4funやそれにリンクしたzippyshareなどが割と良く使われている感じです。

Fire_apk_4fun1

Fire_apk_zippy1

身近なところで言うと斧のような位置づけでしょうか。トラップは多いもののちゃんと見分ければ、正しいファイルのダウンロードが可能です。
ググってサイトを開くときは、この辺のサイトであれば比較的まともな内容であると判断できると思います。

(3) 導入済のapkファイルを抽出する方法

ここでは特に使う必要はありませんが上記のようなサイトに目的のプログラムが見当たらない場合、他にAndroid端末をお持ちであれば、Playストアから導入したアプリからapkファイルを抜き出して、それをコピーすることもできます。
(但しお持ちのAndroidのバージョンやCPUがFireTVと異なる場合、適したapkになっていない事もあります。)

手順は
i)  APK Extractor でapkファイルを抽出し、Android端末ローカルに保存する。(ExtractedApksフォルダの存在場所は右上のsettingを開けば判ります。)
ii) 下のほうでご説明しているES File Explorerは、Android汎用ファイラとしてPlayストアから導入できますので、これを使ってリンク先と同じようにPCの共有フォルダを開き、そこにAPK Extractorで抽出したapkファイルをコピーする。

これで大抵のAndroid用プログラムをFireTVに導入できるようになります。

② 共有フォルダをPC側に用意し、FireTVから開けるように公開する。

PCにダウンロードしたapkは、通常のWindowsの共有フォルダに置いておくことで、FireTVで読んで導入できるようになります。
そのためにPC側に専用のフォルダを作成するのが良いと思います。(ここでは\apk フォルダ とします。)
このフォルダはapkを受け渡す為だけに使いますので、とくにパスワード等は必要ないと思います。(作業が終わったら速やかに削除すれば良いわけですし。)
\apkフォルダを作成したら、以下のようにエクスプローラー上で右クリックして、共有→特定のユーザー の順に選択します。

Folder1

すると以下のようなダイアログが出てきますので、

Folder2

ここに追加でEveryone を加えてください。以上で共有の設定はできましたので、ここに以下のapkファイルをダウンロードして入れていってください。

(1) Dolphine Browser 利用するブラウザ
http://www.apkmirror.com/apk/dolphin-browser/dolphin-browser-dolphin-browser/

最新バージョンのものでOKです。リストの右にある↓マークを押して、次のページのGoogle Playボタンの右にある「Downloadボタン」を押すことでダウンロードが開始されます。

(2) AutomateIt FireTV 起動と同時にDolphine Browser等を起動して画面表示するためのツール
http://www1.zippyshare.com/v/hF8C4FMd/file.html

右側の「DOWNLOAD NOW」を押せばダウンロードが開始されます。なお余計なアドがポップアップした時には、間違って踏まずに速やかに閉じてください。

(3) FireStarter ワンクリックでアクセス可能なメニューを作成し、apkから導入したプログラムを表示させるツール
https://github.com/sphinx02/FireStarter/releases

Downloads 欄にあるFireStarter-vx.x.x.apk の最新のものをクリックしてダウンロードしてください。

(4) Stay Alive! Keep screen awake システムの自動スリープ移行を抑止するツール
http://www13.zippyshare.com/v/ipIYJEKF/file.html

 (2)と同様に、右側の「DOWNLOAD NOW」を押せばダウンロードが開始されます。

③ FireTV側の準備 その1.ストアを経由しないアプリを導入できるようにする。

普通のAndoridと同じく、FireTVも標準の状態では、apkで導入するプログラムは「野良アプリ」と見なされますので、その導入を許可しておく必要があります。
そのために、「設定→システム→開発者オプション」を開いて、

Inst1

Inst2

「不明ソースからのアプリケーション」をONにしておいてください。

また直接は関係ありませんが、その上の「ADBデバッグ」もONにしてください。これは後ほどご説明する、「野良アプリ用メニュー」を表示できるようにするために必須の設定です。

④ FireTV側の準備 その2 PCの共有フォルダを開けるようにするため、ES File Explorer を導入する。

ES File Explorer はFireTV用のファイラで、Amazonから正規に提供されているアプリ(無料)ですので、これを利用するのが最も簡単だと思います。

FireTVのメニューから「アプリ→カテゴリ→ユーティリティ」の順に選んでいくと、図のようにES File Explorerが見つかると思います。

Esf1

これをクリックして導入してください。「ホーム」の先頭にアイコンが追加されますので、

Esf5

以後はこれをクリックすることでES File Explorerが開くようになります。

Esf2

ES File Explorerはこのような画面になりますので、マウスで左欄の「ネットワーク→LAN」を選び、次に下の並びにある「スキャン」を押してください。
暫くすると各PCのIDが表示されますので、共有フォルダを作成したPCをクリックしてください。すると一覧の中に、共有フォルダの名前が出てきますので、

Esf3

ここで\apk をクリックしてください。パスワードはかかっていないのでそのまま開きます。

Esf4jpg

中には\apkフォルダに入っているapkファイルの一覧が出ますので、それぞれをクリックすることで導入が開始されます。

なおその際、通常のAndroid端末でのapk導入と同じように以下のようなダイアログを操作していくことになりますが、

Apk1Apk2

Apk4Apk3

この際の「次へ」「インストール」のようなボタンはリモコンではうまく押せません。そういう時はマウスかキーボードの「tab」キーで選択した上で「enter」キーを押してください。
このように局面・局面でマウス/キーボード/付属リモコン のどれが操作に適しているかが変わりますので、うまく反応しないときはそれぞれを試してみることをお勧めします。

なお、apkフォルダに新しいファイルを追加した場合は、下の「再読み込み」ボタンを押せば最新の状態が反映されます。

3)野良アプリ用プログラムメニューの準備

Dolphin Browserは 5) にあるのカスタマイズによって、FireTV起動と同時に立ち上がってTvRemoteViewer_VBの初期画面を全画面で表示できるようになります。

しかしFireTVは当然他の用途にも使いますので、必要に応じてブラウザから抜けたり、また再度起動したりが出来るようにしなければなりません。
しかしapkから導入したアプリはFireTVにとっては「野良アプリ」ですので、FireTV標準のトップメニューには表示されず、普通に起動するには

「設定→アプリケーション→インストール済みアプリケーションを管理→アプリを選択→アプリを起動」

という面倒くさい操作が必要です。

そこでそのような「野良アプリ」がワンタッチでメニュー表示される「FireStarter」をご紹介します。

※但し2016/4/初旬に落ちてきたファームバージョン5.0.5.1以降では、標準で「Homebuttonボタン 2回クリック」で野良アプrが表示されるようになりましたので、ここの導入は不要です。というよりこの「FireStarter」は簡単には動作しなくなりました。

ES File Explorer で上記リンクからダウンロードしたapkをクリックし、ダイアログに従ってインストールしてください。
インストールが終われば付属リモコンの「Homebuttonボタン 1回クリック」で専用メニューが表示されるようになり、

Bmenu

Homebuttonボタン ダブルクリック」 でFireTVの標準メニューが表示されるようになります。

うまく切り替わらないときは、3)-③でご説明している「ADBデバッグがON」 になっているか確認してください。(ここがOFFだとFireTVはそのような操作を弾いてしまいますので。)

4)Dolphin Browserのカスタマイズ

以上でメニューから簡単にブラウザを起動できるようになりましたので、いよいよDolphin Browserの導入に入ります。

ES File Explorer で上記リンクからダウンロードしたapkをクリックし、ダイアログに従ってインストールしてください。
次にインストール完了時に「開く」を押すか、3)で追加した専用メニューでクリックすれば、Dolphin Browserの初期画面が開きます。

Dolph1jpg

ここで右上にあるイルカのマークを押してください。図のような設定画面が開きます。

Dolph0

ここから以下のようにカスタマイズしていきます。

① JetpackをOFFにする。

通常のAndroid端末ではJetpackはONのままのほうがレンダリング速度が速く、動画の自動開始のためにもそうするのが普通なのですが、FireTVでは相性が悪いようで、動画の自動開始ができなくなります。
(ちなみにJetpackは上記サイトから導入したDolphin BrowserにはFireTVに有効なバージョンが付属しておらず、リンク先から別途最新apkをダウンロードして導入することで有効化されますが、動画自動スタートができなくなるのではDolphinを選ぶ意味があまりなくなってしまいます。)

OFFにすれば問題なく動画を自動再生できるようになり、また幸か不幸かJetpackの有無は今回の動画再生能力に関係しませんので、ここではOFFの設定にします。

但しこういったDolphin Browserの振る舞いは環境にデリケートな面がありますので、今後ハードウェアやOSのバージョンが上がると逆にJetpackを導入&ONにした方が良くなる可能性もあります。またボックスタイプのFireTVでもテストしていませんので、もし思うように自動開始が効かない場合は、ONの設定も試してみてください。

キーボードのカーソルキーでDolphin Jetpackの欄を選び、

Dolphjet1jpg

マウスで図のスイッチをクリックすれば、ダイアログが表示され、

Dolphjet2

「今すぐ再起動」をクリックすればJetpack がOFFになった状態でDolphin Browserが再起動されます。(OFFになっていなかったら再度やってみてくささい。)

② ホームページにTvRemoteViewer_VBのトップページを設定

上で「高度」タブを選択し、「ホームページ設定」欄にカーソルを合せた上でマウスでクリックしてください。

Dolph2

すると図のようなダイアログが表示されますので、TvRemoteViewer_VBのポート付きアドレスを指定してください。

Dolphhome1

なお文字入力一般の注意点ですが、文字入力欄では図のようなソフトキーボードが強制的に表示され、そこで文字入力することになります。

Softkey

その際せっかくのBTキーボードがあるわけで、そこから入力することになりますが、基本的な文字入力はできるものの、「ひらがな⇔英数字」の切替えはキーボードの半角/全角キー等は効かず、図の左下にあるボタンをリモコンで選ぶか、リモコンのMenubuttonボタンを押して切り替えなければなりません。(マウスでボタンを押すことはできません。)

入力が終わったら、図の右下の「次へ」ボタンをリモコンで選ぶか、リモコンのPlaybuttonボタンを押す必要があります。(キーボードのEnterキーを押しても、今選択されている文字が再度入力されるだけです。)
この辺あくまでリモコン入力が主体で、キーボードはそれを補助するもの、という設計になっていますので、ちょっと使い勝手が悪いです。(が、全てリモコンで入力するよりはなんぼかマシです。) これはちょっと使ってみればなんとか使えるようになると思いますが。

さて、以上のようにアドレスを入力したら「OK」を押してください。これでDolphin Browserの起動と同時にTvRemoteViewer_VBのトップページが表示されるようになります。

設定画面の左上の「<設定」をクリックして、ブラウザ画面に戻ってください。

③ 全画面設定

次に、ブラウザが全画面で表示されるようにします。ブラウザの左上にある、「コントロールパネルボタン(ジグソーのピースのようなアイコン)」をクリックしてください。

Dolph5

表示されるメニューの左上のほうに「フルスクリーン」のアイコンがありますので、これを一回クリックして緑色にしてください。

Dolph6

これでブラウザが再表示される度に全画面表示になります。(メニューにアクセスしたい時は、どこかをマウスでつかんで下にスライドさせることで上に隠れたメニューやアドレスバーが表示されます。)

以上の設定が終わったら、リモコンの キーを2回クリックして、ブラウザを一旦終了させてください。
再度ブラウザを起動すれば、TvRemoteViewer_VBのトップ画面が全画面で表示される筈です。

④ リモコン制御用設定

次にTvRemoteViewer_VBではリンクにあるように、専用のリモコン画面からどのブラウザでも操作できるようになっていますので、基本はこれを使ってスマホ・タブレットやPCから操作することになります。(FireTV付属のリモコンを使って操作しようとは思わないでください。もともとそういう画面設計にはなっていません。)

Browser3

トップ画面で「デバイス(CAST)」タブを選んで赤枠のところに識別用デバイス名を入れ、入力後一旦「Enter」を押した上で「ON」ボタンを押してください。これでトップ画面の右上に「R」の文字が表示されるようになり、

Browser4

リモコン制御下に入ったことになります。

また他に、「管理」タブで

Browser2

「Rockバー型番組表」もチェックし、ポータルにもチェックしておいてください。トップ画面に「お気に入り番組表」が表示されるようになります。

なお、TVRemoteFiles 1.52以降ではトップページのデザインが変更され、不要な部分を非表示にできるようになりました。
デフォルトでは以下のように「操作パネル」、「ストリーム一覧」、「お気に入り番組表」 の順に表示されますが、ここで赤丸のスイッチを押すと操作パネルが省略された状態になります。

Trvswtopshrink1

                   ↓

Trvswtopshrink2 (各タブを押せば表示状態に戻ります。)

Fire TVのようなデバイスは普段直接画面を操作することはないと思いますので、この設定がお勧めです。

さらにストリーム一覧も「非表示」を押せば、それも省略されて、上一行に各コントロールが並んでいる以外は「お気に入り番組表」だけが表示された状態になります。

Trvswtopshrink3

普段トップページを表示したままにする場合、ストリーム一覧の情報も見たければ表示したままの状態、番組表だけあれば良いのならストリームは非表示にしてより多くのチャンネルが表示されようにする、というように選ぶことができます。
この状態はcookieに記憶されますので、再起動しても維持されます。

以上でDolphn Browserが設定され、TvRemoteViewer_VBでの機能がフルに使えるようになります。それに加えて、以下の自動起動の設定をしておけば、FireTV起動と同時にTvRemoteViewer_VBが使えるようになりますので、さらに便利になると思います。

5)スリープの抑止

(1) Stay Alive Keep screen awake の導入

FireTVは操作待ちが一定時間続くとスリープ状態に入り、画面表示が消えます。(リモコンのPlaybuttonボタンを二度押しすることで解除できます。)

このスリープ移行は動画を再生している際は抑止されるはずなのですが、TvRemoteVIewer_VBでブラウザ機能を使って視聴している場合動画視聴中であることをちゃんと認識してくれないようで、20分ほどすると視聴中に突然スリープ状態に移行してしまいます。

これは不便ですし、そもそもモバイルではないメディア視聴機器であるFireTVで、そんな迅速なスリープ移行は運用上不要ではないかと思います。(もともとのAndroidのモバイル向け省電力仕様が引き継がれているだけでは?)
意図してスリープさせたいときは「設定→システム→スリープ」 で即時にスリープできるわけですし、そもそもこの機器自体の待機電力は大したことはないので、節電したければテレビ本体をOFFにするのが良いのではないかと思います。

ということでスリープタイマそのものを抑止するために、Stay Alive! Keep screen awake を導入します。
 Stayalive(普通のAndroid端末でも利用できます。但しうっかり起動しているとバッテリー浪費するので注意)

FireTVに導入するには、ES File Explorer で上記リンクからダウンロードしたapkをクリックし、ダイアログに従ってインストールしてください。

このプログラムは導入して起動しただけでスリープが抑止されるようになります。
但し通常はシステム開始時には自動起動はしません。そこでこのプログラムも、次の6)のソフトで自動起動させるようにします。

なお、敢えて自動スリープ機能を働かせたい場合は、「野良アプリ用メニュー」から

Noramenu2

Stay Alive! を起動して、表示されるルール画面で
Staylive2

「Pause Stay Alive!」を選択すれば良いです。(元に戻す時もここで戻せばよいです。)

(2)  スクリーンセーバーの解除

ブラウザが野良アプリのせいか、スクリーンセーバープログラムも動画再生に関係なく、タイマで勝手に起動してしまいます。したがってこれも以下の手順で解除してください。

「設定→ディスプレイとサウンド→スクリーンセーバー」で設定画面を開く。

Scsvr1

設定画面で「開始までの時間」を「なし」に変更する。(デフォルトでは5分)

Scsvr2

以上でOKです。 

6)FireTV起動時のプログラム自動開始

ES File Explorer で上記リンクからダウンロードしたapkをクリックし、ダイアログに従ってAutomateItをインストールしてください。
起動すると図のような画面になります。

Auto1

このツールはWindowsのタスクスケジューラに類似のもので、自動運用のために便利な機能が揃っていますが、ここではシステム開始時に4)で設定したDolphin Browser と、5)で導入したStay Alive! Keep screen awake を起動するルールを追加します。

なお、電源ONでTvRemoteViewer_VBまで立ち上げる必要はない(使う時はリモコンで起動する)という方は、ここでDolphin Browserの自動起動ルールを登録する必要はありませんが、Stay Alive~ の自動起動ルールは必ず登録しておいてください。そうしないと動画視聴中のスリープ移行を抑止できません。

① まず「ルールの追加」の上のほうにある+ ボタンをクリックします。

Auto2

図のようなトリガー選択画面になりますので、キーボードのカーソルキーで下に辿って行って、「端末起動時」をクリックします。

② 次にアクションの選択になりますので、「アプリの起動」を選びます。

Auto3

すると図のように起動アプリの定義画面になりますので、

Auto4

右端にある「アプリ一覧」のアイコンをクリックします。
するとアプリ一覧のダイアログがポップアップしますので、

Auto5

「ドルフィンブラウザ」を選択してください。

③設定の保存

これで図のように

Auto6

アプリケーション欄にドルフィンブラウザが指定された状態になります。

他にルール等は必要ありませんので、このまま右上の保存ボタン(フロッピーディスクのようなアイコン)をクリックしてください。

尚、このタイミングで図のようなアドが表示されることがありますが、

Auto7
気にせず左上の終了ボタンを押してください。

以上でプログラムのトップ画面に戻れば、ルールが1個増えている筈です。

Auto8

④ 同じ手順でStay Alive! Keep screen awakeの自動起動も登録します。

再度ルールの追加をクリックし
Autoalive1

トリガーに端末起動時を指定
Autoalive2

アクションにアプリの起動を選び、一覧からStay Alive! を指定してください。

Autoalive3
Autoalive4
Autoalive5

次に、これがDolphin Browserの指定と違うところですが、アプリの起動時に画面表示は不要なので、次の「ルール」の指定で、「非表示」を選択してください。

Autoalive6

以上で右上のアイコンをクリックして、設定を保存してください。

⑤ 起動テスト

実際に動くかどうかの再起動には、FireTVの電源を抜き差ししても良いのですがそれも乱暴なので、図のように「設定→システム→再起動」を選んでみてください。

Auto9

これで再起動が始まり、図のようなロゴが出たあと

Init1

一旦トップメニューが表示されますが、すぐに図のようなメッセージが表示され、

Init2

トリガを検出したアクションが開始した結果、数秒後にTvRemoteViewer_VBのトップ画面が表示されます。

Init3

TvRemoteViewer_VBから抜けるにはリモコンのHomebutton_2ボタンをクリックすることでいつでも可能です。Homebutton_2ボタン1回クリックすれば専用メニューに抜け、Homebutton_2ボタンダブルクリックで標準のトップメニューに抜けます。

以上で導入、カスタマイズは完了です。リモコンプログラムの使い方はリンクに解説してありますので、使ったことのない方はよく読んでみてください。
これで例えばテレビ番組の起動や、ファイル再生画面からこのデバイスを指定して「再生」ボタンを押せば、「しばらくお待ちください」が表示された後、FireTV側に視聴画面が起動します。

その際一瞬このような画面が表示されますが、
Tvstart1
気にしないでください。

タイル表示であればこのような画面で

Tvstart2

また全画面表示にすればこのような画面になり

Tvstart3

要は普通に手元の端末で見るのと同じ、またChromecastやAndroidとほぼ同じ使い勝手で大画面テレビやモニターでTV番組や録画が視聴できるようになります。

⑥ 他の調整と注意点

以上で動作のために必要な設定は完了ですが、他の調整項目と注意点も補足しておきます。

(1) 画面のキャリブレーション(マージン設定)

(モニターではない)普通のテレビの場合、画面の周りに表示されない領域があります。

この余白域については、TvRemoteViewer_VBだけの話であればリモコンプログラムの「マージン」で調整しても良いのですが、FireTV全体で調整したい時はメニューから調節します。
具体的には「設定→ディスプレイとサウンド→ディスプレイ→キャリブレーション」

Cari1Cari2

で表示される調整画面で

Cari3

リモコンの上下キーによって、画面端に矢の先端がくるように調整すれば良いです。
適正なマージンはテレビやモニター毎に変わりますので(PC用モニターであれば0)、FireTVを挿し替えた際には再度調整が必要になります。気になるのがTvRemoteViewer_VBだけであれば(特に実況コメントの上端が欠けるのが気になると思います)、リモコンプログラムの「マージン」設定で調整する方が簡単かもしれません。

(2) ブラウザのレスポンスがなくなった時

操作上の注意点として、動画再生中にうっかりリモコン操作でブラウザから抜けた場合、メニューから再度ブラウザを呼び出しても、動画がサスペンドしたままリモコン操作で再開できない状態になります。
またそれ以外でも、基本はブラウザから抜けて暫く後にメニューからブラウザに復帰する場合、ブラウザが再ロードされず、処理を継続できずにハングしたような状態になることがあります。

FireTVのリモコン操作では、「ブラウザ・ページの再ロード」の操作ができないため、一旦ブラウザがおかしな状態になってしまうと、それが維持されてしまうのが原因です。
そういう場合はまずは、TvRemoteViewer_VB用リモコン基本タブの「今のページを再ロード」ボタンを押してみてください。単なる待ち状態であれば、それで復帰できます。
それに反応しないようであれば、Menubuttonボタンを1回押した後Backbutton_2ボタンを何回か連打すればブラウザを確実に終了でき、その上で再度Dolphin Browserを起動すれば初期画面に戻ります。

(3) 実況コメントが表示されない時

現在の最新ファームでは、動画の画質は十分なレベルに向上していますが、その代わりなのか何なのか、実況コメントを表示する設定で実際表示のための処理もおこなわれているにも関わらず、オーバーレイの調整が上手くいかず表示されない事があります。

そういう場合は、下図赤丸部「コメント表示数上限」の数字のボタンを押して、コメントプレーヤーを何回か再起動させてみてください。

Ftshowcomment

1~2回ここを押せばコメントが表示されるようになると思います。
ただ、FireTV Stickをずっと動かしっぱなしにしていると全体的に動作が重くなるとともに、この現象も起きやすくなったり、上記ボタンを押しても回復しにくくなるようですので、この問題に限らず時々FireTVを再起動することをお勧めします。
再起動は電源の抜き差しでもできますが、トップメニューからリモコンで「設定→システム→再起動」と指定することでも可能です。

3.使ってみた感触

最初にあるようにFireTV Stickは、性能的に(現行の)Chromecastより上、NexusPlayerより下で、実況コメントが増えても十分実用的に、また安定して動きます。
据え置き型FireTVだと、恐らくはNexusPlayerより少し上の性能になると思います。その辺の差は実況表示速度の違いとして現れます。

※但し2016/4/初旬に落ちてきたファームバージョン5.0.5.1ではやや振る舞いが変わり、実況を流すと音ずれが出やすくなっています。コンマ数秒程度なのでアニメ作品ではあまり気になりませんが、実写などで気になる時は実況表示を止めてみてください。

動画の再生性能については、当初GoogleCast勢と比べるとフレームレートが劣り、動きのあるシーンやゆっくりパンしていくシーンではいくらか引っかかりがありましたが、2015/12末のFireOS 5.0.4 536116920 で大きく改善され、ほぼ同等と言えるものになっています。今後FireTVがHTML5やその実行環境を正式にサポートする判断をしてくれれば、使い勝手もより向上してくると思います。

現在のところ動画再生中のシーク(ストリーム再起動を伴わないシーク)は、Chromecast/NexusPlayerやApple勢のようにいつでも可能という訳にはいきません。ファイル再生ではエンコード完了を待つ必要があり、またライブ配信でのシーク操作もできません。→ご参考
まあこの辺はFireTVの問題というよりこちらが従来型のHLSプレーヤーで、GoogleCastのアーキテクチャ、特にライブラリのHTML5の扱いが優秀で特典がある、と言うべきですね。
実際余談ですが、Nexus PlayerにapkでDolphinやChromeを入れてみると似たり寄ったりのものになるので、素のAndroidマシンとしては同じような作りで、GoogleCastの枠内でよりHTML5ビデオプレーヤー向けのチューニングがされていることが判ります。

その代わりにFireTVはこの使い方ではDolphin Browserという(結構”高級”な)ブラウザエンジンを介在させているため、ChromecastやNexus Playerのように長時間で(動作が遅くなって)アプリのリセットが必要になる、という現象が起きにくく、長時間でも安定して使えます。メモリサイズが大きいのも安定動作に寄与していると思います。

ただ現状、以下の問題は残っていますので、それをご了解の上でご利用ください。

1)ファイル再生で「無変換ストリーム(0x0noenc)」を選択した場合、エンコード時の指定によってはアスペクト比がおかしくなることがある。

これはブラウザが利用する動画エンジンのバグで、ChromeやHabitでも同じ現象が起きます。
通常のトランスコードをおこないながらのストリーミングでは問題ないのですが、事前にHandbrake等でエンコードしたものを無変換でストリーミングする場合に起きる現象で、再生画像が図のように縦に伸びたようになることがあります。

Aspect1

通常の動画再生では、エンコード後の解像度が1440x1080であっても1920x1080であっても、動画ファイルのプロパティに表示時のアスペクト比 16x9 のように設定されていますので、再生サイズは適切に補正され、正しく16x9 で表示されます。
しかしブラウザ表示で利用する動画エンジンはこのアスペクト比を正しく解釈できないらしく、1440x1080の映像であればそのままの比率(4x3)で表示します。
地上波の解像度は1440x1080で表示時のアスペクト比16x9が設定されていますが、以前に私のBlogでご紹介しているHandBrakeのエンコードバッチでは、HD解像度であればその設定のまま、SD解像度では縦横の解像度を半分(720x540)にした上でアスペクト比維持(16x9)のプロファイルにしていますので、この映像をアスペクト比補正をせずそのまま映せば4x3の映像になってしまうわけです。
TvRemoteViewer_VBがトランスコードする場合は映像解像度自体も1920x1080や720x404に変換するため、表示も16x9になりますし、無変換ストリーミングでもソースがBSやCSのFullHD映像の場合は、映像解像度とアスペクト比は合っていますので問題ありませんが、もし地上波ソースやSD(720x480)放送の無変換ストリーミングを多用する場合は、事前エンコードのオプションも見直してください。
 エンコードオプション HandBrakeでの修正例
 Adjhbgui
 (但しHandBrakeは映像の拡大ができないため、元が1440x1080であれば 1440x810 以下の出力解像度を指定してください。)

2)FireTVでは、TvRemoteViewer_VBサーバが2台以上あるときの切替えがワンタッチで出来ない。

これはブラウザのホーム画面でサーバを固定しているのが理由で、切替えるにはマウスとキーボードを使ったDolphin Browserの設定変更が必要です。
まあこの辺も、そもそもスマホ/タブと連携させることをより重視して、アプリケーションそのものをスマホ/タブからの指示で外部からロードするGooglecastと、あくまでスタンドアローンのメディアプレーヤーが基本で、スマホ/タブは付属リモコンと同等なコントローラーと見なすFireTVの発想の違いなので、同列の比較は出来ないと思います。

上にも書きましたが、FireTV の利点というより使っているDolphin Browserのガベージコレクタが優秀なのではないかと思いますが、長時間利用したり待機させた場合でも、ChromecastやAndroidTVのように処理速度が低下する現象が今のところ起きていません。
(後者は両方とも共通の処理系に問題があるのかゴミが溜まっていくようで、長時間使っていると止まったようになる事があり、その場合一旦Castアプリを終了させて再接続 = ブラウザエンジンを再起動 する必要があります。)

4.おまけ Firefox OSについて

名前が似ているようで全く非なるもの、ということでここに載せるわけではありませんが。

AppleTVは置いておいて、その他に類似のデバイス用OSとしてはFirefox OSがあります。スマホ用OSの1つとしてKDDIが実験的に扱っているほか、パナソニックの新しいテレビに内蔵されており、今後一定の地位を築く可能性があります。
但し2015年末にスマホ向けの開発は終了する旨の発表があり、今後は組み込み型に活路を見出す方針とのこと。当面Firefox OSが続いていくかはパナソニック次第という所でしょうか。
とはいえ基本的なアーキテクチャを見ると、Geckoベースのブラウザをプラットホームのように扱ってHTML5/Javascriptでアプリを書く、というChromecast(ChromeOS)と非常によく似たプラットホームになっており、ちょっと興味が沸きましたので、TvRemoteViewer_VBの視聴に使えるか調べてみました。

結論として、FirefoxOS対応は当面見送ることにしました。以下では概要を書きます。

FirefoxOS用にはデスクトップ用のエミュレータ(アプリマネージャ)やAndroidで動くエミュレータもあるのですが、アプリ本体は当たり前のように動くものの動画再生はサポートしておらず検証できなそうなので、実験的に以下のような(FirefoxOSの場合のみ表示される)導入ボタンを作って

Ffoxos1 Ffoxos2

掲示板で検証を呼びかけたところ、Firefox OS Flameで検証いただいた情報があり、その結果は"ネガティブ"(HLSをサポートしていない。HLSのテキストが表示されるのみ)でした。
現状のMozilla側の見解を見てもHLSのネイティブサポートはあまり前向きでもなさそうなので、(実装する製品側で独自にサポートするケースもありえるものの)基本は「FirefoxOS自体ではHLSをサポートしていない」ということになると思います。

またMozilla側は代替策としてJavascriptで動くHLSプレーヤー(エミュレータ)も提案しており、これはFlash要らずでJavascriptとHTML5(のcanvas)のみを使って動くため、実際試してみると、本来動画をサポートしていない筈のデスクトップ用エミュレータ(アプリマネージャ)ですら図のようにテスト的に動かすことができました。

Ffoxos3

ただし動作はFlashフォールバック以上に重く、PC上のデスクトップエミュレータの場合はCPU性能のおかげでかなりまともに動くものの、Andorid上のエミュレータだと解像度を320x180ぐらいに落とさないとまともに動きません。恐らくARMベースと思われるテレビの組み込みロジックでは、(「テレビ」用途で期待される画質での)実用的性能は期待できないと思われ、Firefox OSの主なターゲットとなる機器を考えると余り意味の無いソリューションだと思います。
またこれらのJavascriptプレーヤーに対応するためのアプリ作り変えも手間なので、今後大きなニーズが出てこない限り対応は見送ることにいたしました。
ただFirefoxOS自体はLinuxベースのシステムの上に乗っているガワのような物で、その下のハードやファームウェアは様々だと思いますので、そのレベルでサポートしていれば現状のままで動く可能性はあります。パナソニックがボードメンバとして参加しているSmart TV AllianceではスマートTVに必要な基本機能としてHLSも定義しているので、「Firefox OS TV」としてその拡張もされる可能性はあると思います
(ただHLSに限らずMozillaはメディア再生に最適化する取り組みはあまり積極的ではない、あるいはちぐはぐな印象がありますので、採用したパナソニックも苦慮しているんじゃないでしょうか?このままいくとWebOSに乗り換えるかも?)

まあFirefoxOSを内蔵しているテレビは元々高価な機種になりますので、もし内蔵のFirefoxOSで動かなくても、外付けでFireTVやNexusPlayer/Chromecastを追加するのも費用的に大きな差はないと思います。当面はそういった機器を併用する形でも良いのではないでしょうか。

他にやはりHTML5/JavascriptベースになるWebOS、Tizenなども、これから伸びて来る気配があればテストしてみようと思います。

« TvRemoteViewer_VB バージョンアップ支援ツールを公開しました | トップページ | QSV/NVEnc + TVRemoteViewer_VBで軽量PCでもロケフリ フルHDでも気軽にストリーミング »

デジタルTV、TS抜きチューナー」カテゴリの記事

コメント

すみません、自己解決いたしました。

FireTVStick+ドルフィンブラウザでTvRemoteViewer_VBを開けたのですが、別のパソコンでTvRemoteViewer_VBを開きリモコン操作しようとしたのですが、候補にFireTVStickが出てきません。
何が原因でしょうか?

ファイル再生ができるということはデバイス側やネットワークは全て正常です。そちらの問題ではないと思います。
HLS_option.関連を弄っているようであれば、全て元に戻してください。
TV視聴の場合唯一ファイル再生と違うのはサーバ側でRecTaskを使ってリアルタイムトランスコードをおこなうことで
そちらのデータがFireTVでうまく再生できない状態になっていると思います。
他の端末でうまく動く場合でも希に特定端末で再生できないデータ欠陥がある場合もありますので
チューナーの環境(ドロップが起きていないか?など)をよくご確認ください。それ以上はちょっと判りません。

Vladiさん、返信ありがとうございます。
DolphineBrowserの設定項目をご教示頂いた内容に変更し(テキストエンコードだけでしたが)、確認しましたが、症状は改善されず視聴できませんでした。解像度変更、Wi-Fiも試みましたが同じです。認証はかけていません。(この画面でフリーズしているようにも見えますが真偽は?です)
また、先ほど色々と弄っていて気付いたのですがファイル再生は可能だったので、HLS_option.txtとHLS_option_ffmpeg_file.txtを確認し、-hls_list_sizeに違いがあったので合わせましたが結果は変化無しでした。
もう少し色々悩んでみます。ありがとうございました。
お気づきの点がありましたらご教示頂ければ幸いです。

akikuchiさん、ご報告有難うございます。意外と難問ですね。
なにしろFireStick側は利用者ごとの環境の違いは殆ど無い筈で、試しに私もDolphin Browserを11.5.3に上げ、またたまたま今朝落ちてきたFireOSのバージョンアップも当ててみましたが、正常に動画再生できます。
ちなみに余談ですが、FireOSの最新版(5.0.4 536116920)でフレームレートがだいぶ改善され、これまで感じられていた速い動きでの引っかかりが殆ど感じられなくなりましたね。

その状態で止まっているということは、動画が自動スタートできていない、という事です。(通常は一瞬その画面になりますが、すぐに動画がスタートします。)
また、何らかの設定の問題で自動スタートが抑止されている場合、左上にマニュアルスタート用の青い>ボタンが表示される筈ですが、それも表示されていないようですね。
システムとしては動画はスタートしたと判断し、再生しようとしているのに、動画が組み立てられない状態のように見えます。
サーバ側で解像度をいろいろ変えたり、WiFiを見直してみたりしても問題変わりませんでしょうか?またbasic認証をかけていたらかけない状態でやってみてください。
念のため私のところのDolphinの設定項目をメモしておきます。あまり関係なさそうなのが多いのですが。
一般タブ
Jetpack:off、言語:自動 規定のブラウザ:off 検索エンジン:dolphin テキストサイズ:100% URLバーを常に表示:off Flashプレーヤー:常にオン
高度タブ
サーバ証明書の取消し確認:off セキュリティ警告:on ユーザーエージェント:Android 天気情報:on サイドバーのスワイプ:off 通知を有効:on 起動時に開いてたタブを:off 画像の読み込み:常にオン javascriptを有効:on ポップアップブロック:off テキストエンコード:日本語ISO-2022-JP
拡大>ページ全体表示で開く:on

FireTVStick+DolphineBrowser(11.5.3でJetpackはOFF)でTvRemoteViewer_VBの視聴にチャレンジしておりますが、チャンネル選択後、
http://vladi.cocolog-nifty.com/photos/uncategorized/2015/11/24/tvstart1.jpg
の画像で止まってしまい、視聴画面に遷移しません。
Windows8.1+GoogleChrome(47.0.2526.106m)およびiPhone(iOS9.2)+SafariまたiPhone(iOS9.2)+DolphineBrowserでは正常に視聴ができているので、FireTVStickでのDolphine Browserの設定が疑わしいのですが、チェックすべき設定がありましたらご教示頂きたく、お願いいたします。

コメントを書く

コメントは記事投稿者が公開するまで表示されません。

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

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/570024/62739085

この記事へのトラックバック一覧です: Amazon Fire TV StickをTvRemoteViewer_VBで活用する:

« TvRemoteViewer_VB バージョンアップ支援ツールを公開しました | トップページ | QSV/NVEnc + TVRemoteViewer_VBで軽量PCでもロケフリ フルHDでも気軽にストリーミング »

フォト
無料ブログはココログ
2017年4月
            1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30            

ウェブページ