Macの音量を数値で知る。オーディオボリュームターミナルコマンド

通常macOSはGUI上(ボリュームスライダーなど)でサウンドのボリューム(音量)を具体的な数値で把握することが出来ないため、ここではサードパーティーのアプリケーションなどは一切使わずにターミナルで現在の音量を数値で取得する方法やターミナル上で音量の変更やミュートを設定する方法をまとめる。

macOSのサウンドボリュームターミナルコマンド

下記の手順は全てターミナルで行うが、全くリスクのないコマンドであるためターミナルに慣れていなくても心配はない。

また、下記の操作によりメニューバーのサウンド音量などもコマンドに合わせて変化する。

現在の音量を数値で取得

現在のサウンド音量を数値で取得する(0〜100)。

osascript -e 'output volume of (get volume settings)'

コマンドを実行すると数値が出るので、その値が現在のMacの音量となる。

音量を指定

音量を数値で指定する。

osascript -e 'set volume output volume 40'

上記コマンドでは音量を40に指定している。

コマンドの「40」という部分に好きな値を0〜100までの間で指定しよう。

音量を7段階で指定

音量を7段階で指定する。

本来は10段階のはずだが現在のmacOSでは下記コマンドの場合、7段階となる。

osascript -e "set Volume 5"

現在サウンドがミュートであるかどうか確認する

現在のサウンド設定がミュートかどうかを確認する。

osascript -e 'output muted of (get volume settings)'

返ってきた値が「false」なら現在ミュートではなく、反対に「true」ならミュート。

サウンドをミュートにする

サウンドをミュートにする。

音量を「0」にしてもミュートになるが、それだと元の音量に戻すのが面倒なためミュートにする場合は下記コマンドを実行しよう。

osascript -e 'set volume output muted true'

サウンドのミュートを解除

サウンドのミュートを解除する。

osascript -e 'set volume output muted false'

Automatorやスクリプトエディタで音量変更のショートカットを作る

前述で紹介した音量を数値で指定する方法を応用し、Automatorやスクリプトエディタにスクリプトを書くことで音量を特定の値に一発で変更するキーボードショートカットやアプリケーションを自分で作ることも可能だ。

例えば下記のスクリプトをAutomatorに貼り付けて「クイックアクション」として保存すればキーボードショーカットで音量を変更できる他、スクリプトエディタでアプリケーションとして保存してDockに追加すればDockのアイコンをクリックするだけで音量を特定の値に変更することが可能となる。

tell application "Terminal"
	activate
	 do shell script "osascript -e 'set volume output volume 40'"
	quit
end tell

上記スクリプトでは音量に24を指定しているが、もちろんここの「24」という値は0〜100までなら好きな値を指定して構わない。

まとめ

恐らくサードパーティーアプリを使えばこのようなターミナルでのコマンドを実行する必要はないだろうが、僕はmacOSの基本機能で可能なことはサードパーティーアプリを使用せずに行いたいため、こういったオーディオ関係のコマンドは特に「現在の音量が具体的にどのくらいなのか?」といったことを知りたい場合に重宝している。