FFmpegは動画と音声を記録・変換・再生するためのフリーソフトウェアです。コマンドラインから使用することができますが、C#でこれを制御してみることにします。

ffmpegを使います。ここからダウンロードしてください。

Releases ・ BtbN/FFmpeg-Builds ・ GitHub

Zipファイルを解凍したらbinフォルダのなかにあるffmpeg.exeを実行ファイルがあるフォルダにコピーします。または任意の場所に保存してパスを通しておいてください。

動画の切り出し

これはDドライブにあるabc.mp4の5秒から10秒間を切り出してxyz.mp4という名前で保存するためのコードです。

動画の結合

動画を結合するときは以下のようなテキストファイルを作成します。このときlist.txtと動画ファイルがあるフォルダは同じでなければなりません。絶対パスを指定するとUnsafe file name ‘パス’というエラーが出ます。このエラーの回避策は一応あるのですが、ここではすべて同じフォルダにある場合の解説のみをおこないます。

list.txt

d:\list.txtというテキストファイルを用意して結合処理を行なうのであれば以下のようになります。