FFmpegの入手
ダウンロードページからffmpeg-git-full.zipをダウンロードします。
解凍して「bin」フォルダにあるffmpeg.exeを使います。
バッチファイル
拡張子を.batにして保存します。
@echo off cd /d %~dp0 :loop if "%~1" == "" goto end ffmpeg.exe -i "%~1" -vf bwdif=1 -c:v libx264 -preset medium -crf 23 -c:a copy -bsf:a aac_adtstoasc "%~dpn1.mp4" shift goto loop :end
使い方
ffmpeg.exeをバッチファイルと同じフォルダに入れます。
TSファイルをバッチファイルにドラッグ&ドロップすると、エンコードが始まります。
複数の場合は順番にエンコードされます。
出力先はTSファイルと同じフォルダです。
エンコード後に画面を閉じたくない場合は:endの下にpause >nulを書いてください。
解説
-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です。
-c:a copy -bsf:a aac_adtstoasc
音声はファイルサイズが小さいので、コピーしています。
カスタマイズ
逆テレシネ
映画やアニメにおすすめです。
インターレース解除の部分を書き換えます。
-vf pullup -r 24000/1001
リサイズ
-s 1280x720
1280×720にリサイズされます。
TSファイルを削除
shiftの上に書きます。
del "%~1"
完全に削除されるので、注意してください。
コメント
いつも記事を参考にさせていただき、助かっています。
ffmpegでの変換も便利に使っているのですが、
ひとつ、NHK(実際には、ブラタモリ)で、番組の前に、ニュースで、
二カ国なんですが、(録画予約で30秒事前に録画開始)、
これをバッチファイルで変換すると、ニュースのところは、二カ国、
ブラタモリが始まると無音になってしまいます。
検索して、二カ国対応で、-dual_mono_mode mainとかも試したのですが、
だめでした。
何か、対応がわかれば、教えていただけると助かりますm(_ _)m
音声コピーだと上手くいかないことがあるかもしれません。
-c:a copy -bsf:a aac_adtstoasc
を-b:a 192k
に書き換えて普通にエンコードするようにしたらどうでしょうか?早速のアドバイスありがとうございます。
試したところ、成功でした!!!\(^o^)/
ffmpegのオプション設定、奥深いですね