0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

PowerShellを利用してmp4を手軽に圧縮する方法

Posted at

SlackやDiscordなどにmp4の動画を共有したいとき、サイズがやたら大きくて困る時がありました。そんなときに役に立つスクリプトを紹介します。

前提条件

圧縮処理にはFFmpegを使用します。FFmpegがインストールされていない場合は、Chocolateyを使って簡単にインストールできます。

# 管理者権限でPowerShellを開き、以下のコマンドを実行
choco install ffmpeg -y

単一の動画ファイルを圧縮する

1つのmp4ファイルを圧縮する場合は、以下のコマンドを使用します:

ffmpeg -i "input.mp4" -c:v libx264 -crf 23 -preset medium -c:a aac -b:a 128k "compressed_output.mp4"

実際の使用例:

ffmpeg -i "講義動画.mp4" -c:v libx264 -crf 23 -preset medium -c:a aac -b:a 128k "圧縮済み_講義動画.mp4"

フォルダ内の全mp4ファイルを圧縮する

フォルダ内にある全てのmp4ファイルを一括で圧縮する場合は、以下のコマンドを使用します:

Get-ChildItem -Filter "*.mp4" | ForEach-Object { ffmpeg -i $_.FullName -c:v libx264 -crf 23 -preset medium -c:a aac -b:a 128k ("compressed_" + $_.Name) }

特定のファイル名パターンに一致する動画を圧縮する

例えば、「lecture」という文字列を含むmp4ファイルのみを圧縮する場合:

Get-ChildItem -Filter "*lecture*.mp4" | ForEach-Object { ffmpeg -i $_.FullName -c:v libx264 -crf 23 -preset medium -c:a aac -b:a 128k ("compressed_" + $_.Name) }

圧縮設定のカスタマイズ

パラメータの説明

  • -c:v libx264: H.264コーデックを使用
  • -crf 23: 品質設定(値の範囲: 0-51)
    • 低い値 = 高品質・大きいファイルサイズ
    • 高い値 = 低品質・小さいファイルサイズ
    • 18-28が一般的な使用範囲
  • -preset: エンコード速度と圧縮効率のバランス
    • 選択肢: ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow
    • 速い = 大きいファイルサイズ
    • 遅い = 小さいファイルサイズ
  • -c:a aac: 音声コーデック
  • -b:a 128k: 音声ビットレート

カスタマイズ例

高品質優先の設定

ffmpeg -i "input.mp4" -c:v libx264 -crf 18 -preset veryslow -c:a aac -b:a 192k "high_quality_output.mp4"

サイズ重視の設定

ffmpeg -i "input.mp4" -c:v libx264 -crf 28 -preset medium -c:a aac -b:a 96k "small_size_output.mp4"

処理速度重視の設定

ffmpeg -i "input.mp4" -c:v libx264 -crf 23 -preset veryfast -c:a aac -b:a 128k "fast_process_output.mp4"
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?