「VLC Media Player」を使って動画をMP4形式に変換

NASに保存されたまま何年も放置された動画ファイルが容量を無駄に喰っているのが気掛かりだったので、整理を図ることにしました。

サクッと視聴して削除…と行きたところですが、大半が「WMV」形式なためスマホやテレビで見ることが出来ずなにかと不便そうなので汎用性のある「MP4(H.264/AAC)」に一括変換。

動画の変換にはこれまで「Handbrake」を利用してきましたが、最近は「VLC Media Player」がお気に入り。動画再生ソフトとして知られる同ソフトですが、意外に使える変換機能を有しており最適なビットレートがよく分からない…といった場合にも画質の劣化とファイルサイズを最小限に抑えた自動設定を行ってくれるので大変便利です。

VLC media player - 「VLC Media Player」を使って動画をMP4形式に変換

ただ、GUIからの操作では複数ファイルの一括変換が出来ないようなので、下記のようなバッチファイルを作って対処。

@echo off
setlocal enabledelayedexpansion

for %%f in (%*) do (
  call :DUPCHECK %%f
  echo ^(IN^) %%~nxf ^(OUT^) !file!

  "C:\Program Files (x86)\VideoLAN\VLC\vlc.exe" -vvv "%%~f" --sout-avcodec-strict=-2 --qt-start-minimized --sout=#transcode{acodec=mp4a,ab=128,channels=2,samplerate=44100,vcodec=h264,deinterlace}:standard{access=file,mux=mp4,dst="!file!"} vlc://quit
)

pause
exit

::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
:DUPCHECK
::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
for /L %%i in (0,1,10) do (
  if %%i equ 0 (
    set file=%~n1.mp4
  ) else (
    set file=%~n1 ^(%%i^).mp4
  )
  if not exist !file! exit /b
)
exit /b

バッチファイル上に変換したい動画ファイルをまとめてドラッグ&ドロップするだけでMP4ファイルの出来上がり。VLCで再生可能なファイル形式であればWMV以外にも広く対応可能です。

ちょっとだけ技術的な補足

上記バッチでは、VLC Media PlayerのGUIが都度々々起動して処理が行われるので、変換状況はそちらで確認出来ます。

「-I Dummy」オプションを付けるとコマンドラインだけに閉じた処理が行えるのですが、どうもGUIとCUIで変換処理が異なるらしく左記オプションが付くと途中で処理がコケたり音声のないファイルが出来上がるケースがあったので外してます。

    この記事へのコメント

    メールアドレスが公開されることはありません。

    頂戴したコメントは管理者に承認されるまで表示されません。