自動CMカットとエンコードを同時に行います。
音声無劣化版です。
準備
join_logo_scpの導入
こちらの記事を参考にしてください。
FakeAacWavに対応
こちらの記事を参考にしてください。
FFmpegの入手
ダウンロードページからffmpeg-git-full.zipをダウンロードします。
解凍して「bin」フォルダにあるffmpeg.exeを使います。
バッチファイル
拡張子を.batにして保存します。
@echo off cd /d %~dp0 rem ループ処理の開始 :loop if "%~1" == "" goto end rem 自動CMカットの開始 call jlse_bat.bat "%~1" rem エンコードの開始 ffmpeg.exe -i "result\%~n1\in_cutcm_logo.avs" -an -vf bwdif=1 -c:v libx264 -preset medium -crf 23 -aspect 16:9 "%~dpn1_tmp.mp4" ffmpeg.exe -i "result\%~n1\in_cutcm_logo.avs" -vn -c:a copy "%~dpn1.wav" bin\fawcl.exe "%~dpn1.wav" "%~dpn1.aac" ffmpeg.exe -i "%~dpn1_tmp.mp4" -i "%~dpn1.aac" -c copy "%~dpn1.mp4" rem 一時ファイルの削除 rd /s /q "result\%~n1" del "%~1.lwi" del "%~dpn1_tmp.mp4" del "%~dpn1.wav" del "%~dpn1.aac" shift goto loop :end
使い方
ffmpeg.exeとバッチファイルをjlse_bat.batと同じフォルダに入れます。
TSファイルをバッチファイルにドラッグ&ドロップすると、エンコードが始まります。
複数の場合は順番にエンコードされます。
出力先はTSファイルと同じフォルダです。
エンコード後に画面を閉じたくない場合は:endの下にpause >nulを書いてください。
解説
-i "result\%~n1\in_cutcm_logo.avs"
in_cutcm_logo.avsを入力ファイルに指定しています。
ロゴ除去しない場合はin_cutcm.avsに書き換えてください。
-vf bwdif=1
インターレース解除です。
1で60fps出力、0で30fps出力です。
-c:v libx264
エンコーダーの指定です。
libx265にすると遅くなりますが、高圧縮になります。
-preset medium
画質と速度のバランスです。10種類あります。
ultrafast
superfast
veryfast
faster
fast
medium
slow
slower
veryslow
placebo
上に行くほど低画質で高速に、下に行くほど高画質で低速になります。
デフォルトはmediumです。
-crf 23
画質と圧縮率のバランスです。範囲は0~51です。
値が小さいほど高画質で低圧縮に、大きいほど低画質で高圧縮になります。
libx264のデフォルトは23です。
libx265のデフォルトは28です。
-aspect 16:9
アスペクト比の指定です。
rd /s /q "result\%~n1"
「result」フォルダに出力されるファイルを削除しています。
必要なら消してください。
del "%~1.lwi"
LWLibavVideoSourceが生成するインデックスファイルを削除しています。
カスタマイズ
逆テレシネ
映画やアニメにおすすめです。
インターレース解除の部分を書き換えます。
-vf pullup -r 24000/1001
リサイズ
-s 1280x720
1280×720にリサイズされます。
TSファイルを削除
shiftの上に書きます。
del "%~1"
ただ自動CMカットは完璧ではないので、エンコード結果を確認してから削除するのがおすすめです。
コメント
このバッチファイルはEDCBで録画後に自動でエンコードはできないのでしょうか?
予約登録画面で「録画後実行bat」にこのバッチファイルを指定しても、変換が始まらないのです。
TSファイルをバッチファイルにドラッグ&ドロップすると、ちゃんとエンコードは始まります。
バッチファイルのどこかを書き換えればできるのでしょうか?
そうですね。書き換える必要があります。
大幅に書き換える必要があるので記事を書いた方がよさそうです。
明日中には書けると思います。
ありがとうございます。
どうぞよろしくお願いします。
ご無沙汰しております
2点ほど質問があります
主音声と副音声が両方混じってエンコードされるドラマがあるのですが主音声だけにできますか?
エンコードされたMP4をTSとは別のフォルダに出力することはできますか?
またアドバイスもらえると助かります
主音声と副音声の件は難しいです。
Amatsukazeなら音声処理は完璧で無劣化なのでおすすめです。
別のフォルダに出力したい場合はshiftの上に以下の行を追加すればできると思います。
Amatsukazeでもやってみます。
ありがとうございました。