.最初のエンコード進行中のシークボタンでは、押した分の時間を加(減)算したものが青いボタンに表示され、これを押すことでシークが実行されます。シーク動作にストリーム再起動が伴うため、例えば10分移動するのに5分ボタン2回押して2回シーク動作させていると非効率です。よってこの状態でのシークは、必要な分をまとめてから実行させるわけです。+の時間でシークすると一旦以下のようなメッセージが表示される事があります。これはファイルの全時間がまだ判らない時に時間を加算する方向のシークをする際のメッセージで、全長を越える時間指定だとストリーム起動が失敗する、という問題を避けるための確認です。判っていてもうっかりやってしまうことがありますので、毎回の確認が有用と判断しました。(観てる方はこれが30分番組なのか1時間番組なのか程度はだいたい判ると思いますので。)なお、このようにエンコード進行中のシーク動作は原則ストリーム再起動を伴いますが、最新版のTvRemoteViewer_VBでは一部の環境(iOSやWindows10のEdgeなど)で、この条件でも一定範囲内で軽快なシーク動作が可能になりました。あとでこちらの記事も読んでみてください。エンコード終了すれば、シークボタンを押すと右側に以下のように数字が表示されるだけになり最後にボタンを押してから2秒でシークが発動します。これはプレーヤーの機能のみでシークしますので、待ち時間は殆どありません。(リモート環境でビットレート/回線速度に余裕がない状態だと数秒かかるケースはあります。)2秒以内の間隔で複数回ボタンを押せば押した分の時間がどんどん加(減)算されていきますし、押す度に発動まで2秒の猶予が与えられますので、その間に必要なボタンを順に押していけば良いわけです。いう感じの間を置いてタップすると良いです。)この辺は本来はTvtPlayのようにボタンを押す度に即シーク実行する形でも良かったのですが、プレーヤー機能のシークをいろいろテストした結果、HLSプレーヤーの場合次のシークコマンドを受け付けるまで暫く時間がかかることが判りました(無理にシークを連発するとハングがありえます)ので、連続シークするよりも予めまとめたほうが良いと判断した次第です。実際特にモバイル系の場合、シーク実行後しばらくシークボタンの文字がかすれてボタン操作を受け付けなくなるタイミングがありますが、これはまだ次のシークを受け付けない状態を示します。数秒待てば元に戻りますので、追加でシークしたい場合は一寸だけ待っていただければ。1.49以降)では、このシークおよびチャプタ移動の際にサムネイルを表示できるようになりました。シーク先を予めサムネイルで確認できますので、よりクイックに希望する場面に移動することができるようになります。この機能は図の、「サムネイルON/OFF」ボタンで有効/無効化できます。無効の状態では従来通りの動きになりますが、有効化した場合、指定したシーク先の映像(静止画)が図の位置に4秒間だけ表示されます。その際再生ファイルがエンコード完了していても従来とは違い、シークが自動的に(2秒後)発動する事はなく、シーク秒数が緑のボタンで表示されます。サムネイルを確認してOKであればこのボタンを押すことにより、シークが発動します。ファイル再生ストリームの所有権と監視機能について現在のファイル再生ではこのように再生位置合わせのためのストリーム再起動を多用しますが、複数画面で同じストリームを思い思いに再起動できてしまうと収拾がつかなくなりますので、ストリーム再起動をともなう操作ができるのは1つのストリームにつき1つの画面だけ、というルールにしました。(基本TvRemoteViewer_VBは個人用途なので、複数端末で同じストリームを同時に観るというケースは少ないと思いますが。)他の理由として、ストリームのエンコード途中に再生位置を正しく把握できるのは現在のストリームを起動した画面だけ、という理由もあります。(エンコード中に途中から視聴を始めた画面は再生開始位置が不定なので、「ストリーム起動位置+Play時間」で正しく再生位置を計算できません。)したがって正しく再生位置を記録していく上でも、今のストリームを開始した画面に所有権と再生位置記録の義務を与えています。所有権は図のように引き継がれていきます。再生位置は所有権付与と同時に最後に記録された位置に調整されます。(その時点でエンコード未了ならストリーム再起動で位置合わせしますし、エンコード終了していればアクセス直後にプレーヤーのシークが発動します。)このような仕組みで、視聴を中断したり他の端末に変えたり、途中で解像度や音声チャンネルを切り替えたりしても、再生は正しく継承されるわけです。この引継ぎがスムーズにおこなわれるように、視聴を中断する際に内部的に「所有権の返上」という処理がおこなわれます。これによって次にそのストリームを開く画面は速やかに所有権を獲得し、まだエンコード中の状態であればストリームの再起動をおこなって位置合わせするようになっていますが、視聴中断のやり方によってはこの「所有権の返上」がきちんと行われない事があります。所有権が返上される所有権は返上されないファイル再生画面からトップメニューに戻る。ファイル再生画面から番組表やテレビ視聴画面等に移る。ファイル再生画面を開いたまま放置。(この場合は閉じない限り所有したままになる。)ファイル再生画面を開いたままブラウザを落とす。ファイル再生画面から他のサイトに直接移動。(移動後、1分以内にトップメニュー等に戻れば返上される。)こういう動作ルールがありますので、視聴を中断する時は、視聴画面を開いたままブラウザを終了させるのではなく、トップメニューなど他の画面に移ってから終了させるのがお勧めです。所有権が返上されていなくても所有者の生死はどの画面でもモニターしていますので、ファイル視聴画面を開きっぱなしでない限り、「所有者がいなくなる=所有権をもった画面が別の画面に遷移したり落ちてしまえば」、ハートビートが更新されなくなったのを検知して、2分ほどで所有権を剥奪します。再生位置は正しく中断処理しなければ中断時のものが記録されていませんが、中断処理されていなくても再生位置は必ず20秒置きに記録されていますので、直前のものまで遡るだけです。端末側の画面にはこういう監視モニターとしての機能もありますので、サーバ側でも監視のために常にブラウザからトップメニューや番組表を開いておくのがお勧めです。(監視機能は今後プレイリストの管理のためにも重要です。)(こんな感じでサーバでもトップメニューか番組表を監視機能として常に起動しておくのがお勧め。)もちろんサーバ側の画面が立ち上がっていなくても端末側で画面を開いた瞬間に監視機能も働き始めますが、所有の返上がないままのストリームを次の画面がいきなり開いた時はスムーズに所有権が引き継がれず、2分ほど所有権がない状態になり、再生位置の調整ができません。ここはちょっとした注意点になります。いうファイルに定義してあり、数やシーク秒数をカスタマイズ可能です。注)内部的に利用しているjson読み込み関数があまり高機能ではないため、コメントや文法の誤りがあると読み込めません。カンマの打ち場所等も間違わないようにしてください。全角文字はUTF-8でないと正しく読めないので、全角を使う時はサクラエディタ等の利用がお勧めです。追加した「プレイリスト機能」をご説明します。プレイリスト機能はファイル再生の拡張ですので、基本的な操作は前節のファイル再生機能もご参照ください。プレイリストになると便利になる点としては、シリーズ物や観たい録画を順に登録しておけば自動再生していくので「ながら見」に最適、という点は勿論ですが、機能的にも次のようなものが使えるようになります。ファイル再生と同じくプレイリスト再生状態もサーバに記録されるので、外出先と家で端末を変えながら続きを見ていくことができ、途中で解像度を変えればそれも引き継がれていく。プレイリストの再生位置はストリームを終了しても保持されるので、一度作成すればいつでも観た所の続きから観ることができる。これは単体ファイルでも結構有効なので「ファイル1個だけを登録したプレイリスト」という使い方もあります。再生時に横にプレイリスト一覧を見ながら再生ファイルを切り替えたり、少し覗いてすぐに元の再生位置に戻す、という事もできる。「サブストリーム」を使って、再生しながら裏で次のファイルもスタートさせてエンコード終了させる機能を実装した。これによってリストのファイルをスムーズに切り替えながら、切り替え直後から再ロード不要の素早いシークができるようになります。各ファイルに開始オフセットだけでなく、終了オフセットを設定できる。BS/CSの番組では本編終了後にまとめて長い番宣や通販番組が入りますが、その時間を予め終了オフセットで省いておくことで、後ろの長いCMを飛ばしながら連続再生できます。おおまかには以上のような特長があります。言っても使っていくうちに判ると思いますので、まずはクイックに利用する流れをご説明します。クイックスタート「ファイル再生」画面で「プレイリスト」タブを押すと、図のように赤い背景のプレイリスト画面が表示されます。プレイリスト作成ここで「新しいプレイリスト」の先頭にある「+」ボタンを押せばプレイリスト作成/編集モードになり、また下のファイルリストにはそれぞれの先頭に「+ボタン」が表示されます。これを押していくことでプレイリストにファイルが登録されていきます。登録直後は図のように選択状態になっていますので、ここで「1つ上へ」「1つ下へ」ボタンを使って再生順を好きな所に移動できます。ファイルをクリック/タップすれば選択⇔非選択と変わり、複数選択も可能、また「選択解除」ボタンで全て非選択にすることが出来ます。(うっかり目的外のファイルを移動しないよう、何かの操作の前に都度「選択解除」するのは割と重要です。)プレイリスト先頭のΘは削除のボタンです。まま放っておいても何も起きませんが、うっかりもう1回タップすると削除されますので、この状態を取り消すにはボタン以外の文字部分をクリック/タップしてください。リストが作成できたらタイトルの欄にプレイリストの名前を入れてください。(ここが空欄の場合でも先頭のファイル名を元に名前が付きます。)以上で「保存」ボタンを押してください。これでプレイリストが1つ登録されました。Playlist」ボタンで、表示されているファイルを一気にリストに追加することができます。この際プレイリストには上から順に追加されていきますので、ボタンを押す前に「更新日昇順」ボタン等でソートしておけば、後でリストを編集する手間が省けます。1個のプレイリストに入れられるファイル数(99個)を越えた場合は、入らなかったファイルの「+」ボタンは消えませんので、どこまで入ったかが判ります。プレイリストの再生さて実際にこれを再生してみます。このリストの名前部分をクリック/タップすれば選択状態になりますので、選択したうえで「選択したプレイリストを再生」ボタンを押してください。すると図のような再生指定のウインドウがポップアップします。ここで再生ストリーム、解像度、どこから再生するか、再生順、を選択してください。ここで選択した再生ファイルや解像度・再生順の設定は視聴画面でいつでも変更でき、(例えば解像度の変更は通常のファイル再生と同じく、「再読込操作」ボタンで可能です。)変更した解像度等の設定は以後も引き継がれていきますので、ここでの指定は「とりあえず」のもので構いません。以上で「再生」ボタンを押せば、プレイリスト再生画面が起動します。普通のファイル再生と変わらないように見えますが、良く見ると自分のストリーム表記の先頭に、ファイル再生の「F」ではなく「PLxx」とプレイリスト番号が付いており、また「プレイリスト」というボタンが加わっています。この「プレイリスト」ボタンを押すと、右側にプレイリスト情報サイドパネルが出現します。プレイリスト情報のサイドパネルを開いておけば現在の再生位置が判りますし、またここから別のファイルにジャンプすることも出来ます。ここから簡単に他のファイルに飛べるのは便利なのですが、反応の遅いタブレットやスマホで操作する場合、リストをスクロールするつもりがうっかり2回タップして再生が切り替わってしまう、という誤操作が発生するかもしれません。(タップのインターフェースはこのような誤操作を起こしやすいところが弱点だと思いますが閑話休題)このような誤操作を抑止するために、トップ画面の「管理」タブで「切替え確認メッセ―ジの表示」を設定できます。→設定方法はこちらこれをチェックしておくと、サイドパネルから再生ファイルを切り替えようとした際に図のような確認メッセージが表示されるようになります。ここで意図せず再生が切り替わりそうになった時はキャンセルすれば良いわけです。私が自分で使ってみた限りでは、PC(つまりマウス主体の操作)や動作の軽快なタブレットではここはチェックしない、反応の遅めなタブレットやスマホではチェックした方が使いやすいと思います。以上が大まかな操作になります。ちなみにプレイリストの再生も通常のファイル再生と同じく「所有権」が必要になります。所有権の無い状態でプレイリストを観ようとすると、図のようにエンコード中のシークボタンが無効化されており、また図のように「プレイリスト」ボタンが無く、実況情報表示ボタンだけになっています。逆にプレイリスト再生している筈なのにプレイリスト関連の機能が一切使えない、という時は所有権がないことになります。他の画面が再生している場合はそちらを終了させてから視聴画面を開くかリロードすれば、所有権が取得され、通常の操作が出来るようになります。直前の視聴が綺麗に終わらなかった場合も所有権がすぐに取得できない事があります(特に監視画面がどこにも動いていない場合)そのような場合は2分程度待ってから再度視聴画面を起動するかリロードすれば所有権が獲得され、正常にプレイリストを操作できるようになります。プレイリストの編集さて、もう少しプレイリストを作り込んでみましょう。プレイリスト一覧で各プレイリストの先頭にある「Edit」ボタンを押せば編集モードになり、中身を弄ることができますが、この際一覧で、「再生中」や「待機中」となっているものは現在ストリームに存在しているプレイリストで、これらは(動作がおかしくなるのを防ぐため)編集できないようになっています。(ちなみに「再生中」はどこかの画面が所有して再生している最中、「待機中」はストリームに存在しているが誰も再生していないものになります。内容の同じプレイリストのコピーができますので、これを改めて編集して利用する手もあります。コピーしたプレイリストは最新の再生位置情報も含めてコピーされます。編集画面ではファイルの追加、削除、ファイル名でのソート、並び替えができます。ファイルを追加する場合、既に該当プレイリストに登録済みのファイルは重複登録できません。この辺はiTunesの仕様と同じなのですが、要はプレイリスト上のファイルはリスト上の番号ではなく、あくまで「ファイル名(フルパス)」で判別しますので、1つのプレイリスト上でファイル名はユニークでなければならない、という仕様のためです。作成したプレイリストを改めて編集する場合、下のファイル一覧には登録済のファイル情報は(パフォーマンスの観点で)反映しておらず、全てのファイルに「+」ボタンが付いています。ここで既に登録済のファイルを改めて登録しようとしても図のように「+」ボタンは消えずに「X」マークに変わり、既に登録済なのが判るようになっています。ファイル編集中に別の画面に移動したりリロードボタンを押すと編集中の状態は破棄されますので、一旦保存するよう注意してください。「絞込み解除して再ロード」でファイルを探せると便利なので、この操作は編集中にも使えるようになっています。(編集中に絞込み再ロードしても、編集中の状態はそのまま維持されます。)古めのファイルをプレイリストに加えたい時にご活用ください。編集リストを右にスクロールしていくと、図のような入力/選択欄が現れます。ここの開始オフセット、終了オフセットを指定しておけば、再生開始は先頭からのオフセットでシークしてから開始しますし、終了/次のファイルへの切替えはファイル末尾ではなく、末尾から終了オフセット分だけ遡ったタイミングになりますので、前後の長いCMを飛ばしながら連続再生するのに便利です。(秒数で入れても図のようにmm:ss、hh:mm:ss形式に直されます。)なおここの入力(およびタイトルの入力)の際のちょっとした注意点ですが、入力してカーソルを入力欄に置いたまま「保存」ボタンを押しても内容が反映されなかったり、「変更項目なし」と見なされて保存ボタン自体が押せないままの場合があります。これはWebフォームのちょっとした弱点で、入力欄にカーソルが留まったままではシステムでは入力未確定と見なされて値が読めないからで、しっかりシステムに入力内容を教えるためにはEnterキーを押すか、一旦他の入力欄やファイル名などをちょっとクリック/タップしてから「保存」ボタンを押すようにしてください。次節でご説明している二ヶ国語放送のプリセットです。主・副がデフォルトですが、それ以外を設定しておけば二ヶ国語放送を再生する際に言語を選択できます。以上のような形でお好みのプレイリストをカスタマイズしていってください。作成できるプレイリストは01番から99番までの99個で、番号は自動採番されます。1つのプレイリストに登録できるファイル数の上限も99個です。これらの数が十分か少ないかの議論はあると思いますが、自分が日常的に使うiPhone等のプレイリストは到底そこまでの数にならないのと、リモート環境でも出来るだけ動作の軽快さを保つためにもこの辺の上限を置いています。99個なら4クールの放送でも楽に登録できますし。(さすがに朝ドラ全部は無理ですが)またプレイリストはこの節の最初に書いたように1個のファイルだけで構成しても良いのですが、プレイリスト再生時に「1個のファイルだけをリピート」するシングルモードもありますので、むやみにプレイリスト数を増やさなくても、とりあえず観たいファイルをまとめて1つのプレイリストに登録しておいて、「再生時にシングルモードで再生する」という使い方も実用的だと思います。「全ファイルを順番に再生しリピート」「1個のファイルだけをリピート」「ランダムに再生」のモードは再生中にプレイリスト操作パネルの上にあるボタンで切り替えできます。これも一旦変更すれば、以後も引き継がれていきます。サブストリームと「20秒」ルールプレイリストの再生では「サブストリーム」を使って、次に再生する予定のファイルも予めスタートさせ、実際に視聴する時にはエンコードも完了させておくことにより操作性を上げ、次のファイルに素早く切り替わる機能を持っています。図で説明すると以下の通りです。下がサブストリームを使った再生になります。サブストリームは「予定される次のプレイリスト項目と仕様」をシステムが判断しながら維持したり再生成しますので、例えば途中で解像度を変えたり、再生モードを「順番」から「ランダム」に変えた場合には適切なものがダイナミックに再生成されます。この辺を利用者は殆ど意識する必要はありませんが、次のファイルへの切替えが近づいた頃にモード変更をおこなうと、次のファイルのエンコード完了が間に合わない場合もあります。(その時は切り替えのタイミングで次のストリームが再起動されます。)その辺はベストエフォート型の機能という事で。新規にストリームを立ち上げる際にも「使用中」のストリーム番号となりますので、存在は判ります。トップ・管理画面では図のように現在動いているサブストリームの情報も表示されます。サブストリームは勝手に停止させてもプレイリストを再生している時にまた起動されますし、空いているストリームが無い時や必要な時にサブストリームが消えていても、それに合わせた動きをします。プレイリスト本体が停止されれば、サブストリームも自動で停止します。このように通常は特にサブストリームの存在を意識する必要はありませんが、ストリームをできるだけ節約したいとか、サーバの能力に余裕がなくで勝手に裏でエンコードが動くのは不安、という場合、「サブストリームを使用しない」設定もできます。デフォルトではチェック(=使用する)になっていますので、気になる方はここをチェックアウトしてください。ここのチェックを外しても、サブストリームを使わなくなるわけではありません。積極的に使わないだけで、再生ファイル切り替え時には切り替え前のストリームが20秒程度「サブストリーム」として残ります。この設定に関係なく、プレイリストの再生では使用するストリームは一定しておらず、再生ファイルが切替わるたびに空いているストリームを適切に選んで動いていきますので、再生中のプレイリストを選ぶ際はストリーム番号ではなく、PLxxのプレイリスト番号を見てください。ちなみにこの「直前のストリームが20秒間だけ残っている」という特性は、サイドパネルからザッピングの感覚で視聴ファイルを切り替える場合にちょっとだけ便利です。図にすると以下のようになります。プレイリストで再生ファイルが切り替わると、元のストリームはすぐに消えるのではなくサブストリームとなり、新しい「主(プライマリ)」ストリームが該当プレイリストの再生状況を管理することになります。新しいプライマリストリームは起動後20秒で最初のチェックをおこない、自分のサブストリームをあるだけ検出した上で、自分が予定しているもの(次の再生ファイル)の仕様に合ったものだけを残して、残りは停止させます。この時点で元のストリームも通常は(プレイリスト要素が2個しかない場合を除いて)消えることになるのですが、そうなる前に元のストリームの再生に戻せば、前のストリームの状態を継続して視聴できることになります。要は監視タスクにかかる前に(同じファイル内のシークも含めて)再生を切替えていけば元のストリームは保持されたまま保たれるわけで、少し他のファイルを覗いてみたい、というザッピングの時には便利かもしれません。トリッキーですが20秒ルールと言いましょうか。(本来はうっかり操作ミスの救済策として付けた機能です。フォルダが作成され、そこに保存されています。フォルダ内容は図のようになっています。これらのファイルもバージョン移行の際には忘れずコピー(または保持)するようにしてください。拡張子.jsonのファイルは管理ファイルですので弄れない(誤動作の原因になる)のですが、拡張子.m3uのファイルはTvtPlay(放送TSファイルで構成されている場合)やMPC-HC、VLCでも使えるプレイリストファイルになっていて、内容は以下のようになっています。当プレイリストで独自拡張している音声選択や開始・終了オフセットのような情報は単なるコメント扱いとなり意味を持たなくなりますが、その点を除けばコピーして簡単に使うことができます。TvtPlay等のプレイリスト作成機として使えることになりますね。ちなみに実は逆も真なりで、他で作ったm3uファイルやここで作ったm3uファイルのバックアップを、PLxx(xxは01~99)の名前でここに置けば、普通に読み込まれます。その番号のプレイリストファイルが存在することをシステムに教えなければなりませんので、ダミーのプレイリストを一旦適当な中身で登録してから同じ番号の名前で上書きする必要がありますが、沢山作りたい時のバックアップ/リストア方法としても使えますので、ご興味のある方は試してみてください。m3uファイルの一般的な話として、記載されているファイルパスが絶対パスなので、該当のサーバー機以外では一般的には使えないという問題がありますが、最初からTvRemoteViewer_VB.iniでリモートフォルダだけでなくローカルフォルダのパスもネットワークパスで記載しておけば、同じLAN上のどこからでも使えるプレイリストが作成できます。.8)ファイル/プレイリストのストリーミングも実況付きにするTvRemoteViewer_VBでは、録画したファイルを実況付きで再生することもできます。別のソフトの機能や運用との連携が必要ですので、最初のTVRemoteViewer_VB導入の際には飛ばしてかまいません。十分に使い慣れてから導入するのがお勧めです。利用のためには録画内容に応じた実況ログファイルが必要になりますが、その手順を自動化するためにTvRemoteViewer_VBは2つの仕組みを用意しています。・既にNicojCatchの仕組みがあれば利用は簡単。・実況再生に必要なASSファイルはファイル再生の都度作成するので、事前に準備したりメンテナンスする必要がない。・録画時に実況ログを保存していないものはこの方法は使えない。(JikkyoRecで保存した実況ログにも非対応)・「祭り」状態が続くような巨大な実況ログになると再生開始時のASS作成処理に暫く待たされる。(一度スタートしてしまえばシーク等の再始動の時間は通常通り。・NicojCatchの仕組みで実況を保存していなくても、生の放送TSファイルが保存してあれば実況再生可能。(この場合ニコニコ実況のみ)・再生の都度ASSを作成する訳ではないので、ファイル再生時のレスポンスが良い。・ASSさえ用意してあればMP4やMKVファイルでも実況付きで再生できる。・準備に手間がかかる。(一旦準備してしまえば後は楽。)・ファイルと同じ名前で同じ場所にASSファイルがなければならないので、ファイルの移動やリネーム時に注意要。豊かなコメントを再生時にも流すことができます。(多少違うのは2chスポーツ実況のように本スレが判りにくいものでもリアルタイムなら見比べながら選べるのに対し、2ch2NicoJKで保存したければ条件設定が必要な点ですが、これは実況板の性格上止むを得ないところです。)これら2つの方法は併用できます。併用する場合、NicojCatchで実況ログが保存してあるものは1、ないものは2の方法が自動的に選択されます。それぞれを準備する手順は後で説明するとして、まずは実際の実況付き再生がどうなるかをご紹介します。これにも2つの形式があります。実況付き再生の2つの形式ファイル/プレイリストの実況付き再生には[ハードサブ]と[ソフトサブ]の2つの形式があります。v1.19以降の新機能)ハードサブの場合はサーバーでコメントが焼き込まれた状態で配信されますので、端末側ではほとんどやる事がありませんが、ソフトサブの場合はニコニコ実況や2ch実況と同じ仕組みを使っていますので、端末側操作のためのスライダーやボタンが追加されます。それぞれの利用手順について利用手順ハ|ドサブ単体のファイル再生では、以下の「実況焼込」をチェックすればハードサブの指定になります。プレイリスト再生時も、実況焼込のチェック/非チェックを選択します。ハードサブの指定ファイル/プレイリスト再生中は「再読込操作」のポップアップでハードサブするか否かを変更でき、指定変更後「ストリームを再起動」すれば即座に反映されます。ハードサブに変更する指定ソフトサブソフトサブを指定するには、まずはハードサブの指定をおこなわない、すなわち「実況焼込」のチェックをおこなわない状態でストリームを起動します。ハードサブで再生中であれば、「再読込操作」のポップアップで「実況焼込」のチェックを外して再起動してください。この状態で起動あるいは再起動した視聴画面では、実況サイドパネルを表示すると以下のようなバーとボタンが表示される筈です。この「実況ログを再生する」ボタンを押せばソフトサブでの実況表示が開始されます。(但しASSファイルが存在していない時は、「ASSファイルが存在しません」というメッセージが表示されて、このボタンを押すことはできません。)このボタンを押さなければ実況表示のない普通の再生になります。実況再生中にこのボタンを押せば実況表示は停止します。実況再生の自動起動を試みます。上の「タイミング調整」スライダーは、遅延時間スライダーと同じような役割で、+の数字ならコメントが流れるタイミングが遅れる方向になり、-(マイナス)の数字ならその秒数だけ、コメントが進んでいる方向になります。調整幅は-30秒~+5秒です。この調整幅になっている理由は、通常のソフトサブであれば(ハードサブと同じく)元データに起因する誤差がありますが、最大±5秒程度のタイミング調整ができれば良いので+方向は5秒としています。仕組み上ずれがでてしまう「Androidでエンコード未了のファイルストリームを再生する」ケースでは、コメントは必ず映像より遅れる方向にずれますので、その調整可能幅をマイナス方向に30秒と設定している訳です。ハードサブとソフトサブの選択について最初このシステムはハードサブの仕組みだけしか持っていませんでしたが、(特に可変速再生で)負荷が高く、また画質が落ちるため通常より2段ぐらい高い解像度にしないと満足いく画質にならない、という弱点が気になってきましたので、後になってソフトサブを追加しました。いってもそれぞれ特長と弱点がありますのでそれぞれ補完するものとして、都度使い易い方を選べば良いと思います。PCやiPad、Androidで普通に使う場合はソフトサブが使い易いと思いますが、iPhoneではそもそも全画面でしか動画を観られないので、ハードサブにする必要があります。弱点ハ|ドサブ・全画面でも表示できるのでiPhoneでも実況が楽しめる。・端末側負荷がかからないので、Chromecastなど処理能力の低い環境でも滑らかな実況表示が楽しめる。・映像に同期して焼き込まれるため、映像と実況コメントのタイミングの誤差はせいぜい±5秒以内である。(この誤差はプログラムの問題ではなく、そもそものニコニコ・ログ上のタイムスタンプの問題)・サーバーの負荷が高く、特に1.5倍速や2倍速の映像に実況を焼き込もうとすると、ハイエンドのPCでも処理が追いつかないことがある。(映像が頻繁に一時停止する。弾幕状態になると映像がかなり崩れる。・映像と実況コメントのタイミングの誤差は小さいが、補正もできない。・コメントを消したい時でもストリームの再起動が必要。表示位置や透過度も調整できない。・文字は焼き込みなのでサイズは動画の表示サイズが小さくなれば比例して小さくなる。ソフトサブ・サーバーに負荷はかからない。エンコードも通常通り終わる。・画質への影響がない。・文字サイズは動画サイズを調整しても端末の画面に合わせたサイズのままなので、過度に大きくなったり小さくなることがない。・映像と実況コメントのタイミングに(ハードサブと同じ理由で)±5秒以内の本来的な誤差があるが、それもスライダーで補正できる。・表示位置を制限したり文字を透過させるような調整が可能。・全画面では利用できない。・Androidで「エンコード未了」の状態では(Androidの標準プレーヤーの特性で)タイミングに大きな誤差があり、スライダーで毎回補正が必要。(エンコード完了すれば解消する。PCやiOSではこの問題は無い。)・実況開始時にASSファイルを映像とは別にサーバーから読み込むが、回線速度やASSファイルのサイズによっては無視できない待ちが発生し、その間以下のようなメッセージが表示される。ASSファイルのサイズは通常は数百KB程度なので殆ど気にならないが、たまに「祭り」の「1時間以上の映画や番組」だと数MBに達する。以上が実況付き再生の手順で、ここからはこの機能を使うための設定手順です。使って録画と同時にニコニコ実況(および2ch実況)を取り込んでいることが前提になります。関連フォルダを以下のように指定してTvRemoteViewer_VBを再起動するだけで、実況付き再生ができるようになります。図にあるNicoConvAss.exeはTvRemoteViewer_VBと同じ作者さんが提供しているツールです。実況を取得してASSファイルを作成する」手順でも使いますが、ここではコメントのフォーマットを整えるためだけに使います。実況の過去ログを取得し字幕ASSファイルを作成するソフトという記載があります。いう所がファイルのリンクになっていますので、クリックしてダウンロードし、解凍した上で、適切な導入用フォルダを作成して(以下では\NicoConvAssフォルダと呼びます)、解凍した中身を全てコピーしてください。ように指定してください。NicoConvAssが持っているデフォルト値が使われ、利用時に指定することはできません。これをiPhoneのような小さな画面でハードサブで再生したい場合、文字サイズをもっと大き目にしたい場合があるかもしれません。逆に充分大きな画面のPCで再生する事が多い場合、コメントをシステム側で勝手に削ってほしくない場合もあります。ファイルを編集することで変更できます。値がデフォルトのheight値になります。再生の都度この設定を変更することはできませんが、最も利用の多いシーンを想定して設定すると良いです。設定のASSを生成してiPhoneでは配信も持ち運びもそちらのファイルを使うと同時に、PCやタブレットではTSファイルを直接再生することでデフォルトの大きな画面用パラメータで実況再生、というような使い分けをしています。ファイルが見つからない場合、1度でもNicoConvAss.exeを起動すれば自動的に作成されます。NicoConvAssでニコニコ実況を取得してASSファイルを作成する方法この仕組みでは1でも利用したNicoConvAssと、実況データ取り込み用ソフトのJKCommentGetterを活用します。概要と設定手順は、以下のようになります。複雑な仕組みに見えますが、基本は各ソフトを導入していくだけでOKです。それぞれの手順は赤枠内をクリックすれば出てきますので、Firefoxでniconicoにログインした上で、(1)から順に実施してください。導入済みであればそれをそのまま利用できます。導入の際には新規フォルダを作るのではなく、NicoConvAss導入済のフォルダにまるごとコピーてください。導入したものを流用する場合でも、(6)NicoJKで保存している実況ログを活用する設定を(NicojCatchを導入済みの方は)おこなってください。指定することによって、NicoJKフォルダの実況ログを優先して読み込むようになります。併用する場合は、TvRemoteViewer_VBがNicoJKフォルダに実況ログがあれば直接取りに行くので、ここで実況ログ保存済みのファイルにASSを作成してもあまり意味はありません。(といっても保存済みかどうかの判別も面倒ならとりあえずまとめて作っておいても構いません。する)場合には意味があります。(ストリーム起動時に毎回ASSを作成しないのでストリームの起動が速くなる、というメリットもあります。)また、(1)~(6)を導入するのはTvRemoteViewer_VBが動いているPCである必要はありません。TVRockやEDCBで予約録画に使っているPCが別にあれば、そちらに導入するのが適切です。(7)についてはTvRemoteViewer_VBの動作環境に導入してください。この仕組みの流れは簡単に言えば、録画したtsファイルに埋め込まれているチャンネルや時刻の情報をNicoConvAssが解析の上、NicoJK用に保存された実況ログがあればそちらから、それが無ければJKCommentGetterというツールを使ってniconicoのサイトに問い合わせて実況ログを取得した上で、ASSという字幕ファイルを吐き出す手順になっています。ASSは汎用的な字幕ファイルで、ここではそれに実況風の「横に流す」オプションを付けることによって実況の雰囲気を再現しています。元の映像ファイルが「映像1.ts」というファイル名なら同じフォルダに「映像1.ass」という名前で置いてあれば、TvRemoteViewer_VB側ではそれを対応する実況ログとして取り込む仕組みになっています。この仕組みで準備したASSファイルは、MPC-HC等で再生する際もそのまま働きます。MPC-HC/VLC等での使い方はここの主題ではないので、ご興味のある方はリンク先を参照してください。このASSファイルを対象の録画ファイル分予め用意しなければなりませんが、録画ファイルがtsで取ってあれば何年前のものであっても自動で生成でき、外出時に仕掛けておけば数千ファイル分でも半日ほどで仕上がります。ファイル容量はテキストファイルなので大したことはなく、過去にNicojCatchでコメントを取っていなかった頃とか取り損なっていたtsファイル分も改めて実況取得できるので、新たな発見もあります。(え、あの番組にはこんな実況コメントが入ってたのか!とか。)なお、RubyはJKCommentGetterを動かすために必要なスクリプト言語環境、またsqlite3はFirefoxのcookieにあるniconicoの認証情報を読み出すためのデータベースソフトです。fonts.confはffmpegでASSの字幕焼き込みをおこなうためのフォント管理情報です。この導入は以下のようにしてください。いう名前にしてください。フォルダにコピーしてください。以上でffmpegのフォント管理ファイルが導入されます。.さて、これを活用する上でもう1つ必要なのは、録画のたびにASSファイルを自動で生成したり、既に大量にある録画済みデータにまとめてASSを付加する仕組みです。片っ端からASSを付加しておけば、TvRemoteViewer_VBでは視聴時に実況付きにするか否かをいつでも選択できることになります。NicoConvAssはショートカットを作っておいてASSファイルを生成したい録画tsファイルをドラッグ&ドロップするだけでASSが作成できますが、1度に1個しかドロップできず、リストを作ってバッチで処理するのも数が増えれば面倒です。TVRockやEDCBの録画後処理で、自動的に実況ファイル(ASSファイル)を作成する。録画済みのtsファイルや、それを保管したフォルダを一括してドラッグ&ドロップで一気にASS作成できるようにする。以上の仕組みがあればより利用が簡単になると思います。仕組みは、実は1と併用する場合には不要です。(NicojCatchが導入済であれば、録画の際にNicoJK用の実況ログが作成されて、TVRemoteViewer_VBは再生時に毎回そちらを使ってASSファイルを作成します。指定)の場合は録画後処理でASSを作成するのが便利です。ここではTVRockでの指定をご説明しますが、EDCBでも中の%1を$FilePath$と書き換えて後処理に組み込めば良いです。\NicoConvAssフォルダにコピーしてください。"%1"という一行を加えてください。(赤い部分は導入環境に合わせて修正してください。)TN:は録画後何も指定がない場合にデフォルトで呼び出される処理です。TN:で指定してある処理があれば、それにこの1行を並べれば良いです。他の録画後処理と併せて実行する場合も、それに並べて加えてください。いう行を加える、など。以上の前処理やパタメータをセットします。以外のパラメータは特に弄る必要はないと思います。-heightについては、これを大きくしていくと、「ハードサブ」で観る時の文字サイズが小さくなります。(「ソフトサブ」では文字サイズは端末側が再調整しますので、特にこの数字は関係ありません。iPhoneサイズで見るには丁度良いですが、PCやタブレットでは字が大きすぎるかもしれません。PCやタブレットではソフトサブの方が便利だと思いますので、ここはむしろ(ハードサブしか使えない)iPhoneのようなデバイスを優先して決めています。「小さな画面には表示し切れない」と判断してコメントを削ってしまうことがあります。半分以上のコメントが削られていることが判ります。)しておいた方が良いです。(そのぐらいの設定だとコメントが削られることはありません。AutoAssConvに直接ドラッグ&ドロップして、ASSファイルを作り直す方法もあります。一括処理については、(そもそもは自分用のつもりで)ツールを作成しましたので、ご活用ください。\NicoConvAssフォルダにコピーしてください。デスクトップ等にショートカットを作っておけば、複数ファイル/フォルダをまとめてドラッグ&ドロップして一挙にASSファイルを作成できます。フォルダについては下の階層にある全てのtsファイルにASSを生成していきます。処理進行中でも別のファイル/フォルダ群をドラッグ&ドロップすれば、並列で処理します。生成が終われば図のようなポップアップで処理したtsファイル数が表示さます。対象が数百個以上になるとそれなりに時間がかかりますので、寝る前や出かける前にまとめて仕掛けておくのがよいかと。編集すれば一括処理のパラメーターを設定可能で、デフォルトでは以下のようになっています。数字ですので、一括で適用したいパラメータをここで指定してください。(例)対象のファイルをD&Dすれば、その分だけ別の設定、例えばheightを大きくとったASSファイルに差し替えることが可能です。以上が録画ファイルを実況付きにするためのASSファイル作成手順になります。他に、tsファイルだけでなく録画をエンコードしたmp4/mkvファイルもASSファイルが使えますが、手順はリンク先をご参照ください。リンク先の手順ではmp4/mkvファイル用のASSをまた改めて作りますので、そちらはそちらで利用画面サイズに合せた設定が出来ます。以上の手順で一度実況ログファイル(ASS)を作成すれば準備完了です。以後新規に録画されるファイルにもASSが自動的に作成されるようになります。倍速の音声付き再生ができます。利用方法は簡単で、ファイル再生で最初から速度指定したい場合は、図の位置に緑色のボタンがありますので、これをクリック/タップすれば(ロックが外れて)再生速度のセレクトボックスが現れます。ここで速度を指定して「再生」ボタンを押せば、最初からその速度での再生になります。等倍速以外の再生では、図のように視聴画面の情報パネル先頭に、現在何倍速で再生中かの情報が表示されます。押して速度を指定してください。プレイリストの場合は(途中で意図的に変更するまでは)同じ速度で後続のファイルも再生されていきます。ファイル/プレイリストの再生中に速度を変える場合は、(ストリーム再起動を伴う操作になりますので)「再読込操作」ボタンから操作します。使ってみた感じでは(番組の性格によりますが)1.5倍速程度までなら台詞もほぼ理解でき、ニュースのようにゆっくり喋ってくれるものや野球中継なら(そもそも解説をあまり真面目に聞くものでもなく絵と球場の雰囲気が味わえればよいので)2倍速でも十分実用的です。意味を持たなくなりますので、ご注意ください。これはプレーヤーが実際に再生する時間なので、等倍速以外では「ファイル本来の再生位置/全体時間」ではなくなります。TvRemoteFiles内部ではその辺の時間補正をきっちりおこなっていますので、再生位置/全体時間は何倍速であっても正しく把握されています。プレーヤーが表示しているこの数字は正しくありません、という意味です。ver1.27以降の組み合わせではチャプター機能が使えるようになりました。これはチャプター移動、自動スキップと、それをナビゲーションするための進捗バー、時間表示等の周辺機能で構成されます。チャプター機能を使うためには別のソフトの機能や運用との連携が必要ですので、最初のTVRemoteViewer_VB導入の際には飛ばしてかまいません。十分に使い慣れてから導入するのがお勧めです。進捗バーと時間表示の機能チャプター機能を説明する前に、チャプターファイルの有無に関係なく、全てのファイル再生共通で新たに使えるようになった機能をご説明します。表示は以下のようになります。右端の時間表示は現在の再生位置の、ファイルの先頭からの経過時間です。途中で再ロードしたり倍速再生にしても関係なく、ファイル先頭からの時間を常に表示しています。進捗バーは、ファイルの全体時間の中の現在の再生位置をバーで表示します。全体時間が判らない間はバーは表示されません。(とはいえ、現在はエンコード終了を待たなくてもASSファイルやチャプターファイルから全体時間を推測しますので、どちらかがあれば最初からバーは表示されるようになりました。)エンコード進行中は、進捗バーは上の図のように青で表示されます。エンコードが終了すれば、バーは赤い色に変わります。途中で再ロードした状態でエンコード終了した場合、再ロード位置より前が青いバー、再ロード位置より後ろが赤いバーになります。赤い色は再ロードせずにプレーヤーの機能だけで移動可能な範囲、青い色は移動するのに再ロードが必要な範囲になります。この識別はチャプターを移動する際にも重要です。チャプターファイルを事前に用意しておく方法チャプター機能を本格的に使いたい時は事前に、リンク先を参考にしてチャプターファイルを作っておくのがお勧めです。リンク先でご紹介しているツールは地上波キー/系列局とそのBS/CS再放送の番組限定ですが、チャプターイン/チャプターアウト、つまり本編と思われる部分とそうでない部分(恐らくはCM)の区分け情報を自動で作成してくれます。ファイル名.QSV.chapter)すれば、mp4等でも同じようにチャプター機能が使えます。このツールでは字幕の空き時間を評価しながら作っていきますので、たまに台詞や説明のない長いシーンやOP/EDなどを本編以外と誤検出することもありますが、TvRemoteViewer_VBのチャプター機能は自動でスキップしながら違うと思ったら手動に切り替えるなど、いろいろ気楽に使えるようになっています。チャプターファイル(ファイル名.chapter)が添付されたファイルをTvRemoteViewer_VBで再生すれtば、図のような表示になります。今までのシークボタンの左側に、切替用の緑ボタンが追加され、SKIPと表示されたものを押せばチャプタースキップのボタンが表示できるようになります。SEEKと表示されたものを押せば元ののシークボタン表示に戻ります。エンコード途中の状態ではこのように青いボタンに指定先チャプターの時間が表示され、これを押すことで(リロードを伴った)チャプター移動ができます。自動スキップはチェックはできますがグレーアウトしており、該当時間帯に差し掛かっても発動はしません。エンコードが終了していれば、表示がこのように変わります。インターフェースは殆ど同じですが、チャプターを移動するのに改めて青ボタンを押す必要は無く、最後にチャプター指定ボタンを押した4秒後に自動的にチャプター移動が発動します。(もし取り消したい場合は、4秒以内に「SEEK」ボタンを押してボタンを切り替えてください。)また自動スキップが働くようになり、図のようにチャプターイン/アウトに囲まれた領域をスキップするようになります。いわゆるCMスキップ機能として使えますね。ファイル再生途中でリロードをおこなった場合、エンコード完了後の進捗バーは以下のような表示になります。プレーヤーの機能だけで移動できる範囲とリロードを伴った移動が必要な範囲が混在することになりますが、このチャプター機能では移動先によってどちらになるかを自動判断し、それに合わせてボタンの色も変わります。等の集中)を検出して自動でチャプターファイルを生成する機能が追加され、更に便利に使えるようになりました。以下のパラメータに"1"(デフォルト)がセットしてあれば、ファイル毎に再生起動する最初のタイミングで動くようになってます。これはそこそこの実況ログのある録画、また語句の性格からしてもアニメ30分番組でなければあまり意味のない機能で、また「CMのエンドには打ててもCM開始は検出できない」ので自動スキップには使えない(IN-OUTの区別がない)のですが、上でご紹介したツールではチャプターが打てないMX等のアニメ番組でも適切なチャプタが打てるようになります。実況ログさえあれば良いので、mp4など非tsファイルでもそのまま使えます。これがONになっていると、ファイル再生の起動が、特に実況の重いファイルで数秒間余計に待たされることはご注意ください。して明示的にOFFを指定すると良いと思います。(ストリーム開始時に作成しなくても、NicoConvAssを自動で動かしている方は予め録画と同時にこれを作成しておくことも出来ます。ver1.34以降では、任意の端末から任意の端末をリモコン操作できるようになりました。リモコン機能そのものは、もともとキーボードもマウスも無いChromecast/AndroidTV用に開発したものです(→ご参考)がこれが汎用化され、PC/Mac/タブ/スマホのいずれもリモコンで操作できるようになりました。機能も豊富で、直接操作でできる事はほぼ全てリモコンから操作可能というのはもちろん、直接操作にはない便利な機能も加わっています。実際にリモコンで操作する用途の他にも、リモコン制御モードで「全画面表示」の指定にしておけば、視聴画面を開いた時に常に横幅一杯の動画サイズに調整されますので、モバイルの普通の視聴でも便利です。↓リモコン画面またテレビや大画面モニタに繋いだPCで、ブラウザごと全画面表示にしておいて、手元のタブレットやPCからテレビのように操作することも出来ます。これは2画面マルチモニタ構成の片側にTvRemoteViewerを全画面表示したスクリーンショットですが、このように同じPCの別のモニタにリモコンを表示して操作する、という使い方もできます。最近出てきたスティックPC等もChromecastのように使えるようになります。Chromecastとは違って端末起動~ブラウザの起動の部分をリモコン操作することはできないので、そこはマウス操作かAutoStartで立ち上げる必要がありますが、以降の操作性はほぼ同じです。Stick(および据置型のFireTV)も、このリモコン機能を使って高画質の視聴環境として活用できますが、それについては別記事にまとめました。他のデバイスもブラウザが起動できれば、多分ですが同じようにTvRemoteViewerの端末として使え、それをリモコン操作出来るようになります。ver1.68以降では、下の手順でリモコン制御モードONの状態にしておけば、視聴画面から直接リモコンを起動できるようになりました。リモコン制御モードでは図の位置に「リモコン」ボタンが表示され、これを押すことでリモコンを起動できます。動画を画面一杯に表示した際にはリモコンの方が操作しやすくなるほか、現在は「動画の全画面⇔タイル表示の切替え」、「実況エリアや文字サイズのリアルタイムな変更」など、リモコンのみでできる操作もありますので、必要な時だけ呼び出す形でも便利に使えます。切替え以上の機能を使う際は、トップページの「デバイス(Cast)タブ」に追加された以下の欄で設定します。デバイス名にユニークなIDを入れてください。他と重複すると動作がおかしくなりますので、必ず「1つの端末の1つのブラウザ」毎にユニークな名前にしてください。デバイス名は制御ファイル名としても使いますので、Windowsのファイル命名規則に違反しないものにしてください。ver1.36以降では、「リビングPC-その1」のような日本語のデバイス名を付けることができるようになりましたので、判りやすい名前を付けると良いと思います。ここで注意点ですが、例えば1台のPCでChromeとFireFoxは別の名前の付いた別のデバイスとして別々に動作することは可能ですが、同じChromeのTvRemoteViewerの端末画面に別々の名前を付けて操作することは出来ません。リモコンで操作する時は、対象の画面は1つだけが立ち上がっている状態にしてください。(但し別のTvRemoteViewerサーバに繋いだ画面なら、それぞれを1画面づつ独立して動かすことが出来ます。)ユニークなデバイス名を入れたら、右の「ON」のボタンを押してください。(ボタンが押せない時は一度デバイス名の欄でEnterを押してからボタンを押すと良いです。)トップ画面がリロードされ、左上に「R」マークが表示されたらこれでリモコン制御状態になり、デバイスリストに表示されるようになります。このデバイス名を使って別の端末(あるいは同じ端末でも構いませんが)からリンク先の手順でリモコンを起動して操作できるようになります。手順も簡単ですので試してみてください。これもChromecastと同じですがファイル/プレイリストの再生は他の端末から、デバイス名で宛先指定して起動できるようになります。リモコン制御モードを解除する場合は、上図のようにデバイス名の横のボタンが「OFF」に変わっていますので、それを押してください。トップ画面がリロードされて左上の「R」マークが消え、リモコンモード解除された状態に戻ります。リモコン制御モードでも今まで通りの操作もそのまま出来ますので、リモコンモードを解除しないまま運用しても構いませんが、その場合以下は注意してください。視聴画面のズーム倍率は、現在のブラウザサイズに合わせて毎回自動調節されますのでちょっと使い勝手が変わります。ブラウザ内スクロールも抑止されます。リモコンから「全画面」を指定したままだと毎回ブラウザ一杯に動画が表示されますので、今まで通りのボタン操作やサイドパネル操作を優先したい場合は、リモコン側で「タイル表示」のモードに切り替えておいてください。(この画面モード切替えはリモコン側でなければ出来ません。複数のTvRemoteViewer_VB画面を動かすこと自体は問題ありませんが、その状態のままリモコン操作しようとするとコマンドを取り合って動きがおかしくなりますので、リモコン操作する際は1画面だけ残して、それ以外は落してください。以下の機能はリモコン制御モードでは使えなくなります。複数画面が競合することを抑止するため、「視聴画面をポップアップで起動」は強制的にOFFになります。リモコン操作中に確認用ポップアップで動作の流れが止まるのはまずいため、「チャンネル/再生ファイル切替え時に確認メッセージを表示」は強制的にOFFになります。リモコン制御機能が無いため、番組表は強制的にRockバータイプの番組表モードになります。機能上の留意点なお、端末の特性上リモコンの機能が制限されるものがあります。以下の点もご留意ください。音量調節/ミュート機能iOS/Androidでは、モバイル端末としての特性上HTML5/Javascriptから音量調節することは出来ない制約があり、リモコンで音量調整はできません。(サイトに埋め込まれたスクリプトで勝手に端末全体の音量が変えられるのを避ける意図のようです。Castの仕様に従っているためこの問題もなく、快適に使えます。Browserがうまくリモコン制御できないので、原因調査中です。ver1.35で問題解消し、普通に使えるようになりました。モバイル系ブラウザの自動スタートモバイル端末をリモコン操作する場合、元々モバイル系ブラウザは動画の自動スタートが出来ない(動画開始時に人手の介入が必要な)ものが多い点もご注意ください。Browserについては、リモコン制御下でうまく動くことを確認しました。1.40以降ではソースファイルがH.264動画の場合、ソースをエンコードしながらストリーミングするのではなく、ソースファイルをそのままHLS仕様の細切れファイルに加工してストリーミング、という選択も出来るようになりました。いう選択肢が現れますので、これを選択して「再生」ボタンを押してください。プレイリストでも同じように選択できます。プレイリストの場合TSファイルでなければこれがそのまま適用されて無変換ストリーミングになりますが、TSファイルはこれは適用されず、デフォルト解像度での通常のストリーミングになります。ストリーム用ファイル生成が完了(今までで言うところの「エンコード完了」)します。程度で表示されますので、ここを押すことで「エンコード完了」状態になります。このように直ぐに使いやすい状態になるのがメリットですが、もう1つのメリットは、ストリーミングに伴うエンコード処理がないので、サーバ負荷が極めて軽くなる点になります。エンコードは事前にやっておくことになり、その際の負荷は掛かる訳ですが、これは予めサーバが空いている時間帯に、HandBrake-QSV等を使ってエンコードしておけば良い訳で、もしHDDに余裕があるなら外出用と宅内視聴用のMP4ファイルを録画後処理でそれぞれ用意しておけば、比較的CPUパワーの限られた環境でも便利に使えると思います。(実際、メーカー製レコのリモート視聴の仕組みも予めそのように配信用ファイルを何種類か作っておく形になっています。基板容積や冷却能力に制約のあるレコ等と違ってPCはトランスコードを積極的に使ってその能力を有効活用すべきだと思いますが、PCにそれほどの能力がない場合でもそういう選択ができる、という仕組みになります。)但し以下のような点にはご注意ください。・無変換ストリーミングでの解像度や音声言語は元のファイルのままの決め打ちになります。(表示の初期状態は640x360のスケールになりますが、実際の解像度は元解像度のままです。)・実況焼込みや再生速度変更のようなビデオファイルの再変換が必要な選択も出来ません。(選択しても無視されます。実況表示はソフトサブをご利用ください。再生開始位置を指定して途中から視聴開始することは可能ですが、先頭から開始してもすぐにシークで飛べるようになるので、プレイリストで続きから自動再開する時ぐらいしか使わないかも。・コンテナはMP4でもMKVでも構いませんが、コーデックはH.264でなければなりません。それ以外の動画形式で無変換を選択するとストリーミング起動待ちのまま先に進みません。(その場合はトップ画面→管理タブから停止させてください。)・ストリーム用ファイル生成があまりに速いため、HLSプレーヤーがそれにつられて、最初はちょっと先のシーンから再生開始し、秒表示と実際のシーンも合いませんが、30秒~1分で上記「ここを押せばシーク可能」のボタンが出現し、それを押すことで「正常な再生位置」に戻り、また「エンコード完了」の状態になります。iOSの場合はもっと早く数秒でこれを自動検出した上で、自動的に「エンコード完了」状態になるため、操作は必要ありません。ChromecastやAndroidTVの場合は30秒~1分で自動検出しますが、プレーヤーの状態を「エンコード完了状態」にするため一旦プレーヤーをリセットさせます。そのため最初1分程度は映像が止まったり暗くなったりの動きがあり、その後通常再生が始まります。このように視聴開始直後はちょっと今までと違った動きをしますが、その後は「エンコード完了」状態になって、自由にシークやスキップができるようになります。13)二ヶ国語放送(または録画)で日本語/英語音声を選択する。日本の放送では、二ヶ国語放送の際に(番組表には[二]のように表記されます。)、おおまかに2つの方式のいずれかを使います。Inputがチューナーで受信したストリームです。(これ以外に映像ストリームがあります)1は(アナログ放送時代からなんとなく引き継がれた方式として)本来右左の音声を流すチャンネルでそれぞれ左に日本語、右に英語の音声を流す方式で、当システムのデフォルトでは左右から日本語と英語の音声が同時に聞こえます。2はデジタル放送になって実現した、音声ストリームを2つ作ってそれぞれステレオで日本語、英語を流す方式で、当システムのデフォルトでは日本語のみがステレオで聞こえます。どちらの方式を使っているかは局によって違い、またNHKのようにニュースでは1、映画やドキュメンタリーでは2の方式を混成で使っているケースもあります。1の場合は左右のどちらかを選べないと二ヶ国語が混ざって非常に聞き取りにくくなりますし、また2の方式で敢えて英語の音声を聞きたいケースもあるかもしれません。そこで当システム最新版では、TV視聴時に言語を選べるように以下のような選択肢を付けました。2ステレオ二ヶ国語であれば日本語のステレオ音声になります。Modeであれば英語、それ以外であれば日本語のモノラルが聞こえます。それ以外であれば基本は無音、但したまに「解説音声」が聞ける番組もあります。(NHK朝ドラなど番組表に「解」の表記があります。)どのパターンかの自動判別は残念ながらできませんが、判らないときはとりあえず「主・副」でスタートしてみて、二ヶ国語が混じっている場合は1のパターン、二ヶ国語放送の筈なのに日本語しか聞こえない場合は2のパターンとして、再度言語を選択すれば良いと思います。視聴画面では以下のセレクタで言語を選択し直してストリーム再スタートすることができます。これらはファイル再生でも基本的に同じですが、放送の生ストリームを録画したTSファイルと、それをエンコードしたMP4、MKV等では、扱いが少し異なります。TSファイルであれば上記のストリームがそのまま保存されていますので、選択肢も同じで、再生開始時に以下のセレクタで選択します。プレイリストでも各ファイルでデフォルトの音声選択ができます。再生中にもこの選択は「再読込操作」ボタンからいつでも変更できます。プレイリストの場合、この「再読込操作」で設定値と異なる音声トラックを選択した場合、以後のファイル再生でも(再度変更しない限り)、その選択が引き継がれます。ファイルが二ヶ国語放送のTSファイルを元に、例えばMP4やMKVの形式にエンコードされていると、以下のように少し形式が異なってきます。Modeと殆ど同じに見えますがシステム的な扱いは少し違っていて、音声はストリームもチャンネルも1つで単なるステレオ音声として記録されています。「副(R)」の選択肢が表示されるようにしました。これで二ヶ国語放送の録画をエンコードしても、音声言語の選択ができます。(なお、「音声2」は通常のエンコードでは破棄されます。)この辺は元のTSと同じような使い方なのですが敢えて説明したのは、(普通にエンコードすればこうなる筈なのですが)、人によっては(音声の品質を重視して)エンコード時に音声は敢えて元のストリームから変換しない、つまり「AACパススルー」を使う場合もあります。「音声2」も保存するために、MP4/MKVでも音声を2ストリームで作成している場合もあるかもしれません。「副(R)」方式では日本語・英語の分離はできませんので、下に「passthru」の選択肢を加えました。2」と同じ処理をおこないますので、そういったケースでも問題なく扱うことができます。(逆にそういった事をしない場合はpassthruの選択肢は無視して構いません。いうか、使っても効果はありません。端末を海外で使うことも想定して、時差を手設定して日本時間で進行していく番組情報を適切に更新できるようにしていました。ver1.14以降ではその時差情報を自動で取得できるようになりましたので、設定不要になりました。(なんでこんな簡単なjavascript機能も知らなかったのか・・勉強不足です。)当システムはロケフリなので、当然海外出張や旅行の際にもLAN/WiFiの環境さえあれば、PCやタブレット、あるいはChromecastのようなデバイスから日本に居る時と同じように、テレビや録画を(実況付きで)視聴でき、結構便利だと思います。今はホテルで自由に使えるLAN/WANの環境がかなり充実していますので、その辺の安価で帯域十分な回線が確保できれば、ほぼストレスなく使えると思います。15)視聴画面をポップアップ型の別ウインドウにする端末ごとにお好みに合わせて、テレビやファイルの視聴画面を常に別ウィンドウでポップアップさせるような設定ができます。設定はトップの管理タブでおこないます。この設定にした場合、番組表やファイル再生画面の「視聴」ボタンでストリーム開始したり、既存のストリームのボタンを押したタイミングで、図のように最小限の装飾かつ視聴画面サイズに適正に合せた別ウィンドウが立ち上がります。番組表やファイルリストを常に表示したままで視聴画面を、必要があれば複数起動できる点も便利で、リンクのように番組表/ファイルリストを(視聴画面のサイズとは関係なくなりますので)見やすい大きさで縦長にしてデスクトップに並べておいて、観たいものがあったらいつでもそこから起動、という使い方もできます。この機能はタブレットやスマホでは(そもそも非マルチウィンドウで、動画表示も同時に1画面しかできないので)あまり意味がなく、またスマホ/タブのブラウザでは「閉じる」ボタンがうまく働かないような問題もありますので、主にPCやMac向けの機能と考えてください。ウィンドウサイズは画面起動時に適正に調整されますが、ズームで動画エリアを調整したり、サイドパネルをON/OFFした場合には、ウィンドウの枠をつまんでサイズ調整しても良いですが、もっと簡単な方法として画面の再読み込みをおこなうだけで、ウィンドウサイズが適正に修正されます。再読み込みは「再読み込み」ボタンを押すだけで良いのですが、押しにくい位置にある時は図のようにChromeでは上辺のバーで右クリックから選択できますし、Firefox/Opera/Safariではページ内の(映像以外の)エリアで右クリックすればメニューから指定できます。ポップアップ型に切り替えた直後、ブラウザによっては「視聴」ボタンを押しても視聴開始できない場合があります。これはブラウザがセキュリティの観点でポップアップを弾いているのが原因で、よく見るとポップアップブロックのメッセージが表示されている筈ですので、速やかにポップアップを許可してください。トップ画面はOKでもファイル再生画面ではブロックされる事もありますので、視聴画面が立ち上がらない場合は都度、それぞれの画面で許可してください。(ちょっと面倒ですが最初だけです。)Chromeではこのようなメッセージが表示されるのでクリックしてこの画面で許可Firefoxではこのようなメッセージが出るので、「設定」から許可する。ポップアップ型画面の通常との流れの違いを以下の図にまとめました。ポップアップ型に設定した場合、視聴画面からトップ画面や番組表画面への遷移は(操作系が混乱するだけですので)出来ないようになっていて、代わりに「閉じる」というボタンが加わります。ボタンで強引に終わらせるのではなく、できるだけ「閉じる」ボタン又は「(この)ストリームを終了する」ボタンを使うようにしてください。視聴画面でのチャンネル/ファイル切替えや別ストリームへの切替えは今まで通りになります。他に、再生中のストリームのURLを表示したり、外部プログラムと連携させる機能もあります。URLボタンはデフォルトでは非表示になっていますので、この機能を使いたいときはトップ画面・管理タブの「URLボタンの設定」で適切な機能を選んでください。「ストリームURLを表示」を選んでおけば、以下のようにボタンが表示され、押すことで現在のストリームのURLが表示されます。これは他の動画プレーヤーで視聴する場合を想定しています。テレビ代わりにして観たい、というような場合、ここからストリームURLをコピペすれば良いわけです。ここを「ブラウザに渡す(アプリ選択機能前提)」または「MIMEタイプ指定でリンク」に設定すれば、URLボタンもそれぞれ以下のようなボタンに変わりこれを押せばそれぞれの方法で、ブラウザ経由でのアプリ起動を試みます。BrowserのようにURLのパターンで起動アプリを指定できるものは前者で良いと思いますし、標準ブラウザやChrome、Firefoxの場合後者の指定で、初回にこのストリーミング・タイプに紐づけて起動するアプリを選べますので、MX動画プレイヤー等に紐づけすることができます。この機能はAndroid端末で、外部プレーヤーと連携させたいというニーズに対応したものです。v0.57U以降、でお休みタイマを付けました。使い方は簡単で、視聴画面で下の操作バーに「タイマ」のボタンがありますので、これをクリックしてください。すると「時間のセット」→(タイマ稼動中)「タイマの取り消し」の順にボタンが切り替わります。これは私自身が欲しくて付けた機能なのですが、スマホやタブレットで「ながら視聴」しているうちに、うっかり映していることすら気にならなくなってしまい、必要もないのに長時間付けっぱなしになってバッテリー切れを起こす事があります。(スマホ・タブレット・PCとも、動画が動いている間は画面スリープに移行しない設定になっている事が多いですので、バッテリー消費も多くなります。)そういう場合、予めタイマをセットしておけば良いわけです。セットしても視聴を続ける時は簡単にセットし直すことができます。私は寝る時にナショジオ等の録画を流したまま寝ることが良くあります。(教養系の番組は刺激や音量変化が少なくいい具合に眠れます。学生時代に授業中居眠りしていたのが子守唄として身に染み付いている訳ではありません。)今まではTVTestの「スリープタイマ」の機能が使いやすく、VLC等と外部のタイマソフトの組み合わせで使うよりずっと手軽な反面、MP4のファイル等の再生には使えないのが弱点でした。そのTVTestと同等に簡単、かつ更に汎用的なタイマが欲しいという発想です。javascriptそのものの機能では機器/OS個別のスクリーンOFFやスリープ機能を直接起動はできませんので、設定した時間になったらストリーム終了(但しファイル視聴のストリームは、存続してもシステム負荷が殆どないため保持)の上で、視聴画面を終了させ、専用の黒背景のシンプルな画面に移行するという形になります。黒のブラウザ画面では只の誤魔化し、という声もあるかもしれませんが、動画が終了すればスマホ/タブレットでは程なくスクリーンOFF/休止状態に移行しますし、PCでも(動画表示中は保留されていた)スクリーンOFFやスリープ移行のタイマが(設定されていれば)働き始めます。実際のハードの制御はこの辺に任せる、という発想です。v1.60以降では、リモコン制御モードの端末を指定時間に再生開始させる「お目覚めタイマ機能」が使えるようになりました。思えばテレビの目覚まし機能は古いようで新しい定番のニーズだと思いますが、カタログに謳う価値がないと見なされているのか最新のテレビでも殆どやっつけ仕事で、むしろ退化していたりしますね。ここでは(自分自身の要件に沿った結果)どっこい高機能なものになりました。詳しい使い方はChromecastの記事にまとめてありますので、ご参照ください。Chromecastだけではなく、リモコン制御モードにしておけば全ての端末で使えます。(動画自動開始できないタイプや基本スリープ状態のモバイル端末ではあまり意味がありませんが。)パソコン、Chromecast/AndroidTVやFireTVを使えば、寝過ごしたくない時にあるだけの端末を目覚ましにしたり、例えば出張中で起こしてくれる人が居ない時にも活用できます。17)サーバー低負荷モードTvRemoteViewer_VBサーバーはストリームごとに配信用のファイルをエンコードしながら作成していきますので、それなりにサーバー負荷が掛かります。解像度を低くする、ストリームの数を1個に絞る、ファイル・ストリーミング時はass(実況ログ)の焼き込みをおこなわない、等の工夫で、ローエンドCeleronのような非力なサーバーでも実用的に使うことが出来ます。(テレビ視聴での実況表示は端末側が独自に取得しますので、サーバー負荷には関係ありません。)ただしバージョンを重ねるにつれて、視聴中も単にストリームを受け取るだけではなく裏でいろいろな処理が動くようになってきたため、このような工夫でなんとか動かしている場合だと、特に視聴開始時のサーバー使用率が100%に張り付くケースが出ています。そこでそのような非力なサーバー用に、できるだけ負荷のかかる裏の処理を減らすモードを追加しました。設定にはトップ画面の管理タブで、以下のチェックをおこなってください。番組表の問い合わせを行なわない。ストリーム監視を10秒間隔から20秒間隔に変更する。ファイル再生では再生状態の監視と記録を20秒間隔から1分間隔に変更する。いう動作に変わります。1によってサイドパネル番組表の機能と、実況勢いウインドウクリック/タップでの番組情報表示、およびチャンネル直接切り替えの機能は使えなくなります。遅れ、結果として(PC視聴の場合)Flashがハングすることがあります。その場合ブラウザ上部にFlashハングのメッセージが表示されますので、ボタンを押してFlashを一度停止させれば、再びページ移動や再ロードなどの操作ができるようになります。この辺は負荷を下げることとのトレードオフとしてご了解いただければ。ファイル再生時のエンコード負荷が高いと言うのはそれだけ有効にCPUを使いに行って早くエンコードを終わらせようとしている訳で、タスクの優先度自体は低いので他の処理に影響を与える訳でもなく、あまり気にしなくても良いと思います。v1.14で追加されたWEBインターフェース・ログの機能を使って、サーバーイベントログを表示する機能を追加しました。トップ画面管理タブの一番下に「サーバーイベントログ」というボタンがありますので、これを押せば別画面でログ表示画面が起動します。通常はあまり使わない機能ですが、何か動きがおかしかったり視聴が開始できない時に、この画面でサーバーの動きを調べることができますし、掲示板で問い合わせる時もこの情報が役に立つと思います。この画面は別ウインドウで起動し、「閉じる」で終了します。スマホやタブレットでも一応使えますが、「閉じる」ボタンが効かない場合がありますので、その際はブラウザの機能を使ってウインドウを閉じてください。設定画面下に表示されるものと同じです(但し自分自身のリクエスト/WI_SHOW_LOG.htmは省略しています)が、サーバー画面ではログがどんどん流れていくのに対してこのWeb画面では(意図的に)「更新」ボタンを押さない限り表示更新しない仕様になっています。簡単なログ分析機能として、サーチ機能を付けました。サーチ動作自体はファイル再生画面用のサーチ機能に準じますので、そちらをご参照ください。サーチが効いている状態で「更新」ボタンを押してもサーチ条件は維持されますので、特定イベントだけを監視したい時にメッセージフィルタとして使えます。図では2つのキーワードを指定することで、特定のストリーム配信の進行を監視しています。選択したイベントが画面中央あたりに表示された状態になり、その前後のイベントも表示されますので、ログの分析に役立ちます。19)手動配信トップメニューで「手動配信」のタブを押すと、図のようなメニューが表示されます。解像度を選んで配信をスタートさせることができます。この手動配信でしか出来ないような事も特にないので、今となっては何かうまく動かない時のテスト用途以外では使わないと思います。20)その他の管理・設定機能トップメニューの管理タブにある設定項目の使い方は、各機能に紐付くものはそれぞれの説明の中にありますが、ここではそれ以外の機能について説明いたします。ストリームの管理ここで現在Activeなストリームの一覧を見て、既に不要になったものは個々に、あるいは全部のストリームを停止させることができます。ストリームの停止だけであれば視聴画面でも出来ますが、ここは各ストリームの内容と使っているBonDriverの情報を見渡すことができる唯一の画面ですので、ストリームの状況をチェックしながら整理するのに便利です。背景画像と背景色の選択TvRemoteViewer_VBの端末側はブラウザの機能だけで動いており、現在のHTML5やJavascript/JQuery/Ajaxの機能の豊富さ/パフォーマンスの高さを我ながら実感していますが、(つまらない話かもしれませんが)「余白」の部分がブラウザデフォルトの白い背景のままだと、いかにもブラウザの中に間借りしてます、という風にちょっとプアな感じです。ちなみにこれも関係のない話で、最近往年のWinampの機能をHTML5とJavaScriptだけで動かしてしまった、という話もあって、技術的には結構参考になります(しかもやっぱりIEは対象外orz)が、それに対する反応が「良くやった」という声より、単に「ブラウザの枠が邪魔」という感じなのは笑えました。(つまり小さい画面なら小さいなりに、大きければより広さを効果的に使う工夫)も必要で、加えて空白部の装飾も重要ですね。いう事の対策と言えるほどの大した機能ではありませんが、以下のように背景画像や背景色も指定できるようにしました。ここで指定した背景はトップメニューと視聴画面、およびファイル選択画面で有効になります。背景イメージはTvRemoteViewer_VBの\htmlフォルダに入れておけばここのプルダウンに出てきますので、好きなものを選んでください。解除するときは空欄を選択すればよいです。背景色は背景イメージが指定されていない時に有効です。プルダウンでカラー名を選ぶことができます。モノトーン系とか赤系・青系のように分類されていますので、いろいろ試してみてお好みのものを選んでください。(何故ここでカラーチャートのような形にせずカラー名で選ぶようにしたのか?という点については、何となく名前で選ぶ方がどんな色になるのか楽しいんじゃないかと。)21)スカパープレミアムの配信について当システムを使えはスカパープレミアムも、(BonDriverの使えるチューナーをお持ちであれば)ここまでの手順そのままでリモート/モバイル機器やMacで視聴することが可能になります。(上のスライドスイッチにスカパープレミアムのみを表示する"PS"という選択肢が加わりました。)といっても私自身スカパープレミアムの受信環境を持っていませんので、チューナーの設定/RecTask/EDCB(TVRock)の設定等についてあまり語れませんが、その辺は以下のサイトにhttp://dtv.air-nifty.com/sphd/blog_index.htmlとても詳しく説明されていますので、これから導入されるかたはぜひご参照ください。当システムでの利用法もこちらに解説していただきました。ver1.12以降に追加されたパラメーターを解説します。(といっても、本質的に1ヶ所だけ。)共存環境で問題になるのは、以下の2点です。違って1つのインスタンスで両方の処理の共存はできません。SPHDを使いますので、1つのTvRemoteViewer_VBで共存させる場合は、他の放送波(B25)用のRecTaskとは分けて立てる必要があります。(共存ではなくスカパープレミアム専用のTvRemoteViewer_VBを別個に立てる場合は、それぞれで今までの手順通りにRecTaskを(ポート番号を分けて)立てればOKです。Spinel側でスクランブル解除するならRecTask1個でもOKです。Spinel側の解除では衛星チューナー同時使用数が3個以上になると負荷が重くなる弱点がありますが、SpinelではBonDriver_Spinel毎にスクランブル解除をSpinel側に依頼するかしないかの指定ができますので、例えばB1対応のRecTaskが手に入らない/うまく動かないような場合、1つのRecTaskに纏めた上でプレミアム用のBonだけB1処理をSpinelにやってもらうという選択肢もあります。=にて指定する必要があります。(逆の指定にならないようご注意ください。番組表の使い分けEDCB、TVRockとも、地上波/BS/CS110とスカパープレミアムの両方を管理対象にすることができます。(但しTVRockは対象放送波が3波までなので、RDCTを使って地上波とBS/CSを1つのチャンネル空間にまとめる等の工夫が必要です。そもそもプレミアムの利用はEDCBを使う情報が多いかと)といっても共存環境だと放送局が非常に増えますし運用も異なると思いますので(当システムではEDCB、TVRockとも対象は1インスタンスということもあり)TVRockで地上波/BS/CS110、EDCBでスカパープレミアムを分担させるのも1つの方法になります。その場合、現在は特別な設定は必要ありません。それぞれを分けて立てた上で、EDCB、TVRockそれぞれで必要なiniパラメータをセットするだけでOKです。スカパープレミアム用という訳ではないのですが、チャンネル数が増えて観ない/契約していないチャンネルも多くなるということで、当システムの番組表から除外する指定がより有効になると思います。=があり、今回のスカパープレミアム対応を機に、これらに局名ではなくサービスIDで指定することが可能になりました。サービスIDが判らない時はRecTaskのch2ファイルを見ればわかります。カンマで区切られた6番目がサービスIDサービスIDで指定すれば正確なマッチングができますし指定もシンプルになりますので、この辺もご活用いただければと思います。Ver1.48以降では、アニメ好きの方のためにインターネットラジオ「超!A&G+」の再生機能を追加しました。これは文化放送が提供している視聴ソフトと比べて特に違ったことをする訳ではありませんが、インターフェースをTvRemoteViewer_VBに合せた上で2ch実況を流せる点がちょっと便利なところかと思います。使い方は、トップページの「インターネット番組表」を押せば、(従来「地デジ番組表」だったボタン)下の列にA&G+の番組が表示されますので、ここをクリック(タップ)して反転させた後、再度クリック(タップ)すれば視聴画面が起動します。見た目は今までとほぼ同じですが、実際の動画/音声は局側がFlash(flv)で流しているソースをそのまま表示しているだけですので(TvRemoteViewer_VBサーバ側は殆ど何もしていない)、動画停止、シーク等の細かい操作はできず、サイズ変更(ズーム)の他には、もともとのFlashで提供されている音量調節のみが可能です。(音量コントロールの操作域は表示より少し下にずれていますのでご注意ください。ver2.18以降であれば、2017年7月に追加されたHLS版ストリームサービスにも対応し、iPhone/iPadやAndroid。AndroidTV、FireTVなど、ネイティブHLSをサポートする環境であれば図のように、ほぼ通常の視聴画面と同じような操作感でA&G+を実況付きで視聴できるようになりました。インターネット番組表からHLS版、Flash版を選ぶことができるようになり、またショートカットを表示させておけば、トップ画面や視聴画面、またリモコンからも、A&G+画面を起動できます。HLS版はFlash版と比べて1分前後の遅延はありますがより広いプラットホームをサポートしますし、Flashの状況から言っても今後はこちらが主流になっていくと思います。(遅延はHLSの問題というより、本来キャッチアップの得意なEdgeでも同じ遅延が出ることから考えるとストリームの生成に時間がかかっているだけで、機材に課題があるのではないかと思います。)但し、このHLSストリームはCORSを許容していないため、ネイティブプレーヤーでしか再生できず、hls.jsでは視聴できません。ChromeCastもHLSは正確にはエミュレーションなので、視聴サポートしません。(AndroidTVはChmecast互換でありつつその下にあるAndroidの機能で視聴できます。)Edge以外のWindows、Linuxなどでは、ネイティブHLSをサポートしないため通常はhls.jsを使うと思いますが、一応Flashも動きますので、ここではFlash版を選択してください。(Flash版でも視聴できない時は、Flashを導入しブラウザでFlashを許可する、という設定をおこなってください。)ショートカットからの起動の場合、ある程度どちらで再生するかは自動判別するようになっています。以上のようなラジオ視聴機能は他とちょっと勝手の違った面はありますが、割と気軽に使える機能かと思います。(これ以外のインターネットラジオは2ch実況スレがないためここで使う意味があまりなさそうで、対応する予定は今のところありませんが。).以上で一通りの操作手順の解説は終わりです。視聴画面についてはプラットホームによって微妙に使い勝手が違いますので、まずは使って慣れるのが早道だと思います。.3.外部から家庭内LANにアクセスして視聴するためにDynamicDNSとVPNを設定するさて、1.の設定が終わっていれば、家庭内のLAN環境であればスマホ/タブレットでもPCでも、同じ手順でストリームを視聴できるようになります。これを家の外から使うためには・外部インターネットから家のLANに"セキュア"な「通り道」を作って、"192.168.*.*"のような「家庭内プライベートアドレス」へのアクセスをそちらの通り道に誘導する仕組み(VPN)・その「通り道」を確かに家のルーターに向けて張るために、家のルーターに割り振られた(しょっちゅう変化する)「グローバルIPアドレス」にドメイン名でアクセスできるようにする登録サービス(DynamicDNS)以上が必要になります。これらを準備しておけば、外からでも家のルーターに与えられたドメイン名を使ってアクセスして、ID&パスワードで(内部LANと)「接続」すれば、あとは家の中のLANに接続したのと同じ状態になりますので、全く同じ手順でストリーム視聴ができるようになります。(違うのは回線の太さだけですので、無理のないビットレート(=解像度)指定などをおこなってください。イントラネットからアクセスする際は、ご家庭のIPアドレス体系と重なっていないことをご確認ください。)なお企業や一部ホテルのイントラネットからアクセスする場合、セキュリティポリシー上PPTPやL2TPを外にも出さない設定になっていて繋がらない事があります。3)でSSTPを併用する方法もあります。一点つまらない事ですが重要な話として、VPNを設定すると自宅から2chに書き込みができない、という思わぬ問題が出るようです。これはリンクのようなルーターのパケットフィルタ設定で回避できますので、2chを使う方はVPN設定時に一緒にやっておけば良いと思います。設定手順セットアップのフローは本来、以下のようになります。3)のSoftEtherの利用をお勧めします。SoftEtherでも内部的には下の図と同じような仕組みでVPNを実現しているのですが、セットアップは統合的かつ簡単ですし、何よりセキュリティに優れたL2TPやIPSecがデフォルトで使えます。(iOS環境ではそれらを使わないとVPNは実現できません。3)に進んでください。以下で説明している手順はやや古いものですが、VPNとは何ぞや、の理解には役立つと思いますので、残しておきます。※特にiOS10からPPTPが使えなくなっていますので、iPhoneやiPadをリモートで使いたい場合、PPTPしか使えないタイプのBuffaloルータではVPN接続はできません。WindowsVPNサーバ機能もセットアップした直後はPPTPなので、L2TPやIPSecに切り替える必要がありますが、ちょっと面倒です。いう場合SoftEtherならデフォルトでL2TPが使えますので、そちらの利用を強くお勧めします。赤枠内をクリックすると手順の説明にジャンプします。(外部サイトを含みます。DynamicDNS(DDNS)とVPNの設定は、それぞれルーターの機能が利用できるかどうかによって少しフローが異なります。(上図)ただやることの大まかな流れは同じですので、一例として以下のリンクをご紹介いたします。大体の雰囲気を見ていただければ。自分で書かずに済みません(^^ゞリンク先ではDDNSのIPアドレス更新機能、VPN(PPTP)機能とも、ルーターの機能を使える前提で書いてあります。http://blog.ap.teacup.com/applet/tomba/20111020/archiveリンク先ではVNCによるPCのリモート操作とTVRock番組表へのアクセスも説明されていますが、いずれもTvRemoteViewer_VBを使う上でズバリ役立つと思いますので、DDNSとVPNの設定が完了したら、そちらも試してみられると良いと思います。(例えばTvRemoteViewer_VBが何かの理由でハングしたと思われる場合は、VNCを使ってTvRemoteViewer_VBの終了/再起動の操作を外部からおこなうことができます。)ただ一点残念なのは、リンク先で紹介されているDynamicDNSサービスのDynDNSは、古くから良く使われていて多くのルーターがDDNSサポートしている無料サービスだったのですが、現在有料(年25ドル)になってしまいました。それを置き換える無料DynamicDNSサービスを2でご説明します。無料DynamicDNSサービスについては以下のリンクに紹介されているものが使いやすいと思いますし、特に[mydns]が、このサイト管理者自身で申込み~導入の手順を丁寧に解説しており、DiCEの利用法もあわせてワンストップの解説になっていますので判り易く、お勧めできると思います。(登録時の自分のグローバルアドレスはこの辺のサイトで判ります。)DynamicDNSサービスは、ご自宅のルーターのグローバルIPアドレスがころころ変わっていくのを自動的に検出してくれる訳ではなく、自分のグローバルIPアドレスが変わるたびに「自動的にIPアドレス更新登録」をおこなうクライアント機能が必要になります。これをルーターがおこなうのがルーターDDNS機能で、またWindowsのプログラムとしておこなうのがDiCEです。ルーターDDNS機能がサポートするDynamicDNS業者は極めて限られていますし、自社の運営するDDNSに誘導しようとしますので、通常はDiCEを使ってください。DiCEを使うPCではWindowsのスタートアップに登録するのが良いと思います。(x86)\Sarad\DiCE\dice.exe」を登録すれば簡単です。DiCEは負荷は無きに等しいのですが、たま~に空振りしたり落ちていることがあります。いざ外から使おうとした時にVPN繋がらない、となると困りますが、DiCEは別に1台である必要はありません。家で(Atomでも)常に動いている複数のPCがあれば、2,3台で動かしておいても構いません。このようなプログラムを使って落ちたら再起動させることで、信頼性を上げるのも良いと思います。VPNについても、ルーターにその機能がない場合は、それに代わってWindowsの機能を使ってVPNを構築する手順をご紹介します。これも大して複雑な設定ではありませんので、リンクのようなガイドを参考にすれば数十分でセットアップできると思います。(ルーター・ポートマッピングのLAN側ホストには、いずれもPPTPサーバ役のローカルIPアドレスを設定します。VPN設定のトラブルシューティングにはこの辺の記事も参考になります。VPNを使う時のコツは、上記トラブルシューティング記事にあるように「IPアドレス割り当て範囲」を明示的に指定することでしょうか。PCではDHCPとかDNSの役割は設定されていませんので、一見VPNが繋がったように見えても前者の明示がなければ適切なIPアドレスが取得できず何もアクセスできない、後者がONだと家のLAN内にしか繋がらなくなります。VPNもL2TP/IPSecに変更するための追加手順が必要です。VPNサーバ役のWindowsマシンはTvRemoteViewer_VBの動いているサーバでなくても構いません。(もちろん全て1台で賄ってもかまいません。このマシンもIPアドレスは固定する必要があります。VPNアクセスしたい時に動いていなければならないので、常時稼働しているPCが望ましいです。Windowsの機能を使う方法は上記手順にある通り、外部インターネットにVPNサーバ役PCの特定ポートを公開することになります。結局「家のルーター」に対して、外部から特定ポート宛のVPNセッションがリクエストされると、ルーターにその機能があればルーターが、機能がなければルーターはそれをそのままVPNサーバ用PCに転送してそちらが、まずID/パスワードをチェックし、OKであればそことリモートの端末との間でセキュアな(暗号化された)通り道が作られて、そこを通して通常のプライベートネットワークの通信が行なわれる状態になるわけです。WindowsのVPN機能がルーターのVPN機能に比べて劣るのは以下のような点ですが、とはいえ、当面の代替としては十分に使えると思います。・ポートを限定するとはいえ、VPNサーバ役PCの一部を外に公開するのはルーターに比べるといくらかセキュリティ面が劣る。・クライアント系WindowsのVPN機能だと同時に1端末しか繋げない。リモート視聴の便利さが気に入り、多用するようになった時には改めてVPN機能付きのルーターを購入検討するのも良いと思います。(但し下にあるSoftEtherのほうが費用は掛からず高性能なので、よりお勧めです。)VPN機能付きのルーターを使いたいけど今のルーターは光/ADSLのプロバイダから提供されているから簡単に交換できない、と思われるかもしれませんが、別にそれは普通の環境です。いう場合はプロバイダ提供のルーターと購入するルーターを2段にして、後者(のWAN側)を固定アドレスにして前者からDMZとして定義し、全てのLAN側機器は新しいルーターの下に繋ぐ形に変えれば良いです。(DHCPや無線LANホストの役目も新しいルーターに移行すればOK。この辺の図を参考にしてください。)そうすれば2段目のルーターが実質唯一のルーターとしてフルに新しい機能を使えるようになります。それぞれの手順を参考にしてください。(冒頭にも書きましたが、iOSではiOS9以降PPTP接続は使えませんので、ここではなく3)で説明するSoftEtherの利用をお勧めします。L2TP対応ルータを使う場合、iOS側設定はSoftEtherパートの説明を参考にしてください。)さてVPNサーバを使う時はAndroidであればDNS探索ドメインを設定しない。Windows端末であれば「ゲートウェイを使用する」をチェックする。Macであれば「すべてのトラフィックをVPN経由で送信」をチェックする。いう設定にしてください。ここは以前のガイドと逆になりましたので、ご注意ください逆の設定だとインターネット接続は速くなりますが、TvRemoteViewerにうまく繋がらないことがあります。(その辺を自己責任で試せる方は逆の設定にしても良いのですが、うまく動くかどうかはその時のインターネット環境に依存するようです。解像度とビットレートの関係について主に家庭内で視聴する場合は高めの解像度で問題はありませんが、リモート視聴を予定さていれる方は、家からプロバイダへのアップストリームの帯域、および利用する端末がそれぞれの場所で使える帯域をよく考えて、余り無理のない解像度を選んでください。各解像度のモードでストリームあたりに必要な帯域は以下の通りです。アップストリームについては例えば、10Mbpsのアップリンク帯域がある場合は解像度[1280x720]でも3本のストリームを同時配信できますが、ADSLのように数百Kbpsのアップリンク帯域しかない場合は、見合った解像度をデフォルトに設定しておく方が無難です。うっかり能力を超えた解像度に気付かずに動画開始しようとすると、画面が妙に重くなったり、バッファリング中の待ち状態が延々と回転するだけの状態になります。余裕がないとシークや頭出しのレスポンスが悪化する点にもご注意ください。昨今のキャリアのモバイル環境では20~30Mbpsの速度が出る筈なので能力的にはフルHDでも難なくこなしそうな気がするのですが、実際やってみると動画がなかなかスタートしない事があります。モバイル回線は(特に通信開始時に)速度が不安定になりがちなのが原因なので、モバイルでは解像度は必要十分な程度に落とすほうがストレスなく楽しめると思いまます。(→TV視聴時、ファイル再生時)スマホでちょっとした休憩時間に見るぐらいならなら[320x180]の解像度もあれば十分だと思いますし、仮に回線の状態が悪くても最も軽い[256x144L]なら更に負荷も軽くなります。音声のみの[0x0sound]というモードを選択すれば、絵は出ませんが極めて低いビットレート環境でとりあえず音声は聴けます。(但し音のみだとスマホやタブレットでは、画面放置したのと同じく1分程度で画面ロックがかかりますので、別記事にある画面ロック状態でも音声が流れる機能を併せて活用してください。)このような低ビットレート設定は通信条件を気にせず使えるほか、モバイル通信の通信量規制に引っかかった場合にも有用です。(何を隠そう、私自身規制によく引っかかったのが[256x144L]モードを作った理由です。モバイル通信を使いまくってこれに引っかかった場合でも、この辺なら100kbps程度の速度でも何とか使えますので、制限が解除されるまでの救済策になります。)不安定な通信環境ではバッファが追い付かず再生が止まる事がありますが、この辺の操作もご参考に。昨今のスマホの買い替え/新規契約の際には大容量プランかWiMAXの併用が十分リーズナブルな値段になったので、その環境が得られる人ならWiFiスポットすら(うっかり繋がると遅くなるので)邪魔でしかないような大容量モバイル通信が常時使えるようになりました。同時に格安SIMも最近大流行で、そちらは時間帯によっては通信規制なみの低速になりますので、低ビットレートモードが役立つシーンもまた増えていると思います。別の問題として、自宅側プロバイダの帯域規制の問題は未だあります。(リンク先を最初に開くときにセキュリティ警告がなんちゃらというフィッシングサイトに飛ばされることがありますが、その際は無視して一度閉じ、開き直してください。)ちょっと前はアップストリームに2,3日あたり15GBのようなしきい値があり、それを越えると極端に遅くなる、というプロバイが結構ありました。ここ数年でそういった規制は緩和されつつありますが、代わりに光ユーザーが急増しているせいか、混雑時に予告も無く極端に遅くなる、という現象が結構報告されています。「光回線付きマンション」とか「CATVとセットのブロードバンド」などでは、プロバイダ側もカタログスペック優先なのか結構バンクボーンの貧弱なものがあるようです。モバイル環境でインターネット接続は快適なのになぜか家と繋ぐと遅い、という現象が頻発するようであれば、自宅の通信環境を見直す良いタイミングかもしれません。現在は有利な乗り換えプランも数多くあり、わざわざ備え付けのものや昔馴染みのプロバイダで我慢しなくても初期費用もたかが知れていますので、検討しても損はないと思います。以上のようにどの辺の解像度を常用するかは、快適なリモート視聴環境にしていくために結構重要ですので、システムが完成したらよく視聴しそうなロケーションでいろいろ試してみてください。利用して1)より強力なVPN環境を作成する。VPNを使うことによって、1)でご説明したものを、より強力な形で全て置き換えることができます。非常に高機能であるため、初めて自宅とのVPNを構築される方にとっては(まずマニュアルの用語を理解するところからして)少々取っ付きにくいかもしれません。手順通り進めて行けば実際は1)よりシンプルかつ確実ですので、これから導入される方には迷うことなくこちらをお勧めします。具体的に1)の方法と比べて、以下のような利点があります。(もちろん回線能力でストリーミングの絶対性能は縛られますのでそこを変えることはできませんが。VPNを構築するのに必要な機能はパッケージ化されています。デフォルトでPPTPよりセキュリティの高いL2TPを利用できます。L2TPを利用するため、最初にあるような「2ch書き込みのためのパケットフィルタリング」のような設定も不要です。DDNSを別途契約する必要は本来ありません。導入の際に自宅のドメイン名を設定することができ、それをそのまま利用できるようにはなっています。(実際はプロジェクトが運営するサーバがDDNS機能を提供しており、設定時に自動的に接続・登録され、更新もDiCE相当の機能で自動化されています。)但し、最近になってこのSoftEtherが標準で提供しているDDNS機能ではうまく接続できないケースが増えてきました。手元の機種との相性の問題かもしれないので濡れ衣の可能性はあるのですが、SoftEter標準のDDNSサーバが動いていないことも想定して、DDNSは1)でご紹介したmydns+DiCEも併用できるようにしておくのがお勧めです。しておけば、どちらのアドレスでも自宅にVPNが張れるようになりますので、「なぜか今日はVPN接続ができない!」という現象に悩むことも無く、切り替えて使えるようになります。Server版でない限り)同時1クライアントでしか利用できませんが、その制限がありません。ルーターVPNを使えば複数クライアントの同時利用はできますが、数千円台のルーターでは性能が低く、そこそこの回線能力がある場合ボトルネックになります。Serverとして使いますので、処理能力は遥かに高くなります。Server役のWindowsマシンはTvRemoteViewer_VBサーバと同じでも構いません。負荷はPCにとって大したものではないので、余っているノートPC等があれば、VPNサーバとして別立てにするのもお勧めです。IPアドレスは固定する必要があります。リンク先でも補足していますが、SoftEther用PCに割り振る固定アドレスは、ルータがDHCPで割り振るアドレス範囲内(192.168.a.2~192.168.a.32)で他と重なりそうにないものにしてください。固定アドレスを明示的に登録できるルータもありますので、知識のある方はその設定を使っても良いです。詳しいマニュアルも公開されています。https://ja.softether.org/4-docs/1-manualが、豊富な機能を詳しく説明したマニュアルですので、こういう単機能の利用のためには取っ付きにくいかもしれません。あたりにまとめてありますが、これは端折り過ぎな気がします。)そこでこういうケースでの導入事例として、こちらをご紹介します。読みながら導入してみて、判らないところがあればマニュアルの各項目を参照する形が良いと思います。iOS以外のWindowsクライアントの接続設定はSoftEtherページのこちらに、またAndroidはここ、Macはここにあります。手順の中の説明と重複するかもしれませんが、iOS系であれば、「全ての信号を送信」の項目をONにする。AndroidであればDNS探索ドメインを設定しない。Windows端末であれば「ゲートウェイを使用する」をチェックする。Macであれば「すべてのトラフィックをVPN経由で送信」をチェックする。いう点もよくご注意ください。理由は3‐1)と同様です。これでSoftEtherの設定は完了ですが、上の図でも説明した通り、DDNSとして別途mydns等に申込み、DiCEをそれに合わせて導入しておくのがお勧めです。端末側はVPN構成はsoftether.netと全く同じ設定でサーバだけmydns用にしたものを追加してください。これでsoftether.netでうまく繋がらない時はいつでもmydns.jpに切り替えることができるようになります。私のところではWindows10の環境でなかなかうまく動かなかった、という事がありました。Windows7でSoftEtherを導入した際は上記手順だけで普通に動いたのですが、Windows10にアップグレード後なぜか外から入れなくなってしまいました。・WindowsファイアーウォールでSoftEther/IPSecで使うポートを明示的に開放する。この対策で問題無く使えるようになりました。トラバーサル機能を使うのでルータ/FWのポート開けは不要」というようなことが書いてある一方、導入事例では「やはりポートを開ける」という情報が圧倒的に多く、実際やってみるまで理解できていなかったことです。Azure中継サービスを併用する場合は穴穿け不要(参考)、しかしスマホやタブからL2TPで接続する場合は設定すること。」という事になります。孔が開いてないはずのルータ・FWを越えてしまうというのはかつてSoftEtherが大企業のシステム管理者の頭を抱えさせた特徴なのですが、元々のSoftEtherはPCを相対させたリモートブリッジのような使い方が主に想定されていた気がしますので、その場合はこの特性が効いてくるんだろうと思います。汎用的なVPNとして使うにはL2TPのようなプロトコルサポートも必要ということで、ルーターの定義も必要になるのでしょう。Winノート/タブでの利用が前提ならSSTPを使ったルータ・FW越えも可能だと思いますので、学内や社員寮などでそういった環境に鯖を置かざるを得ない方は(管理者に断りの上で)試してみるのも良いかもしれません。4.使い勝手の向上とストリーム起動の安定化のためにSpinelを利用するさてTvRemoteViewer_VBを実際に使っていくうちに、これを使う上でSpinelを併用するのが有効だと判りましたので、ここでお勧めするとともに導入ツールをご紹介したいと思います。何より第一に、Spinelを経由するとTvRemoteViewerの動作がより安定します。具体的にはTVを視聴開始したりチャンネルを切替える時にたまに起動に失敗するうケースがあるのですが、Spinelを経由するだけでそのエラーが滅多に起きなくなります。理由は未だ良くわかっておらず動作のタイミングなどの相性が良いから、としか言えないのですが、、他にデメリットがある訳でもないのでSpinelの導入はぜひお勧めしたいと思いす。(但し現在はSpinelと類似した機能としてBonDriverProxyExもよく使われるようになっています。BonDriverProxyExもこの動作安定化に役立つかどうか検証したことがないので今のところ何とも言えないのですが、予想では同じように安定化の効果があるとと思います。)またリモート視聴していると家のPCの動作がよく判らないので、いつの間にかEDCBなどが予約録画の実行にチューナーを掴もうとしたところリモート視聴で同じBonDriverを掴んでいたため録画に失敗してしまう、という事が起きやすくなります。その点もSpinelを使っているとチューナーの優先利用権をEDCB等に設定できるため、録画失敗を防ぐことができます。その辺もSpinelをお勧めする理由になります。他にSpinelの関連ソフトとして、地上波・衛星用に分かれているとBonDriverを1個にまとめて仮想的な3波チューナーにするRDCTというソフトもあります。これは特に初期のTvRemoteVIewerでは「視聴中のチャンネル切替え」が同じBonDriverの中でしか出来ない制約があったため、いつでも(3波の)どのチャンネルに切り替えできる便利ツールとしてお勧めしていました。現在のバージョンではこの制約も取り除かれましたので、RDCT併用のメリットは殆ど無くなっています。スティックPCのようなATOMベースのマシンではRDCTの負荷が重くなりチャンネルが思うように選択できなくなる、という問題が出ますので、RDCTは利用しないようにしてください。いう訳で現在RDCTの利用はお勧めしていませんが、過去の経緯でご紹介を残しておきます。(TVRockのように利用できるチューナー数に上限がある場合、RDCTの併用は未だ有効です)。主要なメリットを以下にまとめます。Spinelを使うメリット・TvRemoteViewer_VB配信中に同じBonDriverを使って録画タスクが開始しようとすると、Spinelがなければ録画タスクが該当BonDriverを掴めないため録画失敗する。リモート環境ではそのような事態を十分把握できない。・更に配信タスクがハングした時に管理画面で「配信を停止」してもRecTaskはBonDriverを掴みっぱなしになる事があり、Spinelで優先権を設定していなければ録画タスクは失敗する事になる。・Spinelを経由して録画タスクに優先権が設定されていれば、先に使っていたストリームはその時点で停止するが、録画タスクに影響はない。・既に配信で使っているBonDriverを別の配信でうっかり重複使用してもエラーにならない。1個のチューナーで何種類かの解像度での並行配信も可能である。RDCTを使うメリット・地上波とBS/CSのBonDriverを束ねることによって、視聴画面から直接別のチャンネルに行きたい時に、地上波/BSCSの区別なく移動できるのが便利。Spinelの説明と導入方法Spinelの概要は以前の記事でまとめましたので、「何ぞや?」という方はこちらをご参照ください。以下の絵はそこからの抜粋です。これからSpinelを導入される方はこちらを見ながら導入されると良いと思います。リンクの記事にあるSpinel定義体はPT3やQ3PE、Bulldogなども定義した最新版になっています。これはドングル用の解説ですが、ある程度汎用性を持たせてあります。(「その他のプログラムの導入」の前、PX-S1UDやPX-BCUDに関するものを除いたSpineの導入とBonDriverの配置だけ実施すればOKです。自動生成できますので、作業不要です。)なおSpinelを導入したら、他のチューナーを使うアプリケーションでもBonDriver_Spinelを使うように設定変更しないとあまり意味がありません。(設定変更しなくても使い続けられるのですが、共有や同時使用時優先権の機能が効きませんので、Spinelを使うメリットがないです。一括して生成できます。TVRockの場合はDTune.batを再度動かして、BonDriverをそれぞれ地上波・衛星対応のBonDriver_Spinelに書き換えれば良いです。添付のreadmeで説明してあります。章の冒頭に書いたように最新バージョンのTvRemoteViewerではRDCTの利用は不要で、特にローエンドのPCで利用すべきではありません。ご紹介記事として残しておきます。RDCT(BonDriver_RDCT)は、異種のBonDriverを組み合わせて単一イメージで利用できるようにする一種のラッパーです。RDCTは同種のチューナーを複数組み合わせて中で順番に割り振る、というような使い方もできるのですが、ここではあくまで「地上波チューナーと衛星チューナーを組み合わせて仮想的な3波チューナーにする」ツールとして使います。使っている限りは極めて安定しているのですが)普通のBonDriverを配下に置くとやや不可解な動作が出てきます。ここでは1)にあるSpinel環境由来のメリットとの相乗効果を併せ、RDCTとBonDriver_Spinelの併せ技をご紹介したいと思います。.4)BonDriver_Spinel自動生成プログラムを使ってTvRemoteViewer_VB(用RecTask環境)にBonDriver_Spinelを導入する。Spinelさえ動いていればBonDriver_Spinelはコピペしながら決められたルールで作っていけば良いのですが、最も面倒で間違いも起こしやすい所だと思いますし、構成変更時のメンテナンス性も悪いです。この辺がSpinelのとっつきにくい所とは前から感じていましたので、BonDriver_Spinelの自動生成プログラムを前から考えており、実際にその部分は完成していました。等についても導入補助できるプログラムに仕上げようと、のんびり作成中だったのですが。ここでSpinelがTvRemoteViewerの安定動作に有用ということで、TvRemoteViewer_VBの導入支援用としてBonDriver_Spinelに関する機能だけ切り出したものを公開したいと思います。これを使えばお手持ちのチューナーを組み合わせて仮想化したBonDriverをほぼ自動生成できますので、それをRecTaskの環境に入れるだけでTvRemoteViewer_VBから使えるようになります。以下で利用手順をご説明いたします。XP/Vista/7/8.xSpinelが(何れかのPCに)導入され動いていること。2010(x86)のランタイムが必要ですので、まだ導入されていない方はリンク先からダウンロード&導入してください。言わずもがなですが、BonDriver_Spinelを動かす各PCで、以下のFrameworkが必要です。4.xとは別物ですので、こちらも忘れず導入してください。4.xの時と同じバッチでチェックできます。1)がインストール済みですと出てくればOKです。Update-重要な更新プログラム」から導入できます。個別に入れる時は以下のリンクから順に、お使いのPCに合ったものを導入してください。2プログラムのダウンロードと解凍このプログラムはSpinelを動かしているPC上で実行してください。ネットワーク上にある別のPCのSpinelフォルダを参照しても、正しい宛先アドレスが判らないため動作しません。以下が導入支援プログラムの本体になります。zipファイルをダウンロードし、適切な実行フォルダに解凍してください。「GenBonSpr.zip」をダウンロードちなみにこのプログラムを別の場所にコピーする場合は、このフォルダ構造ごとコピーしてください。(初期状態でサブフォルダの中にあるファイルは、プログラムの実行に必須です。)このプログラムはネットワークの共有フォルダからでも実行できますし、またUSBメモリからでも正しく動作します。複数のPCでSpinelが動いている時は、そうやって共有しながら順番に動かしていけば各Spinel用のBonが一括して作れますし、各種取り込みも1回で済みます。ダブルクリックすれば、以下の初期画面になります。赤枠内をそれぞれ指定してください。(「RDCTのコンボチューナー化」のチェックは現在不要です。)リンクをクリックすればブラウザで、各プログラムをダウンロードするページが表示されますので、適切にダウンロードし、ダウンロードが終わったら(圧縮ファイルのままで構いませんので)それを指定してください。選択ボタンを押せばファイル/フォルダの選択ダイアログが表示されますし、ファイル/フォルダを直接指定欄にドラッグ&ドロップしても構いません。指定が終わったら[次へ]を押してください。Spinel環境を解析した結果のBonDriver一覧が表示されます。ここで特に作業はありません。リストに表示された順に付番されたBopnDriver_Spinelが作成されることになりますので、もし順番を変えたければここでリストを入れ替えてください。指定が終わったら「次へ」を押してください。この画面ではch2ファイル生成に使うプリセットファイル(BS/CS)と、地上波ch2ファイルを参照する既存のTVTestフォルダを指定します。プリセットファイルは特にこだわりが無ければ、「ダウンロードのリンク」からダウンロードしたものを指定してください。これは最新の編成になっている筈ですし(TvRemoteViewer_VBの動作に悪影響のある)難視聴用チャンネルも除いてあります。定義次第で)違ってくるのですが、ch2ファイルの生成時にできるだけその辺の特性に対応させています。(従ってch2ファイルの内容は個別に違うことがあります。)地上波については、既にお使いのTVTestがあればそちらを指定してください。「テンポラリなTVTestを使ってチャンネルスキャンを実施する」を指定すればここでスキャンすることもできます。その場合次の画面になります。ここではスキャン用TVTestのあるフォルダ(または新規にダウンロードした場合はそのzipファイル)を指定して、地上波チャンネルスキャン用最小構成のTVtestを起動します。「スキャンの開始」ボタンを押せばブラウザでスキャン手順が表示されますので、その手順に従って、同時に立ちあがったTVtestの初期画面を操作してください。手順通り進めれば地上波チャンネルのスキャンが動き出しますので、終了まで数分待ってください。放送していない局はスキャンできませんので、この作業をやるときはできるだけ(深夜のような放送休止のある時間帯を避けて)どの局も放送している時間帯にしてください。漏れがあると後でやり直しが発生します。スキャンが終わったら「OK」を押してその後TVTestを終了させれば、自動的にch2ファイルが取り込まれます。全て指定が終わったら「生成」を押してください。BonDriver_Spinelと対応するch2ファイルの生成が始まり、メッセージ欄に進捗が表示されます。(6)生成完了したら以下の画面になります。ここにある通り、生成したBonDriver_Spinel/RDCTは以下の場所に保管されます。視聴用に使うセットです。幾つでも共有でき、家庭内LANの何処からでも視聴できます。TVRockやEDCBなど録画用です。ここの同じBonDriverを2箇所以上で使わないようにしてください。(片方の利用が弾かれます。上記Watchと同じですが、Spinelと同じコンピューター(OS)上だけで使えます。pipeを使いますので負荷が軽いです。Rec_Local上記Recと同じですが、Spinelと同じコンピューター(OS)上だけで使えます。負荷が軽いですのでSpinelと同じコンピューター(OS)でTVRockやEDCBを使う場合はこちらを使ってください。\BonSpinel64上記セットの64bit版です。通常の32bit版TVTest/RecTaskでは使えません。使う必要はありませんが、64bit版TVTestや64bit版EDCBを導入する時はこちらを使ってください。中身を丸ごとコピーしてください。再起動すれば、BonDriver_Spinelを使う環境が完成します。.終わりに機能的にはかなりリッチなものになりましたが、導入が面倒なのは自覚していますので、後日作成したアップデートプログラムを拡張して、導入支援プログラムも作成したいと思っています。そもそも外部プログラムとの連携が多いので、それほど単純ではありません。体力がある時にでも仕上げようと思っています。v2.27http://vladi.cocolog-nifty.com/blog/2014/10/iphoneandroidpc.html#download1)VCEEncに対応したロジック、およびエンコードオプションファイルを追加しました。サーバ側が対応した段階でrigaya氏制作のVCEEncCを使って、AMDグラボおよびAPUのH/WエンコーダVCEが利用できるようになります。2)視聴画面の「ストリーム終了」ボタンの位置を「トップメニュー」の横に変更しました。v.2.26HLS_option定義体の更新。CPUで、QSVを使って長時間連続して(特にスポーツ中継等を)ストリーミングしていると画質が大きく劣化する問題が起きていました。原因はvbrで目標ビットレートを指定している場合、動きの多いシーンでビットレート維持のために下げた画質(上げたqp値)がその後も維持されてしまうのが原因です。最新MediaSDKのバグなので、qp-max設定でqp値が適正値内に収まるようにしました。2)4K配信(3840x2160)モードを追加しました。(H.265HEVCはまだ再生環境が限られるため、H.264AVCを使用。)ただし標準(SWエンコード)ではCPUが振り切れるので、QSVかNVEncを使用するのが前提です。QSV,NVEncとも4KエンコードをサポートするH/W世代であることが前提です。再生側も4K再生をサポートしている必要があります。iOS/Android/FireOS/Chromecastは世代による。v.2.25QSVとNVEncのストリームオプションを見直し、DualMono(NHK定時ニュースなど)や5.1ch(WOWOWなど)の音源だとストリーム開始できなかったり、再生できいストリームになってしまう現象が頻発したいた現象に対策しました。標準(ffmpeg利用時は今までもそうだったのですが)5.1chの音源はStereo音声になります。v.2.2411)視聴中のチャンネル切替え時(特にファイル再生からTV視聴に移行する際)ストリームは再起動するものページの切り替えに失敗し、トップページに戻ってしまう現象が頻発していたが、問題をFIXした。2)視聴画面から直接別のチャンネルに切り替える際、エンコーダ設定や解像度の設定がうまく引き継がないバグを修正。電源制御型USBハブでUSBチューナーの見失い状態を解消する。バージョンアップ支援ツールを公開しました(2015.10.02)コメント「TvRemoteFiles_222.zip」ファイルが解凍できませんでした。再度アップロードをお願いします。18時45分ViewTV[1-8].htmlのvideoタグなのですが,object-fit:fillではなくてobject-fit:containでないと画面が延びてしまうようです。12時39分TVRemoteViewer_VBの愛好者です。パソコンを買い換えたため、再度TVRemoteViewer_VBを導入しました。このHPを熟読して間違いはないと思いますが、いざ、起動してパソコン上やiphone上でテレビを閲覧しようとすると、一番小さい解像度でも画像や音声が乱れてしまいます。録画したTSファイルは、問題なく再生されます。ご指導いただけるとありがたいです。14時47分ありがたく使わせていただいています。fillのせいで当方の21:9のスクリーンですと横長になってしまいます。削除すると元通りになりました。感謝さん、ご指摘の通りで、過去にはfileフォルダがなければ自動作成されていたのですが、現在サーバ側セキュりティ機能に引っかかって自動では作成されなくなっていましたので、手動で作成するよう手順に加えておきました。TvRemoteFilesの配布パッケージ自体に空のfileフォルダを入れておきましたので、通常は初期設定のコピー時に作成されるようになるはずです。02時32分こんにちは。インストールしました。このようなソフトを開発してくださり感謝しています。ところで、TvRemoteViewer_VB\htmlの下に、fileフォルダを作成する手順が抜けていないでしょうか?つまり、TvRemoteViewer_VB\html\fileフォルダです。手動で作成しないと、ログにエラーが記録されてしまいます。ちなみに、fileフォルダの下にplmon.jsontimer.jsonが保存されていました。14時23分トップ画面や視聴画面が、このWEBページにあるような立派な感じでなく、PC、スマホ共に、白地に黒い文字やプルダウンになっております。10時00分うまく動きませんので質問させてください。windows10x64、PX_W3U3_V2、RecTaskでTvRemoteViewer_VB使用してます。コンボチューナ目的でSpinel導入、GenBonSprでコンボチューナ作成したのですが、TvRemoteViewer_VBでコンボチューナ使用すると数秒ほどで「配信されていません」となります。サーバ側画面ではRecTaskのバーが5秒ほど表示後、消えてます。TvRemoteのログだと該当するのがこのあたりでしょうか?チャンネル切り替えに失敗したのでUDPアプリを終了しますNo.=1UDPの配信チャンネル切り替えに失敗しましたNo.=1UDPの配信チャンネルが切り替わるまで待機しています←このログがしばらく続いた後上のログになります。試しに上記エラー後、サーバ側TvRemoteViewer_VBの設定画面からコンボチューナのBonDriver選択してstartボタンを押すと、止まることなくクライアント側に映像が配信されますし、その後のチャンネル変更もクライアント側から出来ますが、一度配信を終わるとまた同じエラーです。クライアント側からRectaskの操作が上手くできてないのか??と思いサーバ側ファイアウォール無効にしても同じでした。動きそうなんですが問題点お教えください。11時47分かぜさん、ご返答遅くなってすみません。EDCBのEpgTimerの話であれば、普通にBonDriverフォルダにRDCT化されたbonを(サブフォルダごと)入れてチャンネルスキャンすれば3波チューナーとして使えるようになると思います。同時使用したい時は設定でBon毎のチューナー数を2とすれば2タスクで同時利用できると思います。地上波と衛星の組み合わせ時のみ同時使用できる、というような設定はないと思いますので、そこは手動で割り振り要になりますが。17時47分すみません質問させてください。素早い対応ありがとうございました。無事100%に戻すことができました。10時25分beneさん、特にAndroid端末はRangeバーの実装に問題があって、そういった操作がやりづらいと丁度気になっていたところでしたので、以下の対策をおこないました。ver1.69視聴画面のズームバー、遅延時間バーに±ボタンを付け、一部の端末でRANGEバーの細かい操作がしにくい状況に対策しました。Andoridの場合、±ボタンを大さっぱに押すとすぐ近くのRangeバーが反応してしまい、一気に最小値、最大値になってしまうことがあります。できるだけ人差し指で、ちょっとRangeバーから離れた側を正確に押すように気を付けてください。拡大して操作した方がストレスにならないと思います。03時21分ZoomBarを使用しているのですがうまくスライドできず100%に戻すことができません。(今は109%位を行ったり来たり)100%に設定を戻すことは可能でしょうか。100%に戻すボタンなどがあると助かります。22時06分yokoさん、2chDTV板のロケフリスレでも過去に「40003だけ穿けてもうまくいかない」件は出ていたと思いますが、私もそれ以上のことは判りません。よって全くアドバイスはできないのですが、ご自身で試行錯誤されるのであれば、ffmpegのUDPポート42424を開けてみるとか、標準の80,8080なども開けてみたらどうだろう、ぐらいでしょうか。アプリケーション自体は常にポート40003を指定してアクセスしているので、ブラウザ側が何かデフォルトでアクセスしているポートがあるのかも知れないと思っていますが、全くテストしていませんので。ちなみにそもそもここでVPNを推奨しているのは構築や利用の安定性が一番なのですが、その他に個人的な考えとして一応公式に出ているリモート視聴の規格に「暗号化していること」というのがあるので、いろいろ他にはありますが少なくとも暗号化しない状態でネットから見えるような手順は推奨しない方が良いと思ったもので、あまりガイドできませんが、すみません。うまくいったら掲示板等で教えていただけると有り難いです。導入して自宅内でのLAN環境では動作する所までこぎ着けました。私の場合、万一の端末紛失の場合、VPNで他のサーバーに接続される方が困る環境のため自宅の外からのアクセスをVPNでなくルーターのNAT'(IPマスカレード)で実現したく外部からのポート40003へのアクセスをTVサーバー機に接続する設定を行ったのですが上手く動作しません。(DDNSなどの動作は確認済みです。アドバイスがいただければ幸いです。さん、状況からすればPT3の導入等もまだあまり慣れていらっしゃらない感じではないでしょうか?この導入についてもインストールの過程の何かが抜けていると思います。途中よく判らなくて飛ばしたところがないか、何回でも確認されることをお勧めします。メッセージはプレーヤーが出しているもので、HLSの再生に必要な機能が無いという意味です。PCの場合Flashをちゃんと導入されていますか?またAndroidの場合普通は出ませんが、Firefoxで視聴しようとすると出ると思います。Android版Firefoxは視聴にFlashが必要ですが、現在のAndroidバージョンでは通常提供されておらず、また非公式に導入することはできますがこれで使うにはパフォーマンスが非常に悪いので、ここではお勧めしていません。(手順の中にに書いてあります。BrowserやChromeをご利用ください。等を叩いてみて、きちんと表示されるようにしてください。その状態になっていれば、番組表が表示されない理由は何もない筈です。22時31分はじめまして。すばらしい視聴アプリありがとうございます。androidなどでもPT3から再生できないか探していたところこちらのサイトにたどり着きました。セットアップと設定をおえて試してみたのですが、うまく動かず質問させていただきました。.とでてしまい再生ができません(RecTaskはうまく動いているようです)。EDBC、TVRockからの番組表取得がなにも表示されません。なにか間違っているのだと思うのですが、何度見直してもわからずヒントをいただけたらと思い投稿しました。お忙しいところお手数ですがご教示いただけたらと思います。