FFmpeg
動画圧縮する場合、ffmpegはパワフルなツールの一つです。
FFmpegとは?
- 公式サイト:https://ffmpeg.org/
- FFmpegは、ビデオ圧縮するオープンソースのツール
- FFmpegは、コマンドラインで操作できる動画変換ツール
テスト作動環境
- PC: MacBook Pro(16-inch,2019)
- OS: Sonoma 14.7.2
- Terminal: zsh
インストール
ターミナルを開き、パッケージマネーシャーのHomebrewを使用してffmpegをインストール
brew install ffmpeg
バージョン確認
ffmpeg -version
使い方
ターミナルで圧縮したいフォルダに移動し、コマンドを入力して使用します。
ffmpeg -i [入力ファイル] [出力オプション] [出力ファイル]
「FabAcademyで紹介されたNeil教授のencoding」は以下の通りです。これらのコマンドは、特にWeb上で効率的にビデオを配信するために、ビデオや音声の圧縮、トリミング、合成、品質設定などの操作を簡単に行うために使用されます。
Niel's encoding
-
HTML5 MP4 ffmpeg encoding
-
codecs
- H.264: good compression, widely supported
- H.265: better compression, less widely supported
-
~megabytes/minute compression for Web
variable bit rate 1080p MP3:
ffmpeg -i input_video -vcodec libx264 -crf 25 -preset medium -vf scale=-2:1080 -acodec libmp3lame -q:a 4 -ar 48000 -ac 2 output_video.mp4
fixed bit rate 1080p MP2:
ffmpeg -i input_video -vcodec libx264 -b:v 1000k -vf scale=-2:1080 -acodec mp2 -b:a 256k -ar 48000 -ac 2 output_video.mp4
no audio:
ffmpeg -i input_video -vcodec libx264 -b:v 1000k -vf scale=-2:1080 -an output_video.mp4
crop size (width:height:xoffset:yoffset):
ffmpeg -i input_video -vf crop=1500:800:200:100 -vcodec libx264 -b:v 1000k -an output_video.mp4
trim time (-ss start time, -t duration):
ffmpeg -i input_video -vcodec libx264 -b:v 1000k -an -ss 00:00:10 -t 00:00:10 output_video.mp4
mix audio and video:
ffmpeg -i input_video -vcodec libx264 -b:v 1000k -vf crop=1120:876:0:100 -i input_audio -acodec mp2 -b:a 256k -ar 48000 -ac 2 -ss 00:00:20 -t 00:00:20 output_video.mp4
crop, pan, composite:
ffmpeg -i input_video_1 -i input_video_2 -filter_complex '[1:v]crop=175:95:930:860[cropout];[cropout]scale=350:190[scaleout];[0:v][scaleout]overlay=10:10[outv]' -map '[outv]' -vcodec libx264 -b:v 1000k -map 0:a -acodec mp2 -b:a 256k -ac 2 -t 00:00:05 output_video.mp4
numbered images to video:
ffmpeg -r 30 -i %04d.jpg -vcodec libx264 -b:v 1000k -vf scale=-2:1080 -an output_video.mp4