🐻‍❄️

macOS の右クリックメニューから WebM を MP4 に変換する

2021/11/22に公開
5

はじめに

macOS の右クリックメニューから WebM を MP4 に変換できるようにしてみる。

ffmpeg をインストールする

WebM から MP4 に変換を行うために ffmpeg コマンドをインストールする。

  1. 「ターミナル」を開く
  2. 「ターミナル」にて下記の brew コマンドを実行する
brew install ffmpeg

Automatorからクイックアクションを追加する

「Automator」から「クイックアクション」を登録して右クリックメニューにて WebM を MP4 に変換できるようにする。

  1. 「Automator」 を起動する
  2. 「書類の種類を選択してください」で「クイックアクション」を選択する
  3. 「ワークフローが受け取る現在の項目」を「ファイルまたはフォルダ」で「検索対象」を「Finder」に設定する
  4. 「アクション」→「ライブラリ」→「ユーティリティ」→「シェルスクリプトを実行」をダブルクリックする
  5. 「シェル」を「/bin/zsh」に変更する
  6. 「シェルスクリプトを実行」の「入力の引き渡し方法」を「引数として」に変更する
  7. 「スクリプトエディア」に下記の内容のスクリプトを記述する
  8. 「ファイル」→「保存」を選択し、名称を入力して保存する。

スクリプト

DIRNAME=`dirname $@`
BASENAME=`basename $@ .webm`
/opt/homebrew/bin/ffmpeg -i $@ ${DIRNAME}/${BASENAME}.mp4

最終的にこのような内容になる

Image.png

おわりに

これで右クリックメニューから WebM から MP4 に変換できるようになります。

2021-11-22 13-08-05.2021-11-22 13_10_12.gif

参考文献

Discussion

ykwsykws

この記事のおかげで、とても快適になりました。
WebM から MP4 への変換なので、ファイル名に .webm が残ってしまうのが気になりました。
せっかくなので、以下のようにして .webm を消してしまっても良さそうです。

  DIRNAME=`dirname $@`
- BASENAME=`basename $@`
+ BASENAME=`basename $@ .webm`
  /opt/homebrew/bin/ffmpeg -i $@ ${DIRNAME}/${BASENAME}.mp4
katzkatz

コメントありがとうございます。スクリプト書きなれていなく妥協していたのですがコメント頂いた内容のほうが良さそうでしたいので記事の更新させていただきました。

RoyryoRoyryo

めちゃくちゃ素晴らしいですね。
インストールしてみたのですが、MacOSが12.6になりディレクトリーが変わってしまったのか
このようなエラーが出ます。

アクション“シェルスクリプトを実行”でエラーが起きました: “zsh:3: no such file or directory: /opt/homebrew/bin/ffmpeg”

Homebrewをインストールする際に下記のような表示が出たので
Roy-MacBook-Pro:~ ryo$ /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Error: The Ruby Homebrew installer is now disabled and has been rewritten in
Bash. Please migrate to the following command:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

最後の1行を実行したところHomebrewはインストールできました。

ffmpegのインストールもできました。
しかしAutomatorで
DIRNAME=dirname $@
BASENAME=basename $@ .webm
/opt/homebrew/bin/ffmpeg -i @ ${DIRNAME}/{BASENAME}.mp4

/opt/homebrew/bin/ffmpeg このディレクトリーが無いと出てる感じですよね・・・。

もしわかりましたらお暇なときにでも教えていただければと思います。

だすだす

私の方にも同様のエラーが起きました。

which コマンドを使うとコマンドへのパスがわかります。
これで出てきたパスに書き換えると良いかもしれません

which ffmpeg

私の環境ではこのように書き換えたら上手くいきました。
/opt/homebrew/bin/ffmpeg/usr/local/bin/ffmpeg

蕎麦と白米蕎麦と白米

無事変換できたのですが、返還したファイルを再生出来ませんでした…