てきとうメモ

PC系のてきとうなメモ

はじめてのTS抜き 録画予約 EDCBにて - DD Max M4 on Win10

はじめてのTS抜き - DD Max M4 on Win10 - てきとうメモ で、TVTest での視聴が無事できたので、EDCB による録画予約に挑戦します。

TS抜き (TVTest+EDCB+α) 環境構築 & ビルド済み配布 | つくみ島だより から、ビルド済みのzipから導入手順まで、すべてを参考にさせていただきました。

EDCB については、こちらの 解説ページ の解説が分かりやすかったです。

用語

  • スリープ
    • ここでは、PCが停止して節電モードになることを指すことにします。つまりWindowsの「スタンバイ」状態と「休止」状態の両方のことを指します。
      • 「スタンバイ」は、PCの作業状態をメモリに保存して停止します。復帰が早いです。
        • キーボードを叩けば、復旧すると思います。
        • 電源コードを引き抜くと、作業内容が失われる、かもしれません。
      • 「休止」は、PCの作業状態をディスクに書き出して停止します。復帰に少し時間はかかりますが、「スタンバイ」よりもさらに省電力です。
        • キーボードを叩いても、復旧しなと思います。電源ボタンを押さなければ復旧が始まらないと思います。
        • 電源コードを引き抜いても、作業内容は失われない、はず…です。
      • Windows10では、「スリープ」はほぼ「スタンバイ」のことを指すようですが、この記事では、「スリープ」はとにかくPCが作業を停止し、ストレージやディスプレイ表示も停止して、節電モードになることを指すことにします。

目次

録画専用PCを購入 - 3万円ちょっと + HDD

前回の記事 にも書いたのですが、DD Max M4 を利用するためには、「セキュアブート」というセキュリティ関連の設定を切らなければ、ドライバが動きません。
また、メインPCではいろいろと作業することもあり、録画と作業が重なって何か失敗するのも嫌だったので、録画専用のPCを用意することにしました。

PC選び - フルハイトカードが挿さるスリムPCがなかなか無い

どうもTS抜きの録画には、それほど高いPCスペックは必要ないようなので、こだわりさえ無ければPCは何でも大丈夫だと思います。
(PCの詳しい負荷状況については、あとで書きます。)

私の場合は、以下の点にこだわりたかったため、PC選びが難航しました。

  • スリムPCがいい
    • メインPCがかなり大きく、この隣にまたミニタワーなどを置きたくなかったので、なるべくPCは小型のもので済ませたかったです。
  • [必須] フルハイトの PCI Express x1 スロットが必要
    • DD Max M4 はフルハイトなので、スリムPCと言えども、フルハイトのカードが挿さるものでなければなりません。スリムPCの拡張スロットはハーフハイトのものばかりなので、ここで一気に選択肢が狭くなります。
    • どうしてもフルハイトが挿さるPCが手に入らなければ、DD Max M4 ではなく PT4K を使うのがいいかもしれません。私は持っていないです。
  • 費用と手間をおさえたい
    • 数は少ないものの、フルハイトが入るスリム型のベアボーンもあるようです。しかし、PCの自作は楽しいものの、特に小型PCだと、せっかく購入したパーツがケースにうまく入らなかったり、動作しない理由がなかなか分からなかったりと、いろいろと苦労も伴うと思います。また新品で揃えると、それなりにお値段もするので、今回は中古の出来合いのものを選ぶことにしました。

「スリムで、フルハイトカードが入り、しかも安くて安定していそうな出来合いのもの(中古OK)」となると、ほとんど選択肢がありません。

富士通 ESPRIMO D587 シリーズ

やっと見つけたのが、富士通の法人向けPC「ESPRIMO D587 シリーズ」です。 2017年に発売 されたもののようなので、そこまで古くもなく、中古ショップで2万円台後半から見つかりました。 しかも Windows 10 Pro がプリインストールされています。

なお写真のフロントパネルが黒だったので、全体も黒なのかと思ったのですが、購入した D587/S は、黒いのはフロントパネルだけで、筐体はオフィスによくありがちなオフホワイトのような色でした。 現行の ESPRIMO シリーズ のページを見ると、全体が黒のものもあるようなので、もしかしたら筐体色に種類があるかもしれません。

f:id:tekitou_memo:20210521212132j:plain
FUJITSU ESPRIMO D587/SX

D587シリーズには、D587/SXD587/RX など、いくつかのシリーズがあります。 しかも各シリーズの「FMVD...」といった型番の違いで、CPUやメモリ容量、HDDかSSDか、Win10ではなくWin7 などなどの、こまかい違いがあるようです。

私が少し見てみたかぎりでは、下記のシリーズであれば、PCI Express x1 フルハイトスロット が1本(さすがにハーフレングスのみっぽいですが)あるので、DD Max M4 も挿さると思いますが、購入の際はよく調べて、いつもどおり自己責任でお願いします。 私が見たときは、富士通このページ の サポート情報 の先の マニュアル の 製品ガイド(機種別編) に、スペックが詳しく載っていました。
また、現行の ESPRIMO シリーズ のページを少し見たところ、「ウルトラスモール」ではなく「コンパクト型」であれば、PCI Express x1 は挿さるようですが、個人で買えるのか不明なのと、お値段も当然いまどきのPCの価格でした。

  • D587 / D588
  • D956 / D957 / D958

たとえば、1つ前の D586シリーズ も、一見フルハイトが挿さりそうなのですが、PCI Express ではなく古い PCI バスのようなので、DD Max M4 は挿さらないと思います。 購入の際は、背面の写真だけで選ばないよう、要注意です。 心配なときはショップへ質問してみましょう。

ちなみに D587シリーズ などの背面写真を見ると、スロットが2本あるように見えます。 実際に筐体を開けてみると、ライザカードには PCI Express x1 スロットに加えて PCI Express x16 スロットのようなものがあるのですが、マニュアルによるとこれは何かのカスタムメイド専用カード用のようです。
また、このライザカードのおかげでカードが取り付けやすく、前回の記事 のように DD Max M4 のネジをはずして無理やり挿すといったことはしなくて大丈夫でした。

というわけで、私が購入したのは下記のものです。保障も少し付けてくれる販売店にしました。

  • FUJITSU ESPRIMO D587/S FMVD3301 - 3万円ちょっと
    • OS: Windows 10 Pro 64bit
    • CPU: Core i5 7600 (3.5GHz / Quad Core)
    • メモリ: 8GB (スロット4本中1本使用)
      • マニュアルに、「フラッシュメモリディスク 128GB 搭載機種は、最大 8GB まで」と書かれています。これ以上の増設は無理かもしれません。
    • ストレージ: 128GB SSD
      • SSDが載ったD587/Sは「24時間モデル」というものの可能性があり、どれくらい使い込まれたものか心配だったのですが、CrystalDiskInfo で見たところ、それほどでもなかったので幸運でした。
    • グラフィック: CPU内蔵
      • 手元に HDMI 接続のディスプレイしかなかったので、Display Port は使わず、DVI/D を HDMI に変換して表示しています。ディスプレイのスピーカーからも音は無事に鳴りました。
    • その他: DVDドライブ

ストレージが 128GB(空き70GBくらい)だと、録画には不足気味なので、その後 DVDドライブ を外し、代わりに 5インチ→3.5インチ のマウンタを使ってHDDを載せました。

必要なスペック

これは後付けで書いたものです。

録画PCの運用を少しやってみた感じでは、再エンコードなどさせずに、録画に専念させるかぎり、CPUやGPUの負荷は、ほとんどかからないようです。

一方で、「再生」や「表示」をすると、GPU負荷がどんどん上がっていきました。 (CPU負荷は大したことはなかったです。)
「TVTest を1つ起動し、視聴しつつ録画しながら、以前録画した動画を動画再生アプリで1つ再生」した場合の負荷は、以下のような感じでした。

  • CPU負荷: 10% ぐらい
  • GPU負荷: 50% ぐらい
  • メモリ使用量: 2.5GB ぐらい

また TVTest を4つ起動し、4チャンネル同時表示してみたところ、GPU負荷がほぼ 100% になりました。

EDCB のダウンロード

前述のとおり、つくみ島だより 氏作成の、ビルド済みzipファイルを頂戴します。

Windows Defender で「Program:Win32/Uwamson.A!ml」が検知される

上記の zipファイル をダウンロードすると、Windowsから「望ましくない可能性のあるアプリが見つかりました」と警告が出ることがあります。
作者の つくみ島だより 氏いわく、これは誤検知のようです。 こちらの 解説ページ に詳しく書かれています。

次のインストールのステップで、このzipファイルの展開などができない場合は、Windowsの通知に何か出ていると思うので、「Windows セキュリティ」の「ウィルスと脅威の防止」から「Program:Win32/Uwamson.A!ml」を選択し、「デバイスで許可」を選んで「操作の開始」をクリックすると、先へ進めるのではと思います。

EDCB のインストール

インストーラは付属していないので、C:\DTV\EDCB\ フォルダを作成し、ここへ手でインストールすることにします。

zipファイル内の EDCB-210216\EDCB_64bit\ にあるすべてのファイルを、C:\DTV\EDCB\ へコピーします。

以下の説明では、zipファイル内の Readme.txt も参考にさせていただきました。

BonDriver を準備

前回の記事 で作成した、下記の9個のファイルを、C:\DTV\EDCB\BonDriver\ へコピーします。
(似た名前で「~.ch2」というファイルも4個作成されていますが、これはコピーしません。)

  • BonDriver_MaxM4_0.dll
  • BonDriver_MaxM4_0.ini
  • BonDriver_MaxM4_1.dll
  • BonDriver_MaxM4_1.ini
  • BonDriver_MaxM4_2.dll
  • BonDriver_MaxM4_2.ini
  • BonDriver_MaxM4_3.dll
  • BonDriver_MaxM4_3.ini
  • DD.dll

録画アプリの設定 - EpgDataCap_Bon

EpgDataCap_Bon は、EDCB のツール群のなかで、録画を担当するアプリのようです。
(録画「予約」は別のアプリが担当します。)

C:\DTV\EDCB\ の下の EpgDataCap_Bon.exe をダブルクリックして起動します。

WindowsによってPCが保護されました」というダイアログが出たら、「詳細情報」をクリックし、現れた「実行」ボタンをクリックします。

f:id:tekitou_memo:20210516223719j:plain
EDCB PC保護警告ダイアログ

また「VCRUNTIME140_1.dll が見つからないため、…」というエラーが出たら、Microsoftこのページ から「vc_redist.x64.exe」をダウンロードし、実行してインストールしてみてください。

f:id:tekitou_memo:20210521225312j:plain
「VCRUNTIME140_1.dll が見つからない」エラー

無事 EpgDataCap_Bon が起動した…と思ったら、「チャンネル情報の読み込みに失敗しました」と出ています。

f:id:tekitou_memo:20210516223843j:plain
EDCB 初めて起動

チャンネルスキャン

EpgDataCap_Bon アプリのウィンドウの「BonDriver」に「BonDriver_MaxM4_0.dll」が選択されているので、その右にある「チャンネルスキャン」をクリックします。

何も起こらない…と思ったら、よく見たら左下の2つのテキストボックスに チャンネルスキャン のステータスが表示されています。

f:id:tekitou_memo:20210516225223j:plain
EDCB チャンネルスキャン

残り時間も表示されるので、このまま待ちます。 「終了しました」のメッセージが出るまでに、10分ぐらいかかったと思います。

f:id:tekitou_memo:20210516230318j:plain
EDCB チャンネルスキャン 終了

ここで終わりではありません!

この チャンネルスキャン を、BonDriver の数だけ、つまりあと3回繰り返します。 4チャンネル合計で3~40分かかるということです。

「BonDriver」のプルダウンから BonDriver_MaxM4_1.dll を選択し、「チャンネルスキャン」をクリックします。 これを BonDriver_MaxM4_2.dll 、BonDriver_MaxM4_3.dll でも行います。

分配器で BS/CS のアンテナケーブルを各チューナーへ接続していない場合は、もちろん 地デジ しかスキャンされません。

録画保存フォルダの設定

「設定」ボタンから「基本設定」タブを開き、「設定」ウィンドウを開きます。

「録画保存フォルダ」が C:\DTV\EDCB\Setting\ になっているので、前回の記事 で指定したフォルダに変更します。
「C:\DTV\EDCB\Setting」を選択して「削除」をクリックし、「開く」から D:\dokoka_ookina_storage\ など適当な大きめのストレージを選択し「OK」して、「追加」すると 録画保存フォルダ として登録されるので、「OK」でウィンドウを閉じます。

f:id:tekitou_memo:20210522124625p:plain
EpgDataCap_Bon 録画保存フォルダ

おためし録画

EpgDataCap_Bon のウィンドウには、視聴動画は表示されないようです。

さきほどの チャンネルスキャン で、「サービス」のプルダウンに多くのチャンネルが表示できるようになりました。 チャンネル名の選択を変更すると、ウィンドウ右下の番組情報のテキストボックスが、放映中の番組の内容に変わるようです。

とりあえず、トラブルが少なそうなものということで、前回 TSプロセッサー を設定しなくても映った、CS の ショップチャンネル を録画してみます。 チャンネルを選択し、すぐ右の「即時録画」ボタンをクリックします。

ウィンドウ左下のテキストボックスに「録画中」と表示されました。 1分ほど待ったのち、「キャンセル」ボタンをクリックします。 「録画を停止しますか?」のダイアログに「はい」をクリックして、停止します。

先ほど設定した録画保存フォルダ D:\dokoka_ookina_storage\ に、{年月日}-{時分秒}-ショップチャンネル.ts というファイルができていました。 ダブルクリックすると動画再生アプリが起動し、無事に再生できました!

他のチャンネルも、問題なく録画できました。
なお TVTest の時と同様に、最初の数秒は、映像や音声が乱れていることがありました。

その他の設定

「設定」ボタンで表示される 設定ウィンドウ には、「基本設定」以外にもいくつかタブがあります。

こちらの 解説ページ に詳しい説明があるので、参考にしてみてください。

ここでは下記に書いたものだけ設定しました。

  • 「基本設定」タブ
    • 「最小化時タスクトレイに入れる」にチェックを入れます。EpgDataCap_Bon を最小化すると、タスクバーには残らず、タスクトレイへ格納されるようになります。
  • 「動作設定」タブ
    • (特に何も変えませんでした。)
  • EPG取得設定」タブ
    • (特に何も変えませんでした。)
  • 「サービス表示設定」タブ
    • (特に何も変えませんでした。)
  • 「ネットワーク設定」タブ
    • この 解説ページ によると、UDPよりもTCPのほうが推奨らしいとのことなので、「TCP送信」内の「追加」をクリックします。「送信先一覧」に 127.0.0.1:2230 が追加されます。
  • 「外部アプリケーション設定」タブ
    • 「使用exeパス」には、TVTest.exe を指定します。ここまでの記事どおりに設定している場合は、C:\DTV\TVTest\TVTest.exe のはずです。
    • コマンドラインオプション」には、/d BonDriver_TCP.dll /nd /p 2230 と入力します。

終わったら、ウィンドウ右下の「OK」をクリックして完了です。

(やらなくてもいい) TVTest でテレビを見てみる

このセクションで解説することは、やらなくても EDCB での録画環境を作ることはできるので、丸ごとスキップしても大丈夫です。

これまで TVTest では、DD Max M4用のBonDriverを直接使ってテレビを見ましたが、ここでは試しに EpgDataCap_Bon 経由で見てみます。

これまで 今回
放送電波 放送電波
DD Max M4 DD Max M4
BonDriver_MaxM4_0~3.dll BonDriver_MaxM4_0~3.dll
EpgDataCap_Bon
BonDriver_TCP.dll
TVTest TVTest

さきほどの「外部アプリケーション設定」タブにて、EpgDataCap_Bon から TVTest を起動する設定がすでに完了しているので、さっそくやってみます。
EpgDataCap_Bon ウィンドウ内の「View」ボタンの 右の「TCP」にチェックを入れ、続いて「View」をクリックしてみましょう。

もし「このアプリの機能のいくつかが Windows Defender ファイアウォールでブロックされています」と出たら、「アクセスを許可する」をクリックします。

f:id:tekitou_memo:20210522123726p:plain
TVTest ファイアウォールでブロックされた

TVTest に映像が映れば成功です。左下のチューナー表示には「TCP」と出ているはずです。

EpgDataCap_Bon の「サービス」からチャンネルを変更すれば、TVTest に映るチャンネルも変わります。

いったん終了

C:\DTV\EDCB\Readme.txt によると、次の EpgTimer.exe へ進む前に、ここで一度 EpgDataCap_Bon.exe を終了させたほうがよいようです。

録画予約アプリの設定 - EpgTimer

EpgTimer は、EDCB のツール群のなかで、録画予約を担当するアプリのようです。

C:\DTV\EDCB\ の下の EpgTimer.exe をダブルクリックして起動します。

例によって「WindowsによってPCが保護されました」というダイアログが出たら、「詳細情報」をクリックし、現れた「実行」ボタンをクリックします。

最初の設定

「設定」ボタンから 設定ウィンドウ を開き、下記のとおり設定していきます。

  • 「基本設定」タブ
    • 「基本」タブ
      • 「BonDriver」の「チューナー数」
        • BonDriver_MaxM4_0~3.dll それぞれに「1」を選択します。
          • f:id:tekitou_memo:20210522185323p:plain
            BonDriver_MaxM4_0~3.dll チューナー数を 1 にセット
  • 「動作設定」タブ
    • 「録画動作」タブ
      • 「録画、EPG取得終了後のデフォルト動作」を「何もしない」に変更します。これをやらないと、このあと「EPG取得」をしたときに、終了後自動的にPCがスリープしてしまいます。
    • 「予約情報管理」タブ
      • 「録画時のファイル名にPlugInを使用する」にチェックを入れます。続いて右隣りの「設定」をクリックし、「マクロ」の $Title$.ts$SDYYYY$$SDMM$$SDDD$ $Title2$.ts に変更して「OK」をクリックします。これで録画ファイルの名前が「{年月日} {番組名}.ts」になります。

とりあえず、これくらいで「OK」をクリックして 設定ウィンドウ を閉じます。

チューナー数 を変更したので、一度ここで EpgTimer を再起動させる必要があるようです。
終了し、もう一度 EpgTimer.exe をダブルクリックして実行します。

番組表

ここまで、チャンネルの表示や、放映中の番組の情報の表示はできましたが、番組表というものはまだ見ていません。

再起動した EpgTimer の「EPG取得」をクリックします。

ほどなくして、よく見るとタスクトレイに、以下の計5つのアイコンが表示されます。

  • EpgTimerSrv(緑の時計アイコン)
  • 「BonDriver_MaxM4_0~3.dll:{チャンネル名}」(EpgDataCap_Bon のアイコンの上部が黄緑になったもの)
    • EPG取得」をクリックすると、どうも EpgDataCap_Bon がチューナーの数だけ起動されるようです。

そして EpgTimerSrv からは「EPG取得 開始」というWindowsの通知が届き、数分(私の環境では6分でした)経つと、今度は「EPG取得 終了」という通知が届きます。

ここで EpgTimer の「番組表」タブを選択してみると、見事に全チャンネルの番組表が表示されます!

一般のチューナーにまた一歩近づいたようで、ちょっと嬉しいです。

なお 終了 の通知のあとのタスクトレイのアイコンは、EpgTimerSrv のみが残っており、BonDriver_MaxM4_0~3... は消えていました。

おためし録画予約

PCがスリープしてても自動的に目覚めて録画…という素晴らしい環境を作る前に、とりあえず 録画予約 ができるかを試してみましょう。

EpgTimer の 番組表 から、手頃な番組を右クリックし、メニューから「簡易予約」をクリックします。
(放映中の番組でも、「簡易予約」できるようです。すぐに録画開始へ進みます。)
番組が、黄緑の四角で囲われました。

「予約一覧」タブを見てみると、今予約した番組の情報が1行出ています。

録画開始までに、Windowsの通知がいくつか届きます。

  • 録画開始時刻が近づく →「EpgTimerSrv 予約録画開始準備 BonDriver_MaxM4_0.dll」
  • 録画開始時刻の直前 →「EpgTimerSrv 録画開始準備 {番組名}」
  • 録画開始時刻 →「EpgTimerSrv 録画開始 {番組名}」

タスクトレイを見ると、EpgTimerSrv の時計アイコンの他に、EpgDataCap_Bon のアイコン(上部が紫色)が1つ現れています。

録画保存フォルダに指定した D:\dokoka_ookina_storage\ をエクスプローラで見ると、{年月日} {番組名}.ts と {年月日} {番組名}.ts.program.txt という2つのファイルができています。
どうも録画が進んでいるようです。

録画中でも、PCには、ほとんど負荷はかかっていないようです。 CPU の使用率は 数%前半~たまに10%少々、 GPU はほぼ 0% で、負荷らしい負荷はかかっていません。 メモリ使用量も 2.3GB くらいで、録画前とあまり変わりません。
2番組が重なるように録画予約しても、CPU の使用率が +1~2% になった程度でした。
番組視聴 や 録画の再生 をしないかぎり、PCのスペックは本当に低くて大丈夫なのかもしれません。 なお DD Max M4 のページによると、System requirements は Dual Core、512MB RAM とのことです。 今回録画専用PCとして購入した ESPRIMO D587/S は、RAM が 4GB のものが多かったのですが、4GB でも大丈夫だったかもしれません。

録画終了時刻になると、「EpgTimerSrv 録画終了 {番組名}」という通知が届きました。

さっそく録画保存フォルダ D:\dokoka_ookina_storage\ を見てみると、以下のファイルが作成されています。

  • {年月日} {番組名}.ts
  • {年月日} {番組名}.ts.err
  • {年月日} {番組名}.ts.program.txt

とりあえず tsファイル を動画再生アプリで開くと、無事に録画されています!

ts.program.txtファイル をメモ帳で開くと、番組の詳細がテキストで保存されています。

ts.errファイル は、ドロップログというもののようです。
パケットがドロップして、ブロックノイズでも乗ったか…と思ったのですが、録画を見ても特に問題はありませんでした。
ファイルをメモ帳で見てみても、どの行も「... Drop: 0 ...」となっています。
この ts.errファイル は、本当にドロップが起きた時のみ出力されるように設定できます。
EpgDataCap_Bon を開き、「設定」から「動作設定」タブで、「ドロップ数が」の値が 0 になっているはずなので、1 に変更しましょう。
ts.errファイル 内には、使用したBonDriverも出力されるので、作成された際には、調子の悪いチューナーの特定に役立つかもしれません。

スリープを試す

EpgTimer を一度起動すれば、EpgTimerSrv がタスクトレイに常駐します。
EpgTimer を終了(ウィンドウ右上の [×] をクリック)しても、EpgTimerSrv がタスクトレイに居るかぎり、録画予約はきちんと実行されるようです。

また、EpgTimer にて録画予約したあと、録画開始までに時間があれば「スタンバイ」や「休止」をクリックして、PCをスリープ状態にすることができます。

スタンバイ

「スタンバイ」をクリックすると、PCは停止するものの、電源ランプは1秒毎にチカチカ点滅したままです。

そして録画開始の6分ほど前に、自動的に復帰しました!
なおディスプレイは消えたままでした。

録画終了時間になると、また「スタンバイ」に移行したようです。

キーボードを叩くと、すぐに画面が映り、復帰しました。

録画はちゃんとできていました!

休止

「休止」をクリックすると、PCは停止し、電源ランプも消えました。 一見、完全に電源を切ったのと同じ状態です。

そして録画開始の6分ほど前に、自動的に復帰しました!
ディスプレイは、点灯して FUJITSUWindows のロゴが表示されたあとは真っ黒のままですが、バックライトは10分以上経ってもつきっぱなしでした。

録画終了時間になると、また「休止」に移行したようです。ディスプレイも消えました。

キーボードを叩いても反応はなく、復帰するためには電源ボタンを押す必要があります。

録画はちゃんとできていました!

PCのリブート対応

今の状態では、何かの理由でPCがリブートした際、EpgTimer は自動的には起動してくれません。 もし録画が予約されていても、PCが起動しただけでは録画は行われないようです。 ログインした際にも、「録画終了 {番組名} 録画時間に起動していなかった可能性があります」というWindowsの悲しい通知が届きます。

Windows Update などでPCがリブートした際にそなえて、ログインしなくても録画が自動的に実行されるようにしておきましょう。

「スタートアップ」に EpgTimer.exe へのショートカットを置くという手もあるようなのですが、今回はWindowsの「サービス」という仕組みを使ってみます。

EpgTimerSrv をサービスに登録

「サービス」に登録するものは、EpgTimer ではなく、その後ろで走っている EpgTimerSrv というツールです。
EpgTimerSrv は、録画予約などの設定どおりに録画を行うツールで、EpgTimer は、実際には EpgTimerSrv の設定を行うだけのフロントエンドツール、らしいです。
そのため、録画予約の実行のために「サービス」で起動しておかなければならないツールは、EpgTimer ではなく EpgTimerSrv となります。

では、さっそく設定していきましょう。

まず EpgTimer が起動されていれば、これを終了します。 タスクトレイを見て、時計アイコンが残っていれば、右クリックして「Srv終了」をクリックします。

ここから、少し手間がかかります。コマンドプロンプトでの作業になります。
少し下に、コマンドプロンプトスクリーンショットを貼っておきましたので、あわせて参考にしてみてください。

まずWindowsの スタートメニュー →「Windows システム ツール」→「コマンド プロンプト」を右クリックし、「その他」→「管理者として実行」をクリックします。

「C:\WINDOWS\system32>」と表示されているので、ここに以下の1行を入力し、最後に [Enter] を入力して実行します。

sc.exe create "EpgTimer Service" start= auto binPath= "C:\DTV\EDCB\EpgTimerSrv.exe" obj= "NT AUTHORITY\LocalService"

「[SC] CreateService SUCCESS」と表示されれば成功です。

続いて、同じように以下の1行を実行します。

sc.exe sidtype "EpgTimer Service" unrestricted

「[SC] ChangeServiceConfig2 SUCCESS」と表示されれば成功です。

最後に、以下の1行を実行します。

sc.exe start "EpgTimer Service"

少し長いメッセージが出てくれば成功です。

f:id:tekitou_memo:20210523170730p:plain
EpgTimerSrv を サービス として登録

最後のコマンドで「[SC] StartService FAILED 1053: そのサービスは指定時間内に開始要求または制御要求に応答しませんでした。」と出る場合は、タスクトレイに EpgTimerSrv アイコンが残っていないか確認しましょう。
もし残っていたら、タスクトレイのアイコンを右クリック →「Srv終了」し、もう一度コマンドプロンプトから最後の3番目のコマンドを実行すれば、成功すると思います。

これでコマンドプロンプトでの作業は終了なので、ウィンドウを閉じます。

サービスに登録されたか見てみましょう。
スタートメニューを右クリック →「コンピューターの管理」→「サービスとアプリケーション」→「サービス」をクリックし、一覧のなかに「EpgTimer Service」が「実行中」の状態で表示されていれば成功です。

f:id:tekitou_memo:20210523171920p:plain
EpgTimer Service が実行中

さっそく録画予約してみましょう。

まず、いつもどおり EpgTimer を起動します。 ここで今までと1つ違うのは、タスクトレイに 時計アイコン が現れなくなることです。 サービス経由ですでに EpgTimerSrv が裏で動いているため、時計アイコン は出なくなるようです。
また、今まで録画前後に届いていたWindowsの通知も、出なくなるようです。

続いて 番組表 から手頃な番組を右クリックして「簡易予約」し、そのまま EpgTimer を終了します。

録画が終了した頃にもう一度 EpgTimer を起動すると、「録画済み一覧」のなかに、先ほど録画予約した番組が「録画終了」で残っています。

録画保存フォルダ D:\dokoka_ookina_storage\ にも、tsファイル と ts.program.txt ファイルができています!

リブートしても大丈夫か確認

今度は、Windowsをリブートした直後の状態で放置するとどうなるか、見てみます。

PCの電源設定にもよりますが、リブートしてしばらく何もせずに置いておくと、そのうちスリープ状態へ移行すると思います。

録画開始時刻の5~6分前になると、スリープから自動的に復旧し(電源ランプが 点滅 から 常時点灯 に変わりました)、録画が始まったようです。
録画終了時刻の数分後には、再びスリープしました。

ログインし、EpgTimer を起動して「録画済み一覧」を見ると、正常に録画できたようです。
録画保存フォルダ D:\dokoka_ookina_storage\ にも、tsファイル と ts.program.txt ファイルができています。
うまくいったようです!

PCがしょっちゅう目覚めてしまう

録画PCには、録画のときだけ起きてもらい、その他の時はスリープしていてほしいのですが、なぜかしょっちゅうスリープから目覚めてしまうことがあります。

詳しい調査方法はこのあとに書きましたが、とりあえず以下のことを試すのが手っ取り早いと思います。

スタートメニューを右クリックし、「デバイス マネージャー」の下の「Realtek PCIe GbE Family Controller」をダブルクリックして開きます。
「電源の管理」タブで、「このデバイスで、コンピューターのスタンバイ状態を解除できるようにする」にチェックが入っていたので、これを外しました。

f:id:tekitou_memo:20210525190836p:plain
「このデバイスで、コンピューターのスタンバイ状態を解除できるようにする」をオフにする

私の ESPRIMO D587/S では、これだけでうまく行きました。
録画開始時刻数分前にきちんとスリープから目覚め、録画終了時刻の数分後にはふたたびスリープし、次の録画開始時刻までずっとスリープしてくれています。
かなりいい感じです!

もしまだスリープから起きてしまうようなら、スタートメニューを右クリックし、「イベント ビューアー」を立ち上げて、少し詳しく調べます。

f:id:tekitou_memo:20210525190953p:plain
イベント ビューアー

「操作」→「カスタム ビューの作成…」に進むと、「カスタム ビューの作成」ウィンドウが出るので、「ソースごと」を選択し、「イベント ソース」で「Power-Troubleshooter」を選択し、「OK」をクリックします。

f:id:tekitou_memo:20210525191148p:plain
イベントソース に Power-Troubleshooter を指定

「ファイルをカスタム ビューに保存」で「名前」が聞かれたら、てきとうに「Power-Troubleshooter」のような名前を付けておきましょう。

f:id:tekitou_memo:20210525191033p:plain
フィルターをカスタムビューに保存

この「Power-Troubleshooter」のイベント一覧をながめると、「システムは低電力状態から再開しました。」というイベントがあり、私の場合は「スリープ状態の解除元」に「デバイス -Realtek PCIe GbE Family Controller」とありました。

f:id:tekitou_memo:20210525191317p:plain
「システムは低電力状態から再開しました」イベント

ここから先ほどの デバイスマネージャー 経由で、スリープが解除されないように設定を進めていきます。

その他にも、スリープが解除されてしまう原因はいろいろあるようです。 この 解説ページ はとても参考になりました。 いろいろ検索して、情報収集してみてください。

完成!

というわけで、きちんとスリープもしてくれるようになり、ほぼ完成です!

「TS抜き」界隈には、たくさんの先人の知恵が集まっており、本当にすごいと思います。
たとえば、スマホからネットワーク経由で録画した動画を見たり、録画完了後に Amatsukaze という別のツールを動かしてCMカットなどを行うこともできるようです。
いろいろ調べて挑戦してみると楽しいと思います。

以下の解説は、作りたい環境に合わせて、お好みで参考にしてみてください。

できるだけスリープさせる

録画PCには、録画に集中してもらい、なるべく録画が失敗しない環境にすることにしました。
つまり、録画以外はやることがありません。 そのため、録画中以外は最大限スリープしてくれるよう、電源管理の設定を加えました。

スタートメニューを右クリックし、「電源オプション」を開き、「電源とスリープ」で、「次の時間が経過後、ディスプレイの電源を切る (電源に接続時)」と「次の時間が経過後、PC をスリープ状態にする (電源に接続時)」を、両方とも 1分 にしました。

これで、録画中以外は、ほぼずっとスリープするPCになりました。

他のPCからスリープを解除できるようにする

先ほど書いたとおり、録画PCには録画に集中してもらい、録った動画は、ネットワーク経由で別PCから参照して視聴することにしました。
(ここでは詳細は省略しますが、D:\dokoka_ookina_storage\ フォルダが他のPCから参照できるよう、適当に共有設定をしました。)

しかし、録画PCがスリープしてしまっている間は、他のPCから録画PCを参照することはできません。
いちいち録画PCのキーボードを叩いてスリープを解除するのも面倒だったので、ネットワーク経由で起きてもらうように設定します。

Wake on LAN

Wake on LAN」という仕組みを利用して、この環境を作っていきます。
これは、スリープしているPCへ、ネットワーク経由で「Magic Packet」という特別な指示を送ることにより、スリープを解除するというものです。

まずスタートメニューを右クリックし、「デバイス マネージャー」から「ネットワーク アダプター」の下の「Realtek PCIe GbE Family Controller」をダブルクリックして開きます。

「電源の管理」タブでは、以前の解説で「このデバイスで、コンピューターのスタンバイ状態を解除できるようにする」のチェックを外しました。
ここでは逆に、このチェックを再度付け、さらにその下の「Magic Packet でのみ、コンピューターのスタンバイ状態を解除できるようにする」にもチェックを付けます。

Magic Packet 発射ツール

Magic Packet を送信してくれるフリーウェアもあるようですが、私はこの 解説ページ で紹介されている バッチファイル を拝借しました。

拝借した バッチファイル を丸ごとここへ貼るのは、ちょっと気が引けたので、その他に行ったことだけ書いておきます。

紹介されている WOL.bat の6行目の「set MacAd=...」には、録画PCの MACアドレス を設定します。
MACアドレス を調べる方法は、検索すればすぐ出てきます。たとえば録画PC上で コマンドプロンプト を起動し、ipconfig /all というコマンドを実行すると、「物理アドレス」の右にこの MACアドレス が表示されます。

WOL.bat を、適当なフォルダ、たとえば「PC > ドキュメント」に置きます。
これをダブルクリックすれば、バッチファイル が実行され、録画PCがスリープから目覚めるはずです。

タスクバーからワンクリックでスリープ解除

デスクトップなどに WOL.bat へのショートカットを置いて利用してもいいのですが、私は タスクバー をよく使うので、タスクバー に WOL.bat へのショートカットを置くことにしました。

しかし、タスクバー に WOL.bat のような バッチファイル のショートカットを置くには、ちょっと工夫が必要です。
私はこの 解説ページ などを参考に、以下のように作成しました。

  1. 保存した WOL.bat へのパスを調べます。たとえば WOL.bat を右クリックし、「プロパティ」から「セキュリティ」タブの「オブジェクト名:」を見れば、調べることができます。「PC > ドキュメント」に保存した場合は、C:\Users\{ユーザー名}\OneDrive\ドキュメント\WOL.bat などになっていると思います。
  2. スタートメニュー から「Windows システムツール」→「コマンド プロンプト」を起動します。
  3. タスクバー に現れた コマンドプロンプト を右クリックし、「タスクバーにピン留めする」を実行します。起動した コマンドプロンプト は、そのまま何もせずに右上の [×] をクリックして終了させます。
  4. タスクバー にピン止めされた コマンドプロンプト を右クリックし、現れた「コマンド プロンプト」をさらに右クリックして「プロパティ」をクリックし、「コマンド プロンプトのプロパティ」ウィンドウを開きます。
  5. 「ショートカット」タブの「リンク先」の値が %windir%\system32\cmd.exe となっていますが、これを最初に調べた WOL.bat へのパス、たとえば C:\Users\{ユーザー名}\OneDrive\ドキュメント\WOL.bat に変更します。
  6. つづいて「全般」タブのいちばん上で、適当な名前、たとえば「WOL」を入力します。
  7. 「OK」をクリックして、「コマンド プロンプトのプロパティ」ウィンドウを閉じます。

これで、タスクバー の WOL アイコンをワンクリックするだけで、録画PCがスリープから復帰してくれるようになりました。

テレビ視聴中はスリープしない

しっかりスリープするようになった録画PCですが、たまに TVTest でテレビ視聴しようとしても、スリープしてしまいます。

TVTest の設定でスリープしないようにできるか、ちょっと見てみたのですが、どうも設定が見当たりません。

「特定のアプリが起動中にスリープしないようにするフリーウェア」も、いくつかあるようです。
私は プロ生ちゃんSleep抑止 を使っています。

参考サイト

下記以外にも、多くの先人の素晴らしいお知恵や実装を拝借しました。

はじめてのTS抜き - DD Max M4 on Win10

はじめてのTS抜きに挑戦します。2021年5月現在の情報です。

ここに書いたことがすべてうまく行けば、1時間ぐらいのPC操作で「TS抜き」できるようになると思います。

TS抜きが何かについては、こちらの 解説ページ が分かりやすかったです。

用語

適当に言葉をはしょっています。

  • 「DD Max M4」
    • TVチューナーボード Digital Devices Max M4 です。
  • 「PC」
    • パソコン本体のことです。
  • 「ボード」
    • DD Max M4 のことです。
  • 「ケース」
    • PCの筐体のことです。
  • 「リーダー」
    • B-CASカードリーダーのことです。
  • 「ドライバ」
    • 特に言及がないかぎり、DD Max M4 のドライバのことです。「BonDriver」ではありません。
    • B-CASカードリーダーのドライバは、Windowsが勝手に入れてくれたので、説明は不要だと思います。

ハマりポイント

先に、主なハマりポイントを書いておきます。

  • DD Max M4 のアンテナ端子が大きすぎて、ケースと干渉して PCI Express スロットに挿さらず、工夫が必要でした。
  • セキュアブートを切らないと、DD Max M4 のドライバが動きません。
    • Cドライブに BitLocker をかけている人は、回復キー の準備をしておきましょう。
  • アンテナケーブルを接続する端子の位置と、TVTest で選択するチューナーの番号の対応には気を付けましょう。
  • BonDriver がうまく入っていても、TVTest の TSプロセッサー の設定をしていないと、ショップチャンネルQVC ぐらいしか映りません。

目次

環境

  • Windows 10 Pro
    • 64bit版です。
      • 32bit版は、たぶんもう廃止されていると思います。
    • BitLocker が不要なら、家で使うPCは Pro ではなく Home で充分なんじゃないかと思います。
      • PCが盗難に遭ってHDDを抜かれたりする心配がない、とか。
      • 私は Cドライブ に BitLocker を仕込んでいたので、逆にあとで冷や汗をかくことになります。
  • ふつうのPC
    • DD Max M4 を挿すために、PCI Express (PCIe) x1 以上の、フルハイト の空きスロットが1つ必要です。
      • 小型のPCは、PCIeスロットが無いか、あってもハーフハイトのものがほとんどなので、事前によく確認しましょう。
    • B-CASカードリーダー用の USB2.0 ポートも1つ必要です。
      • USB1.1 でも動作するらしいですが、試していません。
    • Core i9SSD、そこそこのグラボ、そこそこのメモリを積んだものを使っています。
      • TS抜きにはあまりマシンパワーは要らないのではと思いますが、最低スペックがどのへんなのかはよくわかりません。
    • 後述のとおり、セキュリティをちょっと下げないといけないので、専用PCが用意できればベストだと思います。
  • 地デジ/BS/CS 放送電波の受信(光回線経由)
    • 光回線経由かどうかはたぶん気にする必要はないと思うのですが、私の環境では こんな感じ に、インターネット用光回線を介して 地デジ/BS/CS を受信しています。 少し費用がかかりますが、悪天候で画面にブロックノイズが入ったりしないのでおすすめです。
  • B-CASカード
    • 私が持っているのはフルサイズなので、後述のリーダーもフルサイズのものを用意します。
  • アンテナ周り
    • 分波器、分配器、アンテナケーブル などです。
    • 分配器について:
      • BS/CS を複数チャンネル同時に見たい場合(視聴しながら録画したい、など)は、BS/CS の信号を、見たいチャンネルの数だけ「分配器」で分配し、DD Max M4 へ接続する必要があります。
      • 詳しいことはよく分かりませんが、ノイズが何々という Amazonのレビュー を見つけました。DD Max M4 には関係ない気もしますが、値段もあまり変わらないので、今から買うなら 3224MHz 対応のものにしておくのが無難なのかもしれません。
        f:id:tekitou_memo:20210517010338j:plain
        4分配器 サンプル

購入 - 4万円ちょっとぐらい

DD Max M4 - テレビチューナーボード

他にもUSB接続で使いやすそうなものや、もっと安いものがあるようですが、最も安定録画できそうな製品を選びました。

  • Digital Devices社
    • DD Max M4 - 4x Multi-Band Tuner TV Card
      • 地デジ/BS/CS どれでも4チャンネル同時受信できるらしいです。私には完全にオーバースペックでしたが、映像が低品質だったりブロックノイズが入ったりすると嫌なので、評判のよいこの製品を選びました。
      • アンテナ端子が5つありますが、真ん中が地デジ用、他はBS/CS用です。
      • 地デジは、真ん中に接続するだけで4チャンネル受信できますが、BS/CSを複数チャンネル受信したい場合は、その数だけアンテナケーブルを接続する必要があります。
      • BS/CS用パラボラアンテナへの電源供給も可能なものの、電圧が海外向けになってしまうようです。私は試していませんが、電源が必要な方は気を付けてください。

メーカーサイトにて、簡単な英語を読めばすぐに買えました。 ボード 251.26ユーロ、後述のPAL→F型変換プラグ 1.26ユーロ(今は購入不要なようです)、送料 28.72ユーロ、計281.24ユーロ = 約37,000円。PayPalで都度払いしました。

ドイツのデュッセルドルフ発送でしたが、DHLでほんの数日で届きました。 「関税 2,800円 と手数料をこのフォームから払って」とメールが届くので、見逃さないよう注意です。

[2021年5月] 地デジ用の端子の形が変わった?

私が買った DD Max M4 は、真ん中の地デジ受信端子が PAL(ヨーロッパ向け) だったのですが、その後Digital Devices社のページを見てみたら F型(日本向け) になっていました。 モデルチェンジしたようです。

私が購入したもの
真ん中がPAL(ヨーロッパ向け)
2021年5月時点
真ん中がF型(日本向け)
f:id:tekitou_memo:20210515224224p:plain f:id:tekitou_memo:20210515224255p:plain

私は PAL→F型 変換のために、Digital Devices社から変換プラグ Adapter Koax-Plug-Male to SAT F-Plug-Female も一緒に1つ購入しました。

f:id:tekitou_memo:20210516000747j:plain
Adapter Koax-Plug-Male to SAT F-Plug-Female

ACR39-NTTCom - B-CASカードリーダー

少し値段が高めですが、初めてで失敗したくないのと、スリープからの復帰にも対応しているという噂を元に選びました。

Amazonで2,380円でした。 見てわかるとおり、フルサイズカード(クレジットカードぐらい)用です。 ミニサイズカード(一昔前のSIMカードぐらい)用のリーダーもあるようですが、私は試していません。

ICチップのリーダーが上部にあるようなので、B-CASカードは「赤い面を下に」して挿します。

B-CASカードリーダー」と書きましたが、正しくは「ICカードリーダライタ」なので、マイナンバーカードなども読めるはずです。

ボードをPCに挿す - 挿さらない

ボード上のアンテナ端子がかなり長く、PCケースに干渉してどうやっても PCI Express スロットに挿さりません。いきなり終わったかと思いました。

ハンダをはがして一番上のアンテナ端子を取り外すか、PCケースのスロット上部の鉄板を切り取らなければならないかと思いました。試行錯誤の末、ブラケットのネジ4本のうち3本をはずして、ガタガタとやっているうちに何とか入りました。

f:id:tekitou_memo:20210511001837j:plain
DD Max M4 が PC に挿さらない

PCの組み立てから始める場合は、マザーボードをケースへ組み付ける前に挿してしまったほうがよいと思います。

アンテナケーブルの接続 - どの端子に繋ぐか注意

DD Max M4 の場合、地デジは何チャンネル同時視聴してもアンテナケーブルは1本だけ接続すればOKですが、BS/CS は、同時に見たいチャンネルの数だけアンテナケーブルも接続する必要があります。 そのため、ボードには最大5本のアンテナケーブルを繋ぐことになります。 ここは一般のBlu-rayレコーダーなどと違う点かもしれません。

また、のちほど視聴アプリ(TVTest)から手でチューナーを選択するので、選択した チューナー の アンテナ端子 に アンテナケーブル が接続されていなければ、BS/CS は映りません。
(地デジは共用なので、1本接続すればどのチューナーでも映ります。)

試した感じでは、ボードの上部(PCIeではない方)から順に、以下のようになっているようです。 「BonDriver_MaxM4_...」については後述します。

  • 1番目の BS/CS チューナー (BonDriver_MaxM4_0 用)
  • 2番目の BS/CS チューナー (BonDriver_MaxM4_1 用)
  • 共用の 地デジ チューナー
  • 3番目の BS/CS チューナー (BonDriver_MaxM4_2 用)
  • 4番目の BS/CS チューナー (BonDriver_MaxM4_3 用)

f:id:tekitou_memo:20210515235831j:plain
DD Max M4 アンテナ端子の配置

ここでは、1番目のBS/CSチューナー と 共用の地デジチューナー の2つの端子にアンテナケーブルを接続しました。

インストール

ACR39-NTTCom

ふつうにUSB接続するだけでOKでした。 ドライバなど何もインストールすることなく、すべてWindowsがよろしくやってくれました。

このあと参考にするいくつかの解説ページでは、WinSCard.dll と SoftCas について触れられていますが、私は今のところ不要なので何もしていません。

DD Max M4

ドライバのインストール - セキュアブートを切らないとだめ

ボードをPCに挿し、リーダーをUSB接続して電源を入れた直後のデバイスマネージャーは、こんな感じです。
(スタートボタンを右クリックして「デバイスマネージャー」を開きます。)

f:id:tekitou_memo:20210511011759j:plain
バイスマネージャー

リーダーは何もしなくても認識しましたが、ボードのほうはドライバが必要なようです。黄色三角の警告アイコンが出ています。

Digital Devices社サイトの Driversページ から、下記をダウンロード&インストールして終了、かと思ったらダメでした。

  • Windows 64-Bit (7, 8/8.1, 10) - Driver Version 3.1.1.248 (from 16.03.2020)
    (DigitalDevices-DVB-Driver-3.1.1.248-x64-en.msi)

PCを再起動しても、デバイスマネージャーからは警告アイコンが消えません。詳細を見ると「このデバイスに必要なドライバーのデジタル署名を検証できません」と出ています。

f:id:tekitou_memo:20210511014226j:plain
DD Max M4 ドライバが動かない

前述の Driversページ に、解説ページ へのリンクがありました。 ドライバに Microsoft の署名が無く、UEFI BIOS の セキュアブート というものを切らないとだめなようです。 セキュリティを落とすのはちょっと怖いですが、仕方なく切りました。

  1. 再起動して [F2] と [Del] を連打し、UEFI BIOS に入ります。
  2. Advanced Menu → Boot → OS Type の Windows UEFI mode を Other OS に変更してセキュアブートを切り、保存して再起動します。
    (セキュアブートを切る方法は、BIOSによって少し違いがあるようです。)
  3. CドライブにBitLockerを仕込んでいたため、Windows起動時に「回復キーを入力するか、セキュアブートを有効にしないとダメ」と言われました。
  4. 画面に従い、スマホを使って aka.ms/myrecoverykey を開きます。
  5. Microsoft Authenticator にログイン認証を送ったからOKしろ、と言われました。 どのスマホにインストールしたのか忘れており、泣きそうになりましたが、何とかOKしました。
  6. aka.ms/myrecoverykey のページに 6ケタx8 の数字が表示されたので、がんばってWindows起動画面に入力します。
  7. 回復キーは合ってると言われて一安心。そのままもう一度再起動が始まります。
  8. Windowsへログインし、デバイスマネージャーを見ると、警告アイコンが消えていました。

f:id:tekitou_memo:20210511024603j:plain
DD Max M4 ドライバが入った
ちなみにこのあと、再起動してセキュアブートを有効化するとまた警告アイコンが現れ、再々起動して無効化すると消えました。 やはりセキュアブートは切っておかないとだめなようです。 なお再々起動のときは、BitLocker回復キーは聞かれませんでした。

受信する電波を選択 - 日本の電波は未設定

ドライバをインストールしただけでは、日本の放送電波を受信する設定になっていません。 スタートメニューから「Digital Devices」の「DDControlCenter」を起動して、受信する電波を選択する必要があります。

f:id:tekitou_memo:20210514024605j:plain
DD Control Center 初期状態

「Tuner」の下の「4-0: Max M4 Tuner 1~4」を見ると、「ISDB-S」(BS/CS) と「ISDB-T」(地デジ) にチェックが入っていません。 この2つにチェックを入れ、逆にその他のチェックはすべて外して「Save」します。これを4つのチューナーで繰り返します。 DD Control Center を閉じると「Reboot required」と出るので、PCを再起動します。

TVTest

テレビの視聴ソフトです。 本来は DBCTRADO 氏作成のソースコードからビルドしなければならないようですが、必要なプラグインまで含まれたビルド済みのものが つくみ島だより 氏により配布されているので、こちらを利用させていただきます。

ダウンロード

下記のサイトから、ビルド済みの一式が入ったzipファイルをダウンロードします。

インストール

インストーラはありません。 手でzipファイルの中身を配置します。

上記の配布サイトには、インストール方法や利用方法も詳しく解説されており、私もこれにならってセットアップしました。 以下、ほぼ転記です。

まず C:\DTV\TVTest\ というフォルダを作成します。
(C:\Users\ や C:\Program Files\ の下ではダメなようです。)

ダウンロードしたzipファイル内の、TVTest_64bit\ の中にある全てのファイルを、ここへコピーします。

次に、Directshowフィルターをインストールするため、エクスプローラで C:\DTV\TVTest\ 内の filter-install.bat を右クリックし、「管理者として実行」します。 「このアプリが...許可しますか?」の確認ダイアログには「はい」をクリックします。 ほどなくして「終了するには何かキーを押してください…」と表示されるので、適当にEnterなどを押して終了します。

もし「フィルタのインストールに失敗しました…」と出た場合は、下記を試してみましょう。

  1. スタートメニュー →「Windows システム ツール」→「コマンド プロンプト」を右クリックし、「その他」→「管理者として実行」をクリックします。(「ユーザーアカウント制御」ダイアログには「はい」をクリックします。)
  2. 「cd \DTV\TVTest」と入力し、[Enter] します。
  3. 「regsvr32.exe TvtAudioStretchFilter.ax」と入力し、続いて [Enter] を入力して、どうなるか見てみます。
  4. ここで「モジュール "TvtAudioStretchFilter.ax" の読み込みに失敗しました。…」と出たら、「Microsoft Visual C++ 2015 再頒布可能パッケージ Update 3」が足りないのかもしれません。Microsoftこのページ から vc_redist.x64.exe を選択してダウンロードし、そのまま実行します。
  5. コマンドプロンプトを閉じ、もう一度エクスプローラで C:\DTV\TVTest\ 内の filter-install.bat を右クリックし、「管理者として実行」します。「フィルタのインストールに成功しました。」と出ればOKです。

ここではまだ TVTest は起動しません。 BonDriver 周りの作業を先に行います。

BonDriver

DD Max M4 のような チューナーボード と、TVTest のような 視聴ソフト の間を取り持つもののようです。 radi-sh 氏が作成したものが高評価のようなので、こちらを利用させていただきます。

ダウンロード

下記の2つのzipファイルをダウンロードします。

下準備 - ファイルの編集が必要

dllファイル のリネームや、iniファイル の作成が必要です。 一時的な作業フォルダとして C:\tmp\ を作成します。

ダウンロードしたzipファイルの中から、下記の2つのファイルを C:\tmp\ へコピーします。 他にもいろいろファイルが含まれていますが、必要になるのはこの2つだけです。

  • BonDriver_BDA-2019-02-02.zip
    • x64\Release\BonDriver_BDA.dll
  • BDASpecial-DD-2019-02-17.zip
    • x64\Release\DD.dll

以下の説明は、双葉ネットワークサービス 代表のなにか 氏の 解説ページ を大いに参考にさせていただきました。 この情報がなければ、私はTS抜きに挫折していたかもしれません。とても感謝しています。 iniファイルの設定が難関なのですが、下記はほぼこちらのページからの転載です。

なお、物理的なチューナーの数だけ dllファイル や iniファイル を用意しなくても大丈夫、という 解説ページ もあったのですが、まずは TVTest での視聴成功を優先し、最小構成はまたの機会に挑戦することにしました。

C:\tmp\ に移動し、先ほど用意した BonDriver_BDA.dll のコピーを3つ作成します。 全部で4つの BonDriver_BDA (- コピー...).dll ができたので、これを下記のとおりにリネームします。

  • BonDriver_MaxM4_0.dll
  • BonDriver_MaxM4_1.dll
  • BonDriver_MaxM4_2.dll
  • BonDriver_MaxM4_3.dll

dllファイル の準備はこれで完了しました。 DD.dll と合わせて、合計5つの dllファイル があるはずです。

次は iniファイル の作成です。 エクスプローラーで C:\tmp\ を開き、右クリックして「テキスト ドキュメント」を作成し、名前を「BonDriver_MaxM4_0.ini」に変更します。 これを メモ帳 などで開き、中身を丸ごと以下の内容に置き換えて保存します。

; 参考: "Digital Devices Max M4でTS抜きライフ | 双葉ネットワークサービス 代表のなにか"
; https://blog.tsurai.work/2019/08/323/

[DD]
DebugLog=NO
SelectStreamRelative=YES
DisableTSMF=NO
LNBPowerOff=YES
GetSignalStrengthFunction="SNR"

[Tuner]
; 以下3行の末尾は、BonDriver_MaxM4_0~3.ini でそれぞれ異なる値を設定します。
;   BonDriver_MaxM4_0.ini → ...1"
;   BonDriver_MaxM4_1.ini → ...2"
;   BonDriver_MaxM4_2.ini → ...3"
;   BonDriver_MaxM4_3.ini → ...4"
FriendlyName0="Digital Devices ISDB-T Tuner 1"
FriendlyName1="Digital Devices ISDB-S Tuner 1"
CaptureFriendlyName0="Digital Devices TS Capture 1"

CheckDeviceInstancePath=0
Name="MaxM4"
UseSpecial="DD"
DVBSystemType0="ISDB-T"
DVBSystemType1="ISDB-S"
NetworkProvider="Microsoft Network Provider"

[BonDriver]
DebugLog=NO
BuffSize=0
MaxBuffCount=512
WaitTsCount=1
WaitTsSleep=100
ThreadPriorityStream="THREAD_PRIORITY_HIGHEST"

[Satellite]
Satellite1SettingsAuto="BS/CS110"

[Modulation]
ModulationType0SettingsAuto="ISDB-T"
ModulationType1SettingsAuto="ISDB-S"

[TuningSpace00]
DD_SelectStandard="ISDB-T"
TuningSpaceName="UHF"
ChannelSettingsAuto="UHF"
ChannelSettingsAutoOptions=""

[TuningSpace01]
DD_SelectStandard="ISDB-S"
TuningSpaceName="BS"
ChannelSettingsAuto="BS"

[TuningSpace02]
DD_SelectStandard="ISDB-S"
TuningSpaceName="CS110"
ChannelSettingsAuto="CS110"

ここから、ちょっと面倒なファイル編集を行う必要があります。 まず、作成した BonDriver_MaxM4_0.ini のコピーを3つ作成します。 全部で4つの BonDriver_MaxM4_0 (- コピー...).ini ができたので、これを下記のとおりにリネームします。

  • BonDriver_MaxM4_0.ini (そのまま)
  • BonDriver_MaxM4_1.ini
  • BonDriver_MaxM4_2.ini
  • BonDriver_MaxM4_3.ini

BonDriver_MaxM4_1.ini を メモ帳 などで開き、下記の3行を書き換えて、上書き保存します。 末尾の「1"」を「2"」にするだけです。

BonDriver_MaxM4_1.ini 変更後

...
FriendlyName0="Digital Devices ISDB-T Tuner 2"
FriendlyName1="Digital Devices ISDB-S Tuner 2"
CaptureFriendlyName0="Digital Devices TS Capture 2"
...

続いて BonDriver_MaxM4_2.ini、BonDriver_MaxM4_3.ini にも同じことをします。 末尾の「1"」を、それぞれ「3"」と「4"」に書き換えます。

BonDriver_MaxM4_2.ini 変更後

...
FriendlyName0="Digital Devices ISDB-T Tuner 3"
FriendlyName1="Digital Devices ISDB-S Tuner 3"
CaptureFriendlyName0="Digital Devices TS Capture 3"
...

BonDriver_MaxM4_3.ini 変更後

...
FriendlyName0="Digital Devices ISDB-T Tuner 4"
FriendlyName1="Digital Devices ISDB-S Tuner 4"
CaptureFriendlyName0="Digital Devices TS Capture 4"
...

ここまでの作業で、C:\tmp\ の下には全部で9個のファイルができているはずです。

  • BonDriver_MaxM4_0.dll
  • BonDriver_MaxM4_0.ini
  • BonDriver_MaxM4_1.dll
  • BonDriver_MaxM4_1.ini
  • BonDriver_MaxM4_2.dll
  • BonDriver_MaxM4_2.ini
  • BonDriver_MaxM4_3.dll
  • BonDriver_MaxM4_3.ini
  • DD.dll

TVTest に入れる

C:\tmp\ に作成した9個のファイルを、すべて C:\DTV\TVTest\ へコピーします。

なお参考にした解説ページでは、BonDriver 関連ファイルは専用フォルダを作成してそこへ入れるのがおすすめということでしたが、簡略化のため私は行いませんでした。
(そのため BonDriver_Pipe.dll などのファイルの場所は、特に何も変更していません。)

(やらなくてもいい) LAV Video Decoder

H.265デコーダ のようです。 これはインストールしなくても大丈夫なようですが、インストールしない場合は、TVTest を最初に起動したときの初期設定画面で「H.265/HEVCデコーダ」の選択が「<デコーダが見付かりません>」になると思います。 入れても害はないようなので、一応インストールしておきます。

インストーラが付いているので簡単です。 下記の exeファイル をダウンロードして実行し、「Next」を数回クリックし、「Install」「Finish」で完了です。

TVTest を使う

視聴

起動

インストールはすべて完了したはずなので、C:\DTV\TVTest\ にある TVTest.exe をダブルクリックして起動します。 「WindowsによってPCが保護されました」というダイアログが出たら、「詳細情報」をクリックし、現れた「実行」ボタンをクリックします。

初期設定

下記のように「TVTest 初期設定」ダイアログが出るので、私は「録画ファイルの保存先フォルダ」だけ変更し「OK」をクリックしました。
もし「H.265/HEVCデコーダ」の選択が「自動」ではなく「<デコーダが見付かりません>」になっていたら、LAV Video Decoder をインストールしていないのだと思います。 これが無くても TVTest は動作するようなのと、後からでも設定できるので、何もしなくても大丈夫です。

f:id:tekitou_memo:20210515211144j:plain
TVTest 初期設定

TVTest が起動すると、しばらくウィンドウ左下に「プラグインを読み込んでいます…」と表示されます。 いよいよテレビが映る!と思ったら、「今すぐチャンネルスキャンを行いますか?」というダイアログに肩透かしを食らいました。

チャンネルスキャン

よく考えたら、市販のチューナーでも最初は電波をスキャン(や、郵便番号を入力してプリセットを読み込みなど)しますね。 はやる気持ちをおさえて、ダイアログにて「はい」をクリックし先へ進みます。

「設定」ウィンドウの「チャンネルスキャン」に進むので、「スキャン開始」をクリックします。
(間違って「OK」で閉じてしまっても、TVTest の真っ黒な画面を右クリックすると「設定」メニューが現れます。)

f:id:tekitou_memo:20210515212112j:plain
TVTest チャンネルスキャン

スキャンが始まります。

f:id:tekitou_memo:20210515212404j:plain
TVTest チャンネルスキャン中

終了後、「40チャンネルのうち...受け付けられませんでした」と出てびっくりしましたが、「受信できるチャンネルが全てスキャンできていれば問題はありません」とのことなので「OK」をクリックします。

さきほどのウィンドウの「チャンネル一覧」が更新され、普通のテレビで見られる地デジのチャンネルがひととおり表示され、チェックも付いています。
つづいて「対象チューニング空間」を「BS」にして「スキャン開始」し、同じことを「CS110」でも行います。 見慣れたチャンネル名が「チャンネル一覧」に表示されます。

f:id:tekitou_memo:20210515213128j:plain
TVTest チャンネルスキャン CS110の例

「OK」をクリックすると、他の3つの BonDriver にも反映させるかを聞かれるので「はい」をクリックします。

f:id:tekitou_memo:20210515213443j:plain
TVTest チャンネルスキャン 他のBonDriverにも反映

しかし、いくら待っても TVTest は真っ黒な画面のままです。 NHKが映らないなら何かがおかしいと思い、右クリックして「チューナー」メニューから「UHF」「BS」「CS110」それぞれの NHK を選択してみますが、まったく映りません。 その他いくつかのチャンネルを試しますがなかなか映らず、また泣きそうになります。 不思議なことに、TVTest のタイトルバーなどには放映中の番組名が表示されるのに、映像や音声は流れてきません。

ショップチャンネルが映るか確認

このステップは飛ばしても大丈夫ですが、BS/CS が視聴できる場合は、まずこれが映るか確認するのがいいと思います。 次に解説する「TSプロセッサー」の設定がされていなくても映るはずです。

TVTest を右クリックし、「チューナー」メニューから「2: CS110」の「55: ショップチャンネル」を選択します。 無料放送なので、NHK が映らなくてもこのチャンネルは映るようです。

映らない場合は、アンテナの接続が何か違うのかもしれません。 上記「アンテナケーブルの接続」を参考にしてみてください。

どうしてもショップチャンネルが映らない場合は、もしかしたらチューナーが壊れているのかもしれません。 BS/CSチューナーは全部で4つあるので、他の端子とチューナーの組み合わせを試してみましょう。 アンテナケーブルを接続しなおしたのち、TVTest を右クリックし、「チューナー」メニューから BonDriver_MaxM4_0~3 を適宜選択します。

TSプロセッサー

前項「ショップチャンネルが映るか確認」は、後付けで書いたものです。
NHK をはじめ、なかなか映像が映らずいろいろさまよっているうちに、CS の ショップチャンネルQVC だけは映ることに気が付きました。
(その他にも、BS の BSスカパー! の無料放送は映ると思います。もしかしたら スカパー!無料の日 には、ショップチャンネルQVC以外の CS のチャンネルも、TSプロセッサー の設定無しで映るかもしれません。)

いろいろ調べると、「ショップチャンネルQVC しか映らない」という 同じ症状の方の質問 が見付かり、TSプロセッサー というものを有効化したら他も映りました!との書き込みを見つけました。 さっそくやってみます。
TVTest を右クリックし、「設定」メニューの「TSプロセッサー」を見ると、「デフォルトモジュール」などが空になっています。

f:id:tekitou_memo:20210515214812j:plain
TVTest TSプロセッサー 設定前

「デフォルトモジュール」には選択肢が2つあり、「B25.tvcas」選択します。
(こちらの 解説ページ いわく、これは 地デジ/BS/CS 用で、スカパー!プレミアム では「SPHD.tvcas」を選択するようですが、私は試していません。)

その下の2つは選択肢が1つしかなかったので、そのまま選択し、「OK」をクリックしました。

もしここで「デフォルトフィルター」に何も出てきていなければ、リーダーがきちんと動作していないのかもしれません。 こちらの 解説ページ によると、Smart Card のサービスがなぜか停止していることもあるようです。スタートメニュー を右クリック →「コンピューターの管理」→「サービスとアプリケーション」→「サービス」から「Smart Card」を探し、もし スタートアップの種類 が「自動 (トリガー開始)」になっていなければ、右クリック →「プロパティ」→「スタートアップの種類」を「自動」にして「OK」してみましょう。
また、Windowsリモートデスクトップ で接続中に TVTest.exe を実行しても、同様の症状になるようです。リモートデスクトップの「ローカル リソース」の「ローカル デバイスとリソース」の「詳細」から「スマート カードまたは Windows Hello for Business」のチェックを外して接続しても、今度は「コンテキストを確立できません。」という別のエラーが出ました。 そもそもあまり必要がないかもしれませんが、リモートデスクトップ 経由での TVTest.exe の実行は難しそうです。

f:id:tekitou_memo:20210515215246j:plain
TVTest TSプロセッサー 設定後

ついに映りました!
地デジ(UHF)、BS、CS、いずれも映りました。

録画 -「TS抜き」に成功!

TVTest の下部「■ <録画>」をクリックすると、視聴中のチャンネルの録画が始まり、もう一度クリックすると停止できます。

「TVTest 初期設定」ダイアログで設定したフォルダに「Record_[年月日]-[時分秒].ts」ファイルが作成されています。 この tsファイル をダブルクリックすると、動画再生アプリが起動し、普通に再生できました。

ついに「TS抜き」に成功しました!

録画した動画は、最初の数秒間、映像や音声が乱れていることがよくありました。 PCは Core i9SSD を積んでいるので、PC側のスペックの問題ではないのではと思います。

録画の「予約」は、TVTest ではできず、他のアプリを使う必要があるようです。

TVTest の音量をしぼっても、録画ファイルには音声もちゃんと入っていました。

録画ファイルの名前に、番組名などを入れることもできました。 TVTest を右クリックし、「設定」の「録画」から「ファイル名」で設定できます。 右にある「▼」をクリックすると、ファイル名として使えるものがたくさん出てきます。

複数起動

あまり必要ないと思いますが、一応できました。
成功をかみしめるべく、ちょっと遊んでみます。

TVTest.exe を複数起動すると「BonDriverの初期化ができません」と出ます。

そのまま「OK」したのち、TVTest の左下「<チューナー>」で BonDriver_MaxM4_0 以外のチューナーを選択し、どこかのチャンネルを選択すれば映ります。 地デジ(UHF)は普通に映るはずですが、 前述のとおり BS/CS のチャンネルは、チューナーにアンテナケーブルを接続していなければ映りません。

次回の TVTest 起動時に使われる設定は、最後に終了した TVTest のもののようです。

まとめ

  1. DD Max M4 や B-CASカードリーダー などなど購入、PCに挿す。
  2. アンテナケーブルを接続。
  3. DD Max M4 はドライバが必要。インストール。
  4. 一緒にインストールされる DDControlCenter アプリで、日本の放送電波を受信設定。
  5. TVTest をダウンロードし、手で展開。起動はせずに BonDriver の設定を先にやる。
  6. BonDriver をダウンロードし、手で展開。ファイル名変更やiniファイル編集などを行う。ここが一番大変。
  7. TVTest を起動。保存先フォルダ、チャンネルスキャン、TSプロセッサー を初期設定。
  8. 視聴成功! 「TS抜き」も成功!

参考サイト

下記以外にも、多くの先人の素晴らしいお知恵や実装を拝借しました。