FFmpegでフォルダ内のMP4ファイルの一括圧縮するバッチ処理組んでみた

皆さんこんにちは。松戸市のホームページ制作事務所タドワークスのたーさんです。
今回はFFmpegというコマンドラインソフトウェアを使用して、Windowsの任意のフォルダ内の動画ファイルを一括圧縮して新規フォルダに格納するバッチ処理を組んでみました。シンプルですが便利です。
FFmpegってなに?
FFmpeg は、動画・音声の変換、編集、録画、ストリーミングなどを行うための、非常に強力なオープンソースのコマンドラインツールです。多くの動画編集ソフトや配信ソフトの裏側でも使われています。
主な特徴
1.対応フォーマットが非常に多い
MP4・MOV・AVI・WebM・MP3 など、ほぼすべての動画/音声形式を扱えます。
2.高度な変換機能
- ・解像度変更(例:1080p → 720p)
- ・ビットレート調整
- ・エンコード方式の変更(例:H.264 → H.265)
3.カット・結合などの編集も可能
ffmpeg -ss 00:00:10 -to 00:00:20 -i input.mp4 -c copy out.mp4
4.無劣化コピーも可能
-c copy を使えば、再エンコードせず高速に処理できます。
5.自動化・バッチ処理向
コマンドラインで動くので、フォルダ内の動画を一括変換などが得意。
こんな用途で使われます
- ・動画を MP4 に変換する
- ・動画サイズを小さくする(圧縮)
- ・動画から音声だけ抽出
- ・サムネイル画像を作る
- ・ライブ配信用の HLS/RTMP の変換
- ・複数動画を結合する
導入方法(Windows)
① FFmpeg の ZIP をダウンロード
公式の安定配布サイト:https://www.gyan.dev/ffmpeg/builds/
「ffmpeg-release-full.zip」をダウンロード
② ZIP を展開
例:C:\ffmpeg\ に解凍(フォルダ内に bin\ffmpeg.exe があればOK)
③ パス(環境変数)を通す
検索で「環境変数」を開く
「システム環境変数」→「Path」→「編集」
C:\ffmpeg\bin を追加
④ 動作確認
コマンドプロンプトで
ffmpeg -version
と入力してバージョン表示が出れば完了。
バッチプログラム
下記を「.bat」の拡張子で保存。あとは変換したい動画のあるフォルダにこのファイルを置いてダブルクリックするだけです。
起動後しばらく経過すると「movies」フォルダ内に圧縮された動画ファイルが生成されます。
#保存ディレクトリ生成
if not exist "movies" mkdir "movies"
#動画圧縮処理
@echo off
REM FFmpegのパスを指定(環境変数PATHに登録済みなら不要)
SET FFmpeg=ffmpeg
REM フォルダ内のMP4を1本ずつ圧縮
for %%a in ("*.mp4") do (
echo 処理中: %%a
"%FFmpeg%" -i "%%a" -vcodec libx264 -preset slow -crf 30 -acodec aac -b:a 96k "movies/%%~na.mp4"
)
投稿者プロフィール
- 代表者
-
東海大学工学部を卒業後、東芝情報システム株式会社(旧グループ会社含む)に入社。半導体(SRAM)の開発チームにて、Unix環境でのPerlを用いた業務自動化プログラムの開発など、エンジニアとしての確かな基礎と緻密な論理的思考力を培う。
その後、東証上場企業である株式会社ザッパラスへ。Web・モバイルの最前線で、数多くのユーザーに愛されるコンテンツ制作業務に従事。ここで「ユーザー目線に立った魅力的なWebコンテンツの企画・制作ノウハウ」を深く学ぶ。
開発・システム側から見た「堅牢なロジック」と、制作・ユーザー側から見た「伝わるコンテンツ」の双方を実務で経験した強みを活かし、フリーランスとして独立。
現在は、ウイングアーク1st株式会社の「データのじかん」運営チームに参画するなど、大手・中小企業のWeb運営・開発パートナーとして活動。完全在宅でありながら、固定IPの完備や厳格なセキュリティポリシーの遵守を徹底し、企業のインフラや本番環境を安全に支える「チームの一員」として高い信頼を得ています。
見た目の美しさはもちろんのこと、内部の構造やWordPressのカスタマイズ、運用・セキュリティまでを見据えた、技術的バックボーンのある高品質なWebサイト・システム制作をワンストップでご提供しています。





