Deep Sky Memories

横浜の空で撮影した星たちの思い出

動画圧縮のトラブル、解決しました

昨日のエントリ「動画の圧縮どうしてます?」で出てきたトラブルですが、解決しました。

トラブルというのは SharpCap で撮った動画を Lagarith Lossless で圧縮したものを元に戻した時に、

  • ファイルサイズが元の3倍になる
  • 元通りのデータにならない(スタック結果が異なる)

の2点です。

結論から言うと、どちらも VirtualDub を使えば解決しました。

圧縮にも展開にも VirtualDub を使います。圧縮は元動画を開いた後、メインメニューから [Video - Compression...] で開いたダイアログから「Lagarith Lossless Codec」を選んで [OK] して、[File - Save as AVI...] から保存するだけです。

展開はひと工夫必要になります。圧縮動画を開いて、メインメニューから [Video - Color Depth...] で開いたダイアログの右側の Output format to compressor/display の一覧から「Grayscale (0-255)」を選択して [OK] します。

https://rna.sakura.ne.jp/share/virtualdub-decompression-color-depth.png

そして [Video - Compression...] の方はリストの一番上の「(Uncompressed RGB/YCbCr)」を選択して [OK] します。この設定で [File - Save as AVI...] から保存すると、元の動画とほぼ同じサイズになります。これはグレースケールの avi なのですが、AutoStakkert! 3 で開くとカラーで撮った動画はちゃんとカラーとして認識されました。

以上の方法で圧縮・展開した動画を AS!3 でスタックした結果を元動画をスタックした結果と比較すると、土星(カラー)、月面(モノクロ)共にバイナリが完全に一致しました。前回一致しなかったのは TMPGEnc Video Mastering Works 5 で何らかのフィルター処理が残っていて無効化できなかったのが原因だと思われます。

というわけでこの件は一件落着です。ちなみに VirtualDub を試す前に Avidemux も試したんですが、こちらは SharpCap の avi を正しく読み込むことができず、フレームのプレビューがノイズのようになっていたので諦めました。

VirtualDubコマンドラインからも操作できてバッチエンコーディングもできるので大量のファイルを自動処理することも可能です。

ということで、今後は Lagarith を使っていく方向に気持ちが傾きつつあります。