Amatsukazeのエンコード時にTVTestで使える番組情報・データ放送・字幕を出力するバッチ

Amatsukazeのエンコード時にTVTestで使える番組情報・データ放送・字幕を出力するバッチ

xtne6f版TvtPlayでMP4再生時に別ファイルに保存されている字幕・PSI/SI・データカルーセルがマージして再生できるようになったので関連ファイルをAmastukazeのエンコード時に作るメモ

バッチファイルにしたので配布してます。
バッチファイルを数年ぶりに書いたもので書式をど忘れしており、動かなかったらごめんなさい。

ダウンロード

使い方は以下の通り

ファイル配置

ダウンロードした圧縮ファイルの中身をAmatsukazeのbatフォルダの中に解凍します。
その後必要なソフトウェア類をtvtdataフォルダの中に配置します。

中に入っているのはダミーファイルですので、以下のところからダウンロードして上書きしてください。

chapter.batについては、空に架かる橋さんの「(1)gen_.keyframe_to_.chapters.txt.bat」をコピーしてバッチファイルの中身にします。

画像のファイルのうち、test_frame_num.txtファイルは初回実行時に自動で生成されますので配置の必要はありません。

Amatsukaze内での設定

いくつかプロファイル設定が必要な部分がありますので画像を参照して設定してください。

赤色が設定必須の部分で水色が設定推奨部分です。

必須項目

出力フォーマットは「MP4」にします。
MKVやTSファイルだと再生時にマージができません。

実行後バッチで「実行後_TVTDATA.bat」を実行するようにします。

「一時ファイルを削除せずに残す」オプションをオンにします。
バッチファイルの実行時に一時フォルダに残っているTrimデータを元にチャプターファイルを生成するためです。
また一時ファイルのフォルダにいくつかチャプターデータの一時ファイルを生成します。
実行後に一時ファイルを削除したい場合はバッチファイル内の設定で削除することもできます。

推奨項目

エンコーダーの追加オプションで最大GOP長を少なめに設定(QSVEncCだと–gop-lenで設定)します。
TVTestではキーフレームが少なめだとシーク時や再生開始時に画像が乱れる時間が長くなります。

「出力選択」では「CMをカット」を推奨しています。
「通常」の場合、Trimデータを使用しないためメタデータの送出タイミングがズレる場合があります。(表示される時刻が多少ズレる程度で問題はありません。)
「本編とCMを分離」では本編部分のみファイルが生成されます。
「CMのみ」ではバッチは正常に走りますが、出力されるファイルがカットされている本編部分のものになるため使用できません。

「字幕を無効にする」にチェックを入れてもvttファイル生成はされます。
Amatsukaze側で処理するSRTおよびASS字幕はチェックのオンオフの通り動作します。

バッチファイル内での設定

「実行後_TVTDATA.bat」の先頭にいくつか設定できる項目を準備しています。

frameは字幕のタイミング調整を行います。
QSVEncCでエンコードした動画をLAV Video Decoderでデコードするときの値に設定してあります。
値を小さくすると字幕が早くなります。(字幕が映像より遅れている場合は小さくします)
値の目安など詳しくはb24tovttのReadmeを読んでください。

delfileを1にすると「一時ファイルを削除せずに残す」オプションの代用になります。

hidefileを1にすると出力された2ファイルを隠しファイルにします。
エクスプローラーで散らかっているときに使ってください。

exepathは通常触る必要はありません。
別の位置にtvtdataフォルダを移動したりリネームしたりした場合に変更します。

注意

元のTSファイルを3回(エンコード開始時、Mux後のvtt・pscファイル生成時に2周)読み込みます。
ネットワーク経由でファイルを読み込む場合、速度に影響するためご注意ください。
また録画時に実行すると書き込み遅延が発生しDropの可能性があります。

ファイルパスが特殊な場合、コマンドが通らないことがあります。

再生に必要なもの

できたファイルを再生する場合TvtPlayの最新バージョンのものが必要です。
プラグイン設定でMP4ファイルを読む設定が必要になります。
詳しくはTvtPlayのReadmeを読んでください。

データ放送を利用する場合、TVTDataBroadcastingWV2が必要です。

字幕を閲覧する場合、TVCaptionMod2などが必要になります。
TSコンテナに詰め直しても家電プレーヤーやテレビなどTSファイルを読めるTVTest以外のデバイスでは文字化けを起こします。