【自動化】Linux環境で特定の時間になったら音楽を再生する方法(crontab*Linux Mint 20.1 *mpg123)

毎朝、テンションの上がる曲を聞きたい!

目覚まし時計の音って凄く単調でしょぼくないですか。せっかくなら気持ち良い音楽を聞きながらテンションをアゲアゲで一日を始めたくない!?ということで、仕組みを考えました。スマホのアラームで良くないですか?と鋭いご意見を頂きそうです。確かにね。スマホの目覚まし時計を使う方法は有益です。私も以前は、目覚ましアラームアプリを利用していました。しかし、スマホのアプリには致命的な欠点があります。それは電池切れ。夜中に充電を忘れて朝起きたらスマホの電源が切れていたという失敗を何度も経験しました。スマホを信用してはいけない。故に、パソコンを常時起動させる必要があるんです!!

構築環境

  • Linux Mint 20.1
  • mpg123
  • crontab

なぜLinuxを利用するのか?

Windowsのパソコンを24時間稼働していると色々問題が発生します。一番の問題は恐怖のWindowsUpdate。再起動をしないといけない場合が発生するので、今回は古いデスクトップPCにLinuxMintをインストールしてサーバーを作ろうと思います。Linuxは無料なので、導入の敷居が低いです。

コンソールから音楽再生をする方法
mpg123をインストールすると、コマンドラインから音楽を再生することが可能です。例えばmpg123をインストールして好きな曲を流すためのコマンドは下記になります。

インストール方法
sudo apt-get install mpg123

mpg123の使い方
mpg123 曲名.mp3


mpg123 morning.mp3

毎回コマンドを実行するのが手間なので、下記のようなスクリプトを書きました。

$ cat /home/n11/mp3/play_music.sh
mpg123 /home/n11/mp3/sanba.mp3
$

システムタスクのスケジューリング方法(定期実行)

定期的に音楽を流す処理はcrontabというコマンドを利用して実現します。理由は標準でLinuxにインストールされている為です。

crontab -e
0 09 * * * /home/n11/mp3/play_music.sh
※毎朝9時にスクリプトを実行する処理を追加します。

フォルダー内の全ファイルを順番に再生するには*(アスタリスク)を指定して上げて下さい。このように記述するとmusicフォルダーに含まれる全てのmp3ファイルを再生します。

mpg123 /mnt/n11/music/*.mp3