読者です 読者をやめる 読者になる 読者になる

俺の外付けHDD

外付けHDDではなくはてなのサーバーラックの中でした

【PX-W3PE】TVTest0.9.0正式版とxtne6f版EDCBとffmpegで自動エンコしてGoogleフォトに無限保存する環境の導入と設定

はじめに

nyanshiba.hatenablog.com

こちらがDTV関連記事第3弾です。この記事はPX-W3PEベースで書いていますが,ドライバ関係以外は基本的に同じなので是非参考にしてください。私の環境では内蔵カードリーダだと復号漏れが多く,かと言ってスマートカードリーダを使う場合EpgDataCap_Bon.exeにはB25Decoder.dllが必要で,Gitgubにはソースコードが見当たらなかったため,TVRockのようにTVTest.exeで録画できるxtne6f氏最新版EDCBを使ってみました。Twitter連携機能はrubyで代用しました。ここの記事は更新しませんがログとして一応残しておきます。あっ実を言うと見たまま記法が不便でMarkdown記法に移行するために新しく書いただけ。

機能面の違いは以下の通りです。

TVTest0.9.0
・動作が軽い
・キャプ画像を番組名などでフォルダ分けできる
・メモリーキャプチャなるサンプルプラグインが入ってる
xtne6f版EDCB
・動作が軽い
・録画ファイル名を半角にできる
Twitter API1.1(2013年初夏~2017年春現在)に対応(ただし、xtne6f最新版では機能削除されている)
・デザイン面で優れている(ボタンが邪魔じゃない、番組表が見やすい)
※PC電源入れながらアンテナの抜き差しするとチューナーが壊れるのでやめましょう
同軸ケーブルや分波器等は、密林の評価が高くても家電量販店で買うことをオススメします
※マンションなどで地デジとBSのの混合アンテナで、BS/CS側のdBが足りない時は、抜けそうなくらいギリギリまで同軸ケーブルを緩めると映るかもしれないが、素直に分波器を入れましょう
※readmeは必ず読みましょう。
※斧(axfc.net)などから落としてきた誰がうpしたか分からないバイナリにはreadmeの代わりにウイルスが入っていてあなたのPCやあなたが発狂するかもしれないので、今回は全てPLEX公式やGithubで活動している製作者ソースを使います。
※参考までも私の環境
OS:Windows10Home64bit(Anniversary Creators Update適用)
CPU:Intel Core i5-6500
メモリ:8GB
チューナー:PX-W3PE REV1.3

※PX-Q3PEなど別の機種のチューナーの場合少々導入方法が違いますが、ビルド、プラグイン、設定関係は参考になるかもしれません。
※リンクが機能していない場合は、ggって下さい。
※間違った内容になってる場合があるので全て自己責任でお願いします。
※readmeを読んでもggってもどうしても分からない事があったら質問してください、答えられる範囲で答えます。
※柔らかいのとか黒いのとかで違法視聴しないようにしましょう。

※あくまでも自己責任でお願い致します。

見出し

用語解説

TVTest‥‥デジタル放送視聴用ソフトだが名目上はデジタル放送汎用視聴プログラム実装研究資料となっている。最新版は0.9.0。
EpgDataCap_Bon‥‥デジタル放送録画用ソフト。有志の派生版が複数あるが、今回はxtne6f氏版を使用する。
MPEG-2 TS‥‥MPEG-2トランスポートストリームの略。MPEG-2コンテナを送受信するための形式。様々な形式のメディアをまとめて扱える。
TS抜き‥‥コピープロテクト(CCI)をかける過程を無視して↑をそのまま保存すること。著作権保護されていないためキャプったり編集できる。ts抜きはコピープロテクトを解除してるわけではないので合法だが、市販のレコーダー等で解除して保存する行為(アクセスコントロールを解除してリッピングすること)は違法となる。
EPG‥‥Electronic Programming Guideの略。デジタル放送で流れてくる番組情報など。
Scramble‥‥契約者だけが観られるように電波を乱す暗号。B-CASカードで解除できる。正しく復号されてないとブロックノイズが出たり飛んだり真っ暗になったりする。
Drop‥‥tsパケットが抜け落ちること。ブロックノイズが出たり飛んだり真っ暗になったりする。

何が出来るの?

生tsで保存出来るので合法的にダビング10などの縛りを回避できるので、スクショしたり好きなように編集や保存が出来る(ただし私的利用のみ、悪用厳禁)

Twitterで録画通知を受け取れる

Googleフォトを使えば,録り溜めたのに結局HDDが一杯になって消す羽目に…なんてことにならない(アメリカではGoogle自らこういうサービスをやってるっぽい?)

余談だが,PCIExpress接続のPC用TVチューナの中にもTS抜きできないものもあるが,導入は凄く簡単。特にこちらのメーカーは公式の対応が良かった。

更新情報

2017/03/29 ttps://www.axfc.net/u/3791769.txt 非営利目的のみ再配布可能テキスト版を斧にうpしました。

17/03/31 フォルダ構成修正、baseclasses入手方法追記、VS2015のリンク追加、TVTestVideoDecoderの設定修正、ロゴデータの取得方法追記、用語解説追加、参考文献追記、その他言い回し変更、早速辛いのでテキスト版の配布を辞めました
17/04/01 はじめにに追記、BonDriverの構成変更、TvtPlayの設定修正

17/04/02 はじめにに追記、GoogleフォトにtsファイルをQSVで自動mp4エンコードして無制限保存する項を追加、参考文献追記

17/04/03 ブログタイトルに追記、自動エンコバッチを修正

17/04/06 自動エンコバッチを修正、参考文献の項は多すぎて追記が辛くなったので恐縮ながら廃止させて頂きました。はてな記法、はじめました~

17/04/08 自動エンコバッチを修正(たぶん最後)

17/04/11 自動エンコバッチの項にffmpegのオプション例を追加

17/04/15 自動エンコバッチに心配な点があったため一応修正、実際に再構築して分かった共通(旧事前準備)の項の細かな不備を修正,項の階層がバラバラだったのを分かりやすく修正,twitter.dllが正しく機能するようにビルドする項を追加,Creators Updateでの動作確認

17/04/19 ブログタイトル修正,分かりにくい所を修正,自動エンコバッチに追記,Amazonリンク追加

17/04/22 自動エンコバッチの重大な問題を修正しました(被害があったら申し訳ありません,復号漏れ対策の項を追加

フォルダ構成

最初に書いておく。これを参考にビルドしたり落としてきたファイルを配置していけば良い。設定後に現れるファイルもある。

EDCB(xtne6f EDCB-work-plus-s)
┃(\x86\Releaseからコピー)
┃EdcbPlugIn.tvtp
┃EpgTimerPlugIn.tvtp
┃EpgDataCap_Bon.exe
┃EpgDataCap_Bon.ini
┃EpgTimer.exe
┃EpgTimerSrv.exe
┃EpgTimerTask.exe
┃EpgDataCap3.dll
┃SendTSTCP.dll
┃Bitrate.ini
┃BonCtrl.ini
┃Common.ini
┃EpgDataCap_Bon.ini
┃EpgTimerSrv.ini
┃(twitter.dll) ┣BonDriver ┃ (BonDriver_BDAからコピー) ┃ BonDriver_PlexPX_S.dll ┃ BonDriver_PlexPX_S.ini ┃ BonDriver_PlexPX_T.dll ┃ BonDriver_PlexPX_T.ini ┃ (BDASpecial-PlexPXからコピー) ┃ PlexPX.dll ┣Document(\Documentからコピー) ┃ History.txt ┃ HowToBuild.txt ┃ Readme.txt ┃ Readme_EpgDataCap_Bon.txt ┃ Readme_EpgTimer.txt ┃ Readme_Mod.txt ┣RecName(\x86\Release\RecNameからコピー) ┃ RecName_Macro.dll ┃ RecName_Macro.dll.ini ┣Setting(設定、EPG取得、予約登録などをすると出てくる) ┃ BonDriver_PlexPX_S(PlexPX-S).ChSet4.txt ┃ BonDriver_PlexPX_T(PlexPX-T).ChSet4.txt ┃ ChSet5.txt ┃ EpgAutoAdd.txt ┃ RecInfo.txt ┃ RecInfo2.txt ┃ Reserve.txt ┃ EpgData ┗Write(\x86\Release\Writeからコピー) Write_Default.dll Write_OneService.dll
TVTest
┃(\src\Win32\Release\からコピー)
┃TVTest.exe
┃TVTest_Image.dll
┃(\data(又は\data\x64)からコピー)
┃TVTest.chm
┃TVTest.search.ini
┃TVTest.style.ini
┃TVTest.tuner.ini
┃TVTest_Logo.bmp
┃(\doc からコピー)
┃TVTest.txt
┃TVTest_Changes.txt
┃License.txt
┃(TVTestVideoDecoderからコピー)
┃TVTestVideoDecoder.ax
┃(BonDriver_BDAからコピー)
┃BonDriver_PlexPX_S.dll
┃BonDriver_PlexPX_S.ini
┃BonDriver_PlexPX_T.dll
┃BonDriver_PlexPX_T.ini
┃(BDASpecial-PlexPXからコピー)
┃PlexPX.dll
┃(TvtPlayからコピー)
┃BonDriver_Pipe.dll
┃TvtAudioStretchFilter.ax
┣Plugins
┃ (\sdk\Samples\Win32\Release\からコピー)
┃ AutoSnapShot.tvtp
┃ DiskRelay.tvtp
┃ Equalizer.tvtp
┃ GamePad.tvtp
┃ HDUSRemocon.tvtp
┃ HDUSRemocon_KeyHook.dll
┃ LogoList.tvtp
┃ MiniProgramGuide.tvtp
┃ PacketCounter.tvtp
┃ SignalGraph.tvtp
┃ SkinController.tvtp
┃ SleepTimer.tvtp
┃ SpectrumAnalyzer.tvtp
┃ TSInfo.tvtp
┃ TunerPanel.tvtp
┃ (\sdkからコピー)
┃ TVTestSDK.txt
┃ (EDCBからコピー)
┃ EpgTimerPlugIn.tvtp
┃ (TVCaptionMod2からコピー)
┃ TVCaptionMod2.tvtp
┃ (TvtPlayからコピー)
┃ TvtPlay.tvtp
┗Themes
(\data\Themesからコピー)
*.httheme

共通

電源の設定

スタートボタンを右クリック→電源オプション→プラン設定の変更→詳細な電源設定の変更→スリープ→スリープ解除タイマーの許可を有効
これをしないとスリープ復帰で録画ができません。又、S3スリープが出来る状態にしておきましょう。

必要なランタイムを入れる

※2005とか2008とかは要らないと思われるが余分に入れてしまっても問題はない

Microsoft Visual C++ 2005 SP1 再頒布可能パッケージ(x86)
Microsoft Visual C++ 2005 SP1 再頒布可能パッケージ(x64)
Microsoft Visual C++ 2005 Service Pack 1 再頒布可能パッケージ ATL のセキュリティ更新プログラム※同一ページにx86x64両方ありIA64のものは不要
Microsoft Visual C++ 2005 Service Pack 1 再頒布可能パッケージ MFC のセキュリティ更新プログラム
Microsoft Visual C++ 2008 SP1 再頒布可能パッケージ(x86)
Microsoft Visual C++ 2008 SP1 再頒布可能パッケージ(x64)
Microsoft Visual C++ 2008 再頒布可能パッケージ ATL のセキュリティ更新プログラム※同一ページにx86x64両方ありIA64のものは不要
Microsoft Visual C++ 2010 SP1 再頒布可能パッケージ (x86)
Microsoft Visual C++ 2010 SP1 再頒布可能パッケージ (x64)
Visual Studio 2015 の Visual C++ 再頒布可能パッケージ(VS2015に同梱、通常は不要)

Microsoft .NET Framework 4 (スタンドアロンインストーラー)

OSのユーザー名は半角英数字でないとエラーが出る場合があります。
32bit環境では(x64)は不要、64bit環境では(x86)(x64)両方必要。

BDAドライバ(TVチューナーのドライバ)を入れる

http://www.plex-net.co.jp/product/px-w3pe/download.html からBDAドライバをダウンロード。
②ダウンロードして解凍し、「PX_W3PE_BDA」フォルダを開き、OSのアーキテクチャに合ったインストーラーを実行。
③スタートボタンを右クリック→デバイスマネージャー→サウンド、ビデオ、およびゲームコントローラーにほにゃら BDA driverがあればおk。

BonDriver(radi-sh版BonDriver_BDA改)を入れる

※SはBS/CS、Tは地上波用のプラグインです。
https://github.com/radi-sh/BDASpecial-PlexPX/releases からバイナリを入手
②BonDriver_PlexPX_T.ini、BonDriver_PlexPX_S.iniの5行目辺りM2_Dec=0をM2_Dec=1に書き換えて保存(これでスクランブル解除を行う)
https://github.com/radi-sh/BonDriver_BDA/releases からバイナリを入手
④BonDriver_BDA.dllをBonDriver_PlexPX_T.dll、BonDriver_PlexPX_S.dllにリネーム

Visual Studio 2015を入れる

Communityをおすすめします

※Expressの場合2GB、Communityは10GB程あるので注意
https://www.microsoft.com/ja-jp/download/details.aspx?id=48146 からCommunity、又はhttps://www.visualstudio.com/ja/vs/visual-studio-express/ の下の方のExpress 2015 for Windows DesktopをDL

のexeをDL
②ハイハイと進んでいけばおk

Visual Studio 2012を入れる(Twitter連携機能が欲しい方のみ)

※Expressで構わない

https://www.microsoft.com/ja-jp/download/details.aspx?id=34673 からMicrosoft Visual Studio Express 2012 for Windows Desktopインストーラー版をDL

②ハイハイと進んでいけばおk

TVTest

baseclasses入手

https://www.microsoft.com/en-us/download/details.aspx?id=8442 からGRMSDK_EN_DVD.iso(x86でおk)をDL
7-zip等で解凍しWinSDKSamplesフォルダを入手(他は不要)
③C:\DTV\baseclasses\WinSDKSamples のように設置(パスは自由)
④C:\DTV\baseclasses\export のようにフォルダを作る(パスは自由)
⑤以下コマンドを管理者で実行(batファイルとして残しておくと良い)
cd C:\DTV\baseclasses\WinSDKSamples //③のパス
start /wait msiexec.exe /a WinSDKSamples_x86.msi targetdir="C:\DTV\baseclasses\export" //④のパス
⑥C:\DTV\baseclasses\export\Program Files\Microsoft SDKs\Windows\v7.1\Samples\multimedia\directshow\baseclassesを入手し(他は不要)、↓の③へ

TVTest0.9.0正式版ビルド手順

https://github.com/DBCTRADO/TVTest/tree/develop からソースを入手
②TVTest-develop.zipを解凍
③↑の⑥から(WinSDK v7.1の)BaseClasses/*.cppと*.hをTVTest-develop/src/BaseClassesにコピー

④TVTest-develop\src\DirectShowFilter\EVRCustomPresenter\EVRPresenterBase.hの18行目辺り3つとも_vistaを削除してCtrl+S
⑤TVTest-develop\src\TVTest_All.VS2013.slnをVS2015で開く
⑥上のDebugをRelease
⑦右のソリューション'TVTest_All.VS2013'右クリでソリューションの再ターゲット
⑧上のビルドからソリューションのビルド
========== ビルド: 10 正常終了、0 失敗、0 更新不要、0 スキップ ==========になればおk
C:\DTV\TVTest-develop\sdk\Samples\Samples.VS2013.slnも同様にビルド
========== ビルド: 15 正常終了、0 失敗、0 更新不要、0 スキップ ==========になればおk

TVTestVideoDecoderバイナリ入手

(MSは8から有料化、DScalaerが0.9.0には非対応のため)
https://github.com/DBCTRADO/TVTestVideoDecoder/releases からバイナリを入手
TVTestVideoDecoder_0.3.0.7zを解凍

TvtPlay(再生プラグイン)を入れる

録画したtsファイルを再生する時に早送りしたりするためのプラグインです。
https://github.com/xtne6f/TvtPlay からバイナリを入手

②コマンドを管理者で実行,regsvr32 "C:\TvtAudioStretchFilter.axのパス"

TVCaptionMod2(字幕プラグイン)を入れる

字幕を観ないのなら入れなくて構いません。TVCaption、TVSubtitleと試しましたが一番フォントレンダリングが綺麗なTVCaptionMod2が今のところおすすめです。
https://github.com/xtne6f/TVCaptionMod2

TVTestの設定

TVTestでもEDCBのEPGデータを使用したりするので、先にEDCBから設定すると良い

言われたとおりに進むとチャンネルスキャンをしてくれると思います。
最低限やっておくべきものだけ書きます。どんな項目があるのかざっと確認して好みの設定に変えて下さい。
※初回起動時にはカードリーダ:スクランブル解除しない0.9.0にはこの設定項目はありませんでした
※チューナー使用中(録画中など)にTVTestを起動すると、「BonDriverの初期化ができません。」エラーが出る場合がありますが、空いてるチューナーやPipeを選べば問題ありません。
①一般
・デフォルトのBonDriver:指定したBonDriverを選択し、BonDriver_Pipe.dllを選択しておくと、上記エラーが出ることがないので便利。
②キー割り当て
・ チューナー選択や字幕のオンオフ、TvtPlayの早送りなどにショートカットキーを設定しておくと便利。
③映像
MPEG-2デコーダ:TVTest DTV Video Decoder
・映像レンダラ:EVR(字幕プラグイン有効時にチラつく場合はVMR9)
※TVTest本体右クリックでフィルタのプロパティ→映像デコーダ
インターレース解除を行わない:チェック(残像感が無くなります)、DXVA2によるデコードを有効にする:チェック(再起動後有効になる、CPU使用率が下がる)
④音声
・音声フィルタ:TvtAudioStretchFilter(TvtPlayの早送りなどに対応させるため)
⑤録画
・保存先フォルダ:…をを押してお好みに設定してください(私の場合はユーザーのビデオフォルダ)
・ファイル名マクロ:▼を押してお好みに設定してください
⑥キャプチャ
・保存先フォルダ:…をを押してお好みに設定してください(私の場合はユーザーのピクチャフォルダのTVTestフォルダ)
・ファイル名マクロ:▼を押してお好みに設定してください
・大きさは表示されている大きさに設定(元の大きさだと例えば50%で表示中にキャプった時に1920x1080に引き伸ばされて保存されてしまう)
・保存形式:JPEGじゃないとパンクしますが画質に拘るのならPNGにしておくと良いでしょう。
⑦自動でチャンネルスキャンされなかった場合は手動で行ってください。S(BS/CS)とT(地デジ)1つづつスキャンすれば全てのチューナーに反映されます。
EPG/番組情報
EPG情報をファイルに保存する:チェックを外す
・EpgDataCap_BonのEPGデータを利用する:チェックを付ける
EPGデータのフォルダ:EDCBフォルダ\Setting\EpgDataに指定(これによりTVTest側のEPG取得が不要になる)
プラグイン
・TVCaptionMod2.tvtp
設定:映像への字幕合成機能を使うにチェック。WindowsTV丸ゴシックのような外字用フォントがあるとなお良い。縁の太さなどのザインはお好みで。
TVCaptionMod2.iniを開き、Method=3に書き換える。これによりデフォルトキャプチャ機能で字幕もキャプれる。
・TvtPlayの設定
TVTestのPluginsフォルダのTvtPlay.iniをテキストエディタ等で開く。
以下を参考にシークや早送り再生を自分好みに編集。(仕様変更があったりするのでreadmeを読んで下さい。)

TsTryGaplessPause=1 //ギャップなしで一時停止、再生する
SeekA=-15000 //15秒戻る SeekB=-5000 //5秒戻る SeekC=4000 //5秒進む SeekD=14000 //15秒進む SeekE= SeekF= SeekG= SeekH= StretchA= StretchB= StretchC=50 //x0.5倍速 StretchD= StretchE=120 //x1.2倍速 StretchF=150 //x1.5倍速 StretchG= StretchH=800 //8.0倍速 Button00=0,Open //アイコン0、エクスプローラを開く Button01=1,Close //アイコン1、停止 Button02=10,SeekA //アイコン10、シークA Button03=11,SeekB Button04=6,Pause //アイコン6、一時停止 Button05=12,SeekC Button06=13,SeekD Button07='*'0'.'5:30~'*'0'.'5,StretchC //*0.5と表示させてStretchCを指定 Button08='*'1'.'5:30~'*'1'.'5,StretchE //*1.5と表示させてStretchFを指定

TVTest.exeのショートカットを作成し、C:\TVTest_0.7.23\TVTest.exe /tvtplayのように末尾に /tvtplayを追加するとTVTest起動時に自動でTvtPlayプラグインが有効になります。タスクバーに登録する場合は"%AppData%\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar\"

EDCB

xtne6f EDCB-work-plus-sビルド手順(Twitter連携機能が不要な方のみ)

最新でより軽いですが、Twitter機能はありません。ただしTwitter機能が必要不必要に関わらずビルドして下さい。
①https://github.com/xtne6f/EDCB からソースを入手
②EDCB-work-plus-s.zipを解凍
③DocumentフォルダのEDCB_ALL.VS2015.slnをVS2015で開く
④上のDebugをRelease
⑤右のWrite_AVIVOを右クリで削除
⑥上のビルドからソリューションのビルド
========== ビルド: 11 正常終了、0 失敗、0 更新不要、0 スキップ ========== になればおk

xtne6f EDCB-work-plus-150926バイナリ入手(Twitter連携機能が欲しい方のみ)

GUIなどは10.66に近い。API1.1対応のTwitter機能があります。必要ない場合は飛ばしても構いません。EpgDataCap_Bon.exeがないのでどちらにしろ↑のビルドは必須
https://github.com/xtne6f/EDCB/releases/tag/work-plus-150926 からバイナリを入手

xtne6f EDCB-work-plus-150926のtwitter.dllを入手(Twitter連携機能が欲しい方のみ)

↑のtwitter.dllはAPI1.1対応のようですが,うまく動作しないので,そこだけVS2012Expressでビルドします

①予め自動ツイート用のアカウントを作っておく

自動ツイート用のアカウントにログインした状態でhttps://dev.twitter.com/apps にアクセス,アプリケーション登録を行う(Application TypeのアクセスレベルをRead and Writeに変更しておくこと)

③https://github.com/xtne6f/EDCB/releases/tag/work-plus-150926 からソースを入手

④\twitter\twitter.slnをVS2012で開く

⑤右側のソリューションエクスプローラを展開,twitterDef.hを開く

⑥Keys and Access TokensのConsumer Key (API Key)とConsumer Secret (API Secret)を"取得したものを入力してください"に入力して保存して終了

⑦\twitter\twitter\twitter.rcをテキストエディタで開く

⑧2箇所afxres.hをwinres.hに修正,保存して閉じる

#include "winres.h"
~~~~~~~~~~~~~~~~~
2 TEXTINCLUDE
BEGIN
"#include ""winres.h""\r\n"
"\0"
END

⑧再度twitter\twitter.slnをVS2012で開き,上のDebugをReleaseに変更,ビルドからソリューションのビルド

========== ビルド: 1 正常終了、0 失敗、0 更新不要、0 スキップ ========== になればおk

⑨\x86\Release\twitter.dllをEDCBのフォルダに配置

EpgDataCap_Bon.exeの設定

①EpgDataCap_Bon.exeを4つ(チューナーの数)起動。
②それぞれT0、T1、S0、S1を選択しチャンネルスキャンをする。時間がかかるのでその間ににPC内のいかがわしい画像等を削除しましょう
③終わったら目的のチャンネルが表示されていることを確認し閉じる
※BS1,BSプレミアム等が検出できない場合は、チャンネルスキャンのタイムアウト値を大きめに変更する(人柱版10.61.1以降)
BonCtrl.iniをメモ帳などのテキストエディタで開いて編集
ChChgTimeOut
ServiceChkTimeOut
それぞれの値を15~20程度に変更して再度スキャン
④再度EpgDataCap_Bon.exeを起動し設定を開く
⑤基本設定
・保存フォルダ:指定
⑥動作設定
EMM処理を行う:チェック
録画時、字幕データを含める:お好みで(自動エンコする場合はチェックしても意味ない)
最小化時タスクトレイに入れる:チェック(しないと録画時に毎回現れて邪魔)
⑦EPG取得設定、サービス表示設定
EPG取得サービス:マルチ編成(連番や同じ名前)になってるものは一番上を残して削除、絶対に観ないチャンネルや契約していないチャンネルを削除
⑧ネットワーク設定
UDP送信などは使いづらいのでパス。追っかけ再生などはTVTestから直接ファイルを開きtvtplayを使うと良い。

EpgTimerの設定

最低限やっておくべきものだけ書きます。どんな項目があるのかざっと確認して好みの設定に変えて下さい。
EDCB-work-plus-sの場合設定GUIが多少違いますが、EpgTimerSrv設定の中に色々あります。
①EpgTimer.exeを起動し設定を開く。
②基本設定
・保存フォルダ
録画保存フォルダ:指定
スタートアップにショートカットを作成するを押下
・チューナー
それぞれのチューナー数を2(q3peなら4)に書き換える
・EPG取得
EPG取得対象サービス:マルチ編成(連番や同じ名前)になってるものは一番上を残して削除、絶対に観ないチャンネルや契約していないチャンネルを削除
EPG取得開始時間:録画に重ならない好きな時間を最低でも1日1回は指定
③動作設定
・録画後動作
スタンバイ:チェック(録画後自動エンコする場合は何もしないにチェック)
抑制条件:次の予約が何分以内にある時、何分以内にユーザー操作があった時PC使用中とみなしスリープ移行しないようするかを設定
最小化で起動する:チェック
・予約情報管理
イベントリレーによる追従を行う:チェック
録画時のファイル名にPlugInを使用する:チェック
RecName_Macro.dllの設定

$SDYY$$SDMM$$SDDD$_$STHH$$STMM$_$ZtoH(Title)$$ZtoH(SubTitle2)$_$ZtoH(ServiceName)$.ts

(例:170329_0135_けものフレンズ[終] 第12話「ゆうえんち」_テレビ東京1.ts)(ZtoHで全角を半角に)
・ボタン表示
タブの位置に表示:チェック(よりスマートになる)
④番組表
・表示項目
カスタマイズ表示:チェックし、マルチ編成(連番や同じ名前)になってるものは一番上を残して削除、絶対に観ないチャンネルや契約していないチャンネルを削除
⑤外部アプリケーション
・ファイル再生
再生アプリのexeパス:TVTestのパスを通す
コマンドライン引数:/d BonDriver_Pipe.dll /tvtplay /nd /s "$FilePath$" を入力(ぼんどらを指定、BonDriver_Pipe.dllを指定、tvtplayを有効、スクランブル解除しない、複数起動しない)
Twitter連携
予め通知用のTwitterアカウント(鍵が良い)を作っておき、FFになってスマホで通知を受け取る
Twitter連携機能を有効にする:チェック
デフォルトブラウザで通知用Twitterアカウントでログインした状態で認証用URLを取得するを押下
出てきた暗証番号を入力し適応
動作テストしツイートされ通知が来るか確認
有効にするツイート内容を決める(私の場合は録画中の変更検知と録画開始にチェックした、参考までに)

追従:$SDYYOLD$/$SDMOLD$/$SDDOLD$ $STHOLD$:$STMOLD$ ~ $ETHOLD$:$ETMOLD$ → $SEYMDHMNEW$ $TitleNEW$ $ServiceNameOLD$
録画開始:$SDYYNEW$/$SDMNEW$/$SDDNEW$ $STHHNEW$:$STMMNEW$~$ETHHNEW$:$ETMMNEW$ $TitleNEW$ $ServiceNameNEW$ 

 (例:録画開始:17/3/29 01:35~02:05 けものフレンズ[終] 第12話「ゆうえんち」 テレビ東京1)
⑥最後にEPG取得を押下して完了

EDCB録画予約の仕方

例1:アニメ全録
検索キーワードに半角スペース、ジャンル絞込で国内アニメを追加、映像サービスのみ、検索、自動予約登録条件に追加
例2:今期アニメ毎週録画
正規表現モードにチェック、検索キーワードに(うらら迷路帖|けものフレンズ|幼女戦記|クズの本懐~)など、ジャンルを国内アニメ、チャンネルをTBS、テレ東、MX、検索、自動予約登録条件に追加
※アルファベットは大文字、スペースが入るものはスペースの前か後のワードで頑張らないといけないのは10.66

復号漏れの対処法

私の環境では内蔵カードリーダを使うとどうしてもScrambleが増えてしまう(これはあくまでも復号漏れの話であって,全く復号できてない場合は何かを間違えています)。同様な場合は外付けカードリーダで解決できる。どうやらハード側の問題らしい。

ただ,残念なことに

TVTestでは

・CasProcessor.tvtp

・TVCAS_B25.tvcas

EDCBでは

・B25Decoder.dll

が必要になるので注意。

↓みんなが使ってるのはこれ。ちょっと割高。

↓私が使ってるのは↑の2世代新しい後継機。お手頃だが問題なく使えている。

録画ファイル管理

GoogleフォトにtsファイルをQSVで自動mp4エンコードして無制限保存する

録画したtsファイルはSSDやHDDを圧迫していくので、外付けHDD等に貯めるのもよいですが、私はGoogleフォトを重宝しています。一応生ts(m2ts)もうp出来ますが、うp速度は遅く、通信量が多いため視聴も重く、何と言ってもGoogleに対して迷惑でしかない(onedriveの容量無制限廃止はDTV民が原因らしい)ので、せめてmp4にエンコードすることをオススメします。
aviutlも試しましたが、CUI向きではなく、QSVでも遅い(品質重視)ので、ffmpegを使います。

※基本的にPCを起動しっぱなしにすることをオススメします。

https://photos.google.com/apps からGoogle Photos BackupをDLしてインスコ

https://ffmpeg.zeranoe.com/builds/win64/static/ からffmpegの最新版バイナリを入手

③バッチファイルに以下のように記述

これをそのままコピペして、ディレクトリ名だけ変えれば一応使えるはず。ただしQSVが使えない場合は下記オプション参照。

※パスにスペース等が入る場合は""で囲うことを忘れずに

※録画後実行batから実行された場合にのみ稀にDevice Faildとなり、同じtsファイルを再度エンコしても再現できず、失敗原因が分からない。同じ症状の記事を見かけたことも踏まえ、録画終了時ビジーだったためでした。orEDCBの仕様のどちらかだとは思うが…原因が特定できたら追記する。取り敢えず上手くエンコできなかった場合のんびりループして朝まで待ってくれるようにした。

複数同時録画している時に多い(ただし必ずではない)ことから、原因は録画後CPU使用率が跳ね上がった瞬間に割り込めなかった(ffmpegの仕様上、CPUのキャパを超えたながらエンコや同時エンコはDevice Faildとなり出来ないようになっている)ためだと思われる。よって、ループさせることによって回避できる。

:ENCODE
:録画終了直後のビジー時を避けるため,無限ループになってしまった場合,負荷を減らすために30秒待つ
TIMEOUT /T 30 /NOBREAK
:カレントディレクトリを一時的にmp4を吐き出すフォルダに指定
cd C:\DTV\MP4
:ディレクトリ内の拡張子が.mp4のファイルを削除(失敗mp4が残っていれば削除する)
del *.mp4
:カレントディレクトリをffmpegのあるディレクトリに指定
cd C:\DTV\ffmpeg\bin
:インターレース解除、QSVエンコ(使用できる場合,下記参照)、映像ビットレート2500k、解像度720p、音声ビットレート128k(このくらいが観られる限度だと思いますがお好みに)、二重音声処理(これをしないとニュースとかで左日本語右英語みたいになっちゃう、英語の勉強には良いかも)、一時的にmp4を吐き出すフォルダに書き出す(Google Photos Backup用フォルダに直接書き出すと上手くうpできないため)
C:\DTV\ffmpeg\bin\ffmpeg.exe -i "$FilePath$" -vf yadif=0:-1:1 -c:v h264_qsv -b:v 2500k -s 1280x720 -c:a aac -b:a 128k -filter_complex channelsplit "C:\DTV\MP4\$FileName$.mp4"
:ファイルサイズが0バイト以外だったら次に進み、0バイトだったらループ(録画後のCPU使用率が原因なので繰り返せば成功するはず)
FOR %%F IN ("C:\DTV\MP4\$FileName$.mp4") DO IF %%~zF EQU 0 GOTO :ENCODE
:カレントディレクトリを一時的にmp4を吐き出すフォルダに指定
cd C:\DTV\MP4
:出来たmp4をGoogle Photos Backup用フォルダに移動
move "C:\DTV\MP4\$FileName$.mp4" C:\DTV\Google_Photos
:カレントディレクトリをTS保存フォルダに指定
:cd C:\DTV\TS
:元TSを削除(しばらく試して大丈夫だったらコメントアウトを外しても構いません)
:del "$FilePath$"
:確認用にpauseを使っても良いですがEDCBが順番に1つづつバッチ処理を行う仕様上詰まってしまうのでコメントアウト
:pause

④ffmpeg.bat(ファイル名はお好みで)をEDCBのフォルダ(でなくてもおk)に配置
⑤EDCBの録画後実行batにパスを通す

⑥前回前々回エンコしたうp済みmp4を毎日タスクスケジューラで削除する。うpが全て終わりそうな時間帯(朝とか)に設定すると良い。以下コマンドを記述したバッチファイルをGoogle Photos Backup用フォルダに配置。(以前は↑のバッチの最初に削除を実行していたのですが,Google Photos Backup用フォルダに短時間に複数のmp4が投入された際,順番にアクセスする仕様になっているようで,他のファイルを誤って削除してしまうという事態が発生したので…ああ…再放送…終わってた…楽しみだったのに…うわあああああああああ)

del *.mp4

※ここにffmpegのオプション例をいくつか挙げておきます。分かりにくいんだよな…

↓上記設定

ffmpeg.exe -i "$FilePath$" -vf yadif=0:-1:1 -c:v h264_qsv -b:v 2500k -s 1280x720 -c:a aac -b:a 128k -filter_complex channelsplit "C:\DTV\MP4\$FileName$.mp4"

↓ハードエンコ(h264_qsv)ではなくソフトエンコ(libx264)する

ffmpeg.exe -i "$FilePath$" -vf yadif=0:-1:1 -c:v libx264 -b:v 2500k -s 1280x720 -c:a aac -b:a 128k -filter_complex channelsplit "C:\DTV\MP4\$FileName$.mp4"

ビットレート4000k、(1080p)、音声エンコなし、二重音声処理なし

ffmpeg.exe -i "$FilePath$" -vf yadif=0:-1:1 -c:v h264_qsv -b:v 4000k -c:a copy "C:\DTV\MP4\$FileName$.mp4"

↓D&Dでエンコ

ffmpeg.exe -i %1 -vf yadif=0:-1:1 -c:v h264_qsv -b:v 4000k -c:a copy "C:\DTV\MP4\%~n1.mp4"

Googleフォトのアルバム機能を使うか、Googleドライブの「Googleフォト」タブに表示されます。自動でgoogleドライブのgoogleフォトフォルダに追加するように設定してあげれば,暇な時に番組名で検索したり一括でフォルダ分けできます。ただし,うpしてから表示されるまでにGoogleフォトよりもタイムラグが大きい。

※エンコ後2GBを超えるファイルは更にビットレートや解像度を下げるなり、手動でエンコさせるなり、自動予約登録を分けて別のフォルダに書き出した後ブラウザでうpするなりしてください。

Googleフォトを使わなくとも,自分のHDDに保存しても良い。その場合はcdコマンドだと上手くいかないはずなので注意

Googleフォトにtsファイルを無劣化無制限保存する

オススメはしませんが、一応~1080pの動画で2GB以内ならGoogleフォトバックアップ(常駐アプリ)で、10GB以内ならブラウザ版Googleフォトでアップロードできます。
確認した中ではmkv、m2ts、mpgは再エンコードされないので、マクロで設定するかren *.ts *.m2tsなどで変更して(.mpgではTVTestで再生できないので不便)アップロードして下さい。
ただし、リンクを共有したらOUTですし、OneDriveの二の舞にならないように節度を守って使いましょう。

おわりに

ひとこと

すぐ投げ出したり人に頼ろうとはせず、readmeを熟読するなりネットの記事や2chを漁ったりして頑張りましょう。
有志の開発者の皆様、深く感謝しています。