xshoji's blog

Macの画面録画を右クリックから簡単にエンコードできるようにするTips

#mac #video #ffmpeg #handbrake #automator

自作のツールの動きを見せたい時や、動作の証跡を残したい時などにMacの画面録画機能で動画を撮ることがあります。ただ、Macの録画機能で撮影された動画はそのままだと結構重いので、SlackやGithubに載せるとなるとエンコードしないとそのままでは扱いづらいです。ターミナルからコマンドを思い出して、ffmpeg等でエンコードすれば良いのですが、できればもっと簡単にサクッとやりたいです。

そこで今回は、Macで画面を録画した後、その動画ファイルの右クリックメニューからサクッとエンコードしてお手軽にデモ動画を作る方法を紹介します。

そもそもMacならデフォルトで右クリックからエンコードできるんじゃないの?

と思った方。その通りです。なので、エンコードにこだわらない場合は、この記事の方法を使う必要はありません。ただ、この記事の最後にMac標準の方法でエンコードした場合とのサイズ比較を載せてますが、HandBrakeCLI等のツールでエンコードした方がより高圧縮で画質も良いのでこの記事で紹介する方法も覚えておくと良いと思います。

準備するもの

  • エンコーダー(ffmpeg, HandBrakeCLIなど)
  • Automatorによるクイックアクション
  • 画面録画した動画ファイル

それぞれ順番に説明していきます。

エンコーダーのインストール

ここでは、手軽に使えるHandBrakeCLIを使う方法を紹介します。Homebrewで簡単にインストールできます。

brew install handbrake

これでインストールできます。

インストールが完了したら

HandBrakeCLI --version

でインストールできていることを確認しましょう。

Automatorでクイックアクションを作成

次に、Automatorを使って右クリックメニューからエンコードできるようにします。

Macに標準でインストールされている Automator を起動します。

ここでもしファイルを選択するような画面になっていたら、一旦閉じて大丈夫です。(初回起動だとこの画面になると思います)

閉じたら、メニューバーの「ファイル」->「新規」->「クイックアクション」を新規作成します。

画面の左から二列目あたりのクイックアクションの種類の中から「シェルスクリプトを実行」を選択し、以下のコードを貼り付けます。

for f in "$@"
do
  # 環境によっては /opt/homebrew/bin/HandBrakeCLI にインストールされているかもしれません
  /usr/local/bin/HandBrakeCLI --preset "Fast 1080p30" -i "${f}" -o "${f%.*}_encoded.mp4"
done

この時、クイックアクションメニューを以下のように設定することを忘れないようにしてください。

設定できたら「Encode Video」などで保存します。

この後登場しますが、この時点で動画ファイルを右クリックすると、「クイックアクション」のメニューの中に「Encode Video」が表示されるようになります。

2025-12-27(土) 追記

このスクショを見て気づいたんですが、Mac標準の「ビデオをエンコード」も同じように右クリックメニューから実行できるんですね。知りませんでした。こちらはHandBrakeCLIではなく、Mac標準のエンコード方法で動画を圧縮します。なので、特にこだわりがなければこちらを使うのもありです。ただ、最後に載せているサイズ比較を見るとわかる通り、HandBrakeCLIの方が圧倒的に高圧縮で画質も良いので、普段使うならこの記事で紹介する方法を強くオススメします!

画面録画して動画を作成

あとは、Macの画面録画機能で動画を作成します。ショートカット Shift + Command + 5 を押すと画面録画のメニューが表示されるので、全画面録画や選択範囲録画などを選んで録画を開始します。

エンコードする

録画が終わったら、保存された動画ファイルを右クリックし、「クイックアクション」->「Encode Video」を選択します。

そうすると、先ほどAutomatorで作成したクイックアクションが実行され、エンコードされた動画ファイルが同じディレクトリに保存されます。ファイル名は元のファイル名の末尾に _encoded.mp4 が付与された名前になります。ちょうど以下のような感じです。

$ ls -al
total 16344
drwxr-xr-x  4 user  wheel      128 12 24 02:13 .
drwxrwxrwt  7 root  wheel      224 12 24 02:13 ..
-rw-r--r--@ 1 user  wheel  6264075 12 24 02:13 video.mov
-rw-r--r--  1 user  wheel  1231050 12 24 02:13 video_encoded.mp4

クイックアクションの保存場所

ちょっとわかりにくいですが、先ほど作成したクイックアクションの保存先は

  • /Users/user/Library/Services/Encode Video.workflow

になるようです。もしクイックアクションを編集したい場合は、ここに移動してダブルクリックすればAutomatorで開けます。

エンコードする際の画質を調整したい(HandBrakeCLIの場合)

クイックアクションのスクリプトで指定してる

--preset "Fast 1080p30"

の部分を変更すると任意のプリセットに変更できます。HandBrakeCLIで利用できるプリセットは以下のコマンドで確認できます。

HandBrakeCLI --preset-list

この記事で紹介してるもの含めておすすめの設定を載せておきます。

  • Fast 1080p30: そこそこ画質が良くて程よく圧縮率が良い設定
  • Fast 576p25 : 画質は落ちるけどサイズを小さくしたい時おすすめ

Mac標準のエンコード方法とのサイズ比較

Mac標準の機能でエンコードもできるようなので、その方法とのサイズ比較してみました。 条件は以下のとおりです。

  • 元動画
    • Macで録画した動画ファイル
    • 14,295,285 bytes (約14.3MB)
  • エンコード方法
    • Handbrake H.264: --preset "H.264 MKV 480p30"
    • Handbrake H.265: --preset "H.265 MKV 480p30"
    • Handbrake VP9: --preset "VP9 MKV 480p30"
    • Handbrake AV1: --preset "VP9 MKV 480p30" -e svt_av1 --encoder-preset 8 -q 30
    • Mac標準の「ビデオをエンコード」
  • エンコード後の解像度
    • 480p
    • 720p

結果は以下のとおりです。

480pの場合

  682824 Dec 27 02:03 handbrake_01_av1_480p30.mp4
  904835 Dec 27 02:12 handbrake_02_vp9_480p30.mp4
 1493064 Dec 27 02:04 handbrake_03_h265_480p30.mp4
 1212966 Dec 27 02:04 handbrake_04_h264_480p30.mp4
 3798201 Dec 27 01:58 mac_standard_h264_480p.mov
14295285 Dec 27 01:03 original.mov

720pの場合

 1401689 Dec 27 01:57 handbrake_01_av1_720p30.mp4
 1543427 Dec 27 01:57 handbrake_02_vp9_720p30.mp4
 3122819 Dec 27 01:57 handbrake_03_h265_720p30.mp4
 2220672 Dec 27 02:14 handbrake_04_h264_720p30.mp4
11528655 Dec 27 02:09 mac_standard_720p.mov
14295285 Dec 27 01:03 original.mov

これらの結果より、HandBrakeCLIでエンコードした方が圧倒的にサイズが小さくできていることがわかります。特にAV1やVP9は非常に高圧縮なので、動画のサイズを小さくしたい場合にはffmpegやHandbrakeでエンコードするのがやはり良さそうであることがわかりました。

おわりに

今回は、Macで画面録画した動画を手軽にエンコードしてデモ動画を作成する方法を紹介しました。Automatorのクイックアクションを使うことで、Macの標準でついてるエンコード機能のように右クリックメニューから簡単にffmpegやHandbrakeCLIで動画をエンコードできるようになるので便利です。ぜひ試してみてください。