MTS動画をMPEG4に変換してHDDを節約しようけいかく

仕事で撮った動画が4TB近くに膨らんで、HDDの容量が足りない。
現在2TBのHDDに分散して保存しているが、どの動画がどの場所に入っているかわかりづらい。
4TB以上のHDD1台にまとめたいが、正直ちょっと高い。
バックアップを含めたら2台必要だから、余計にお金がかかる。

いろいろ調べてみると、拡張子MTSの生データをビットレート4000kbpsのmpeg4動画に変換することで、画質はほぼ劣化せずにファイルサイズが三分の一以下に落ちることがわかった。
これなら2TBのHDD1台でも余裕で入る。

問題はエンコード作業。
メイン機が長期間専有されてしまうことは避けたいので、うちのWebサーバに兼業させることにした。
あまりにも重くなるようだったら途中で止めるかも。


以下、作業メモ。

ffmpegでMTS形式の動画をMpeg4形式に変換
ffmpeg -i test.MTS -b:v 4000k -strict experimental -threads 0 test.mp4

□オプション解説

  • i 入力ファイル名を設定する。
  • b 動画部分のビットレートを設定、初期設定は200kbps。
  • strict experimental AAC音声指定
  • threads 0 エンコードのスレッド数。数字で指定。-threads 0 とすると最大限のマルチスレッドを回してくれる。

■HDD内にある拡張子がMTSのファイルのリストを作る
$ find /media/diskpath -name "*.MTS" -fprint result.txt

■ファイルリストを元にffmpegのバッチファイルを作る
1.出来上がったファイルリストを一度Windows機に取り出す
2.EXCELで1列目に「ffmpeg -i 」・2列目にファイルリストをコピペ・3列目に「 -b:v 4000k -strict experimental -threads 0 」・4列目にファイルリストの拡張子をmp4に変えたものをコピペ
3.全選択してテキストエディタにコピペ。タブ記号の除去。先頭行に「#!/bin/sh」をつけて、MTStoMP4.shみたいな適当な名前で保存。

出来上がったバッチファイルをLinuxに戻し、実行権限を与えてから実行。
(書き出し先のHDDの空き容量に注意)

予想処理時間は約1ヶ月。
消費電力予測は約600円。

たぶんうまくいくでしょー。
知恵を使って安上がりに。