REGZAはLAN接続のHDD(Z3500だとUSBも行けるようです)にデジタル放送を録画できます。
もちろん、暗号化されて録画されるのはマニュアルにもあるとおりで、これをどうこうするって話ではありません。(期待した人ゴメンナサイ)
では、何かと言うと、主に録画データの番組タイトルや録画日時の取得方法についてです。
これが出来ると、玄箱とかLinuxサーバとかに録画すれば自動的に番組をフォルダに分けたり、古いファイルを削除したりが簡単に出来るようになります。
と言うわけで、詳細は続きを。
・*.dtv:録画データ本体
・*.dtv.meta:タイトル等の付加情報(今回のメイン)
・*.dtv.rat:不明
という3セットで、1つの録画データを構成しています。
*の部分は、録画データ事にユニークで、おそらくREGZA本体のシリアル等・録画日時からなっていると思われます。
ただ、日付はほぼそのまま入っているので良いのですが、それ以外はあまり使いやすくはありませんね。
で、これを3つセットで移動したりすれば、PC等からの操作でもきちんとREGZAは認識します。
ただし、REGZAから見えるところに同じファイルが複数あると、REGZAが混乱しておかしくなります。
その場合は種電源OFFしないと、録画に失敗したりするようになるので、注意してください。
基本的にはファイルをコピーする場合は、REGZAから見えない場所(共有フォルダの外とか、隠しフォルダとか)で作業しましょう。
では本題に。
まず、録画日時ですが、これはdtvファイルの作成日時(更新日時)を見るのが一番簡単です。
metaファイルなんかは再生しただけでも更新されるので、ファイルの日付は変わってしまいます。
UNIX系のスクリプトで処理するなら、findコマンドの-mtime(-ctimeでも良いとは思いますが)オプションで簡単に古いファイルだけをピックアップできます。
あとは、dtvファイルの名前に.meta/.ratをつけた3ファイルを移動したりすれば良いだけですね。
次に、本命のタイトル情報です。
これは、metaファイルに入っています。
基本的には、27バイト目から155バイト目までの128バイトがタイトル情報です。
ここにEUCコードでタイトルが入っています。
ただし、頭に2バイト・4バイトの意味不明なコードが入っている場合があります。
これはEUCのマップ外なのでiconvとか使えば除去できます。
この部分を取り出すには、(EUCのUNIX系なら)
head -c 155 <ファイル名> | tail -c 128 | iconv -f "EUC-JP" -t "EUC-JP//IGNORE"こんな感じで表示できます。
これを使って、番組タイトルの一部(例えば「ニュース」とか「天気予報」とか)をフォルダ名にしておいて、シェルスクリプトでディレクトリ名をgrepしてマッチしたらそのフォルダに移動とか出来ます。
ちなみに、その場合に注意すべき点としては、(UNIX系だと)sambaの設定によりますが、REGZAの認識するフォルダ名はあくまでシフトJISなので、そこに注意が必要です。
玄箱とかだと、sambaの設定を変えても戻ってしまうのでフォルダ名自体がSJISでディスクにかかれますから、適宜コード変換したりしなかったりで使い分ける必要があります。
また、REGZAが録画中のファイルを移動してしまったりしないように、(これまたUNIX系の場合ですが)smbstatus -Lとかで、共有フォルダにアクセス中でないかどうかを確認してから処理するようにしましょう。
もちろん、コピーや削除、パーティションを跨いだファイルの移動など、時間のかかる処理は一旦mvなどでREGZAに見えないフォルダにファイルを移動してからでないと、作業中のファイルにREGZAがアクセスしてきてフリーズとか言うことになる可能性があります。
以上、例をほとんど挙げてないので解りにくいかもしれませんが、何かの助けになれば。
#サンプルを上げたいのは山々なのですが、このBLOGはそのまま書いてもいまいちうまく表示してくれないので…
#サンプルご希望の方が居られましたらコメントから連絡でもください
この記事にトラックバックする(FC2ブログユーザー)


