FEATHER Watcher

−オンラインヘルプ−

概要

canopusのMTVシリーズなどの視聴ソフトであるFEATHERは、環境によっては終了がうまくいかないことがあるようで、その結果、次の番組の予約が実行できないなどの問題がおきます。このソフトは、サービスとして常駐し、FEATHERの予約終了を検出して、FEATHERの動作がすべて終了しないで止まっていた場合には強制終了させます。TVの音声は流れたままになってしまったりするのですが、録画の失敗を減らすためには役に立つと思います。

FEATHERの種類は、FEATHER G-Spec、FEATHER-Xのどちらでも使えると思います。作者はFEATHER-Xでのみ確認していますので、これ以外のFEATHERで動作するかは不明です。

利用条件

次の項目に示すように、分かっているだけでもいくつかの問題があります。また、これ以外にも問題があるかもしれません。このソフトを利用すること、またはこの文章を読むことによってなんらかの被害が発生した場合でも作者は責任を負いません。利用者の責任において利用してください。

このソフトは、MTVの一ユーザである私が個人的に作成したもので、canopus社とは関連ありません。本ソフトウェアに関するお問い合わせは、作者であるT-MZまでお願いします。連絡先はこのページの下部にあります。

問題点

終了判定が正しいのか不明
詳しくは後述の動作ロジックの項で説明しますが、予約動作の終了判定の方法は私が動作を観察した範囲での予想に基づいています。今の判定方法が正しいのかはわかりません。
予約以外でFEATHERを使った場合は終了していなくても何もしない
このソフトは予約の動作を前提に作ったソフトなので、予約ではなく普通に番組を見たりして終了させた場合には何もしません。FEATHERを終了したはずなのに「テレビの音が消えない」などの症状が出ているはずなので、自分でタスクマネージャからCDVR.exeを強制終了してください。(CDVRS.exeは予約マネージャなので間違って終了させないように注意。)

使う前の準備

次のもの(もしくはそれ以上のバージョン)がインストールされている必要があります。ない場合は、並記のアドレスからダウンロードしてインストールしてください。

Microsoft .NET Framework Version 1.1 再頒布可能パッケージ
http://www.microsoft.com/downloads/details.aspx?FamilyID=262d25e3-f589-4842-8157-034d1e7cf3a3&DisplayLang=ja

インストール方法(初めてFEATHER Watcherをインストールする場合)

インストーラを実行してください。インストーラが2種類ありますが、環境によってはエラーが出て片方しか動かないことがあります。動くほうでインストールしてください。インストール中に「サービスログインの設定」というウィンドウが表示され、ユーザ名とパスワードを聞かれることがあります。インストールするコンピュータでFEATHERの予約を動作させるアカウントのユーザ名とパスワードを入れてください。間違っていないはずなのにエラーでセットアップが終了してしまう場合、ユーザ名のところはマシン名つきのユーザ名を入力してください。たとえば、マシン名がpcで、ユーザ名がadminの場合、「pc\admin」と入力してください。

★★ 重要 ★★インストールが正常に終了しても、まだサービスは動いていません。Windowsを再起動後に動作します。再起動後に、サービスが正しく動いているか確認してください。コントロールパネルの「管理ツール」で「イベントビューア」を起動し、「アプリケーション」を選ぶとFEATHER Watcherに関する情報が記録されていると思います。FEATHER Watcherに関してエラーが出ていなければ正しく動作しているはずです。エラーが出ている場合、または何も情報が見つからない場合は、動作していません。「管理ツール」の「サービス」でFEATHER Watcherのログオンのアカウントを確認したり、スタートアップの種類が「自動」になっているか確認してください。「開始」ボタンで状態が「開始」になればOKです。

インストールが終了し、正常に動作するようになったのが確認できたら、インストーラなどのファイルは必要なくなります。特に必要なければ削除してください。

旧バージョンからのアップデート方法(過去のバージョンのFEATHER Watcherをインストールしたことがある場合)

まず、旧バージョンの削除を行ってください。削除は、コントロールパネルの「プログラムの追加と削除」(Windows2000の場合は「アプリケーションの追加と削除」)からできます。これまで使っていたFEATHER Watcherのバージョンは、FEATHER Wathcherの項目を選択し、「サポート情報を参照するには、ここをクリックしてください。」という部分をクリックすれば確認できます。今のバージョンが古いことを確認して、削除してください。アンインストールの操作後、Windowsを再起動してください。

これ以降の操作は、1回目のインストール方法と同じです。前の項目を参照してください。

動作ロジック

FEATHERの終了判定は、FEATHERの予約マネージャ(CDVRS.exe)が書き出すログファイルの状態を監視して行っています。ログファイルはサービスの実行アカウントでの一時ディレクトリにFEATHER.logという名前で作られるので、このファイルを監視します。ファイルに変更があった場合は、ログファイル内で最後に":"が出現するところを探し、これよりあとの行末に「終了しました」、「取り消されました。」、「開始できませんでした」のうちいずれかの文字列がある場合は予約が終了したと判断します。FEATHERが自力で終了するのを待つため、10秒間待ちます。予約実行の状態が変わらず、それでもFEATHER(CDVR.exe)が終了していない場合、強制終了させます。

以上のようなロジックで動いているのですが、これで本当に正しいのかは不明です。より良いロジックが分かれば、今後改善したいと思います。

RecordingManagerの監視について

注意:RecordingManager (TvrMan.exe)の監視は、インストール時は無効に設定されています。有効にする場合は後述のレジストリの設定をご覧ください。

通常の使い方では、同じマシンでFEATHERとRecordingManagerを使うことはあまり無いと思いますが、何らかの理由で両方使用される場合を考え、FEATHER WatcherではRecordingManagerの監視(強制終了)機能も持っています。ただし、予約の管理をFEATHERで行う使い方をしていることと、RecordingManagerのバージョンが1.17以降であることが前提です。そうでない場合、強制終了後に誰もRecordingManagerを起動させようとしないため、予約が実行されないことになります。RecordingManager監視の動作原理は基本的にはFEATHERの場合と同じですが、ログファイルはレジストリの HKEY_LOCAL_MACHINE\SOFTWARE\Canopus\MTV1000\Path に設定されたディレクトリのTVRMANRC.LOGを対象とします。また、予約の動作の違いを考慮し、強制終了までの時間は40秒としています。

レジストリの設定による動作のカスタマイズ(玄人向け)

レジストリの設定値を変更し、サービスの再起動を行うことで動作の一部をカスタマイズできます。設定は、レジストリの HKEY_LOCAL_MACHINE\SOFTWARE\T-MZ\FEATHER Watcher の下にあります。レジストリの設定方法が分からない場合は、質問していただいてもお答えできませんのでご了承ください。

FEATHER (CDVR.exe)設定場所設定値の内容標準設定
監視・強制終了の対象Feather\Disabled0:有効 1:無効0
強制終了までの時間Feather\TimeToKill時間(単位はミリ秒)10000
RecordingManager (TvrMan.exe)設定場所設定値の内容標準設定
監視・強制終了の対象RecMgr\Disabled0:有効 1:無効1
強制終了までの時間RecMgr\TimeToKill時間(単位はミリ秒)40000

CDVR-Killer.bat

予約番組ではなく、FEATHERをユーザが自分で起動し、終了した場合にはFEATHER Watcherは関与しないことは最初にも書いたとおりですが、終了させるバッチファイルをおまけでつけておきます。ただしWindowsXP専用です。これを使えば、「タスクマネージャからCDVR.exeを探して右クリックして強制終了する」という操作が「バッチファイルのダブルクリック」ですむようになります。デスクトップにでもコピーしてご利用ください。(中身はほんとに単純なバッチファイルです。)

付属ソースファイルの説明

(この項目は、一般の方は読む必要はありません。)

ソースは、srcディレクトリ以下にあります。自分でカスタマイズしたい人は好きなように使ってください。Microsoft Visual C#.NET 2003 Professionalで作成しましたが、サービス本体はVisual C# 独自のライブラリなどは使用していませんので、たとえばBorland C# 1.0 でもソース(*.cs)の大部分はほぼそのまま利用できると思います。元のバージョンのインストール後に、サービスが停止している状態で実行ファイルを入れ替えれば新たに作り直したものを動作させることができると思います(未確認)。(ただしプロジェクトファイルはVC#専用、サービスのインストーラ作成に関する部分はVC# Pro以上専用です。)

有益だと思われる改良をした場合、私が公開するものにも反映させたいのでご連絡ください。また、カスタマイズしたものや、このソースを参考にしたものなどを公開された場合も、できるだけご連絡ください。

動作確認済み環境

MTV2000 + MTV X Pack + Pen4 2.4CGHz@2.7GHz(with HT) (作者の環境)

履歴

ver.1.1.0 [2004/02/29]
ver.1.0.1 [2003/10/13]
ver.1.0.0 [2003/10/12]

サポートページ

最新版、バグ情報などの情報提供は、以下のページで行なっています。サポート掲示板もあります。

http://tmz.skr.jp/

Eメール

バグ報告、質問、要望等があれば、下記アドレスまでメールをください。お気軽にどうぞ。

t-mz@ijk.com