システムエンジニアなどと名乗って仕事をしていると、 常日頃、無理難題を突きつけられるもので、今回出されたお題はこちら。
「動画部分の劣化させずに mp4 形式のファイルを avi 形式に変換せよ」
なぜそんな必要があるかはよくわからない(聞く気もない)のですが、 音声部分はどうでもいいらしいのです。
普段、簡単な動画ファイルの作成は HandBrake などの お気軽 GUI ツールを使って、ごくまれにやるときがあるのですが、 HandBrake では、 おそらく再エンコードがかかるような気がしたので、動画部分は確実に劣化します。
そこで調べてみると FFmpeg を使えばできるようです。
FFmpeg は質実剛健な CUI アプリケーションなので、 コマンドラインで、以下のようにすると、 再エンコードなしでコンテナ形式だけを変換してくれるようです。
ffmpeg -i source.mp4 -vcodec copy -acodec copy distination.aviavi 形式で動画が H.264 、音声が AAC って組み合わせがいいのかどうかは知りませんが、 再エンコードしていない証拠にすぐに処理は終わりますし、 また少なくとも VLC media player などで再生はできましたし、 なにより今回の難題の出題元からも文句は来ませんでした v(^^;
ちなみにこの FFmpeg ですが、 ホームページに行っても Windows 用のバイナリは置いてません。
Windows 用の実行ファイルは こちら にあって、 「 Static 」版をダウンロードすればおっけーです。
さらに同梱されている ffprobe と言うコマンドを以下のように使えば、 ファイルのコーデック形式などが確認できます。
ffprobe target.avi以上、次、いつ役に立つかわからないけど、せっかく調べたので備忘録化しておきます。