ffmpegを使用して、20個以上の.aviファイルをバッチで変換しようとしています。
私は次のものを持っています
@echo off.
for file in *.avi
do
ffmpeg -i "$file" -s 640x480 -vcodec msmpeg4v2 "'basename "$file" .avi'.mpg';
done
私の.batファイルでそれは動作しません。Windows OSで動作させるにはどうすればよいですか。ああ、はい、すべてのファイルは同じフォルダーにあります。
私が得るエラーメッセージ:
現時点ではファイルは予期しないものでした
そして、それについて正確に機能しないものは何ですか?
—
slhck
cmdが非常に速く消えるため、エラーメッセージを取得する方法を教えていただければ、問題の原因をお知らせできます。
—
ダリウス
前にコマンドウィンドウを開いて([スタート]»[実行…]»
—
-slhck
cmd
)、そこから完全なパスを使用してバッチファイルを実行する必要があります。あなたは実際にビデオで何をしたいですか?これらはどのようなビデオですか?それらをMPGコンテナーに移動するだけですか?または、サイズを変更する必要がありますか?または、msmpeg4v2
コーデックが特に必要ですか?
ファイルはDVRから取り出され、1GB以上の5分間のクリップです。はい、DVRソフトウェアは圧縮時に哀れです。コーデックが機能するのは、1GBのファイルから約7MBのファイルを取り、管理しやすいためです。そして、そのバッチを実行しようとすると、「この時点でファイルは予期しないものでした」というメッセージが表示されます。
—
ダリウス
そうですか。結果のビデオコーデックとコンテナを気にしない場合は、代わりにエンコーダとしてx264を使用することをお勧めします。これにより、MPEG-4よりもはるかに優れた品質が得られます。このコマンドは
—
-slhck
ffmpeg -i input.avi -c:v libx264 -crf 23 -s 640x480 output.mp4
、CRF値が品質を設定するようなものです(19から24までの値がより良い、より悪い、正気の値)。参照:古いビデオをより小さなサイズに変換します。.MOVファイルのサイズを小さくするには