ラジオの自動録音(Linuxの場合)

ラジオのイヤホン端子からパソコンに接続して、ラジオ放送を予約録音する方法。

語学番組や気象放送などで定時に録音していきたい場合に便利です。

実行ファイルを作成します。

任意の名前、ここではhogeとして、.shの拡張子をつけてホームなどに保存します。

$chmod +x hoge.sh

としてファイルに実行権限を与えておきます。

ここでは、録音ソフトは、arecordのコマンドを使い、hoge.wavを44kで1200秒録音し、作成されたwavファイルをmp3に変換し軽量化します。

ファイル名には、整理しやすいように作成日時を自動的に付与していきます。

このスクリプトを定期的に実行させるためにcrontabに記述しておきます。

hoge.shの内容は以下のように記述します。

-------------------------------------------------------------------

#!/bin/sh

arecord -f S16_LE -r 44100 -D hw:0 -c 2 -d 1200 -t wav hoge.wav && ffmpeg -i hoge.wav -acodec libmp3lame -ac 2 -ar 44100 -ab 64k -y hoge.mp3

ymd=`date +%Y%m%d(%a)`

mv ~/hoge.mp3 ~/radio/kisyo_${ymd}09:10.mp3 && rm -f ~/hoge.wav

--------------------------------------------------------------------

44k、1200秒のhoge.wavを作成します。

arecord -f S16_LE -r 44100 -D hw:0 -c 2 -d 1200 -t wav hoge.wav

できたwavファイルをmp3に変えます。

ffmpeg -i hoge.wav -acodec libmp3lame -ac 2 -ar 44100 -ab 64k -y hoge.mp3

ファイル名に日時を付与するための定義をします。

ymd(時刻)を20130201(Fri)という形式にしたいときに以下のように定義します。

ymd=`date +%Y%m%d(%a)`

作成されたmp3ファイルを希望の専用フォルダ(/home/radio/kisyo)に移動させます。

このときあらかじめ定義された書式の日時(ymd)をファイル名の変数として記述します。

この場合、9時10分に録音するケースですのでymdのあとに時間を記述しておきます。

mv ~/hoge.mp3 ~/radio/kisyo_${ymd}09:10.mp3

いらなくなったwavファイルを削除します。

rm -f ~/hoge.wav

ターミナルに

$crontab -e

と打ち込んで編集モードにします。

viというエディタのコマンドを使います。

編集モードにするには[a]か[i]を打ちます。毎日9時10分に実行する場合です。

------------------------------------------------

10 9 * * * ~/hoge.sh /dev/null 2&1

------------------------------------------------

保存し終了するには、[Esc][:][wq]と打ちます。

これで実行ファイルを毎日9時10分に実行できます。

入力した内容が間違っていないか確認します。

$crontab -l

写真のように、指定したディレクトリに順次録音ファイルが作成されていきます。

ここでは9:10、16:00、22:00に自動録音しました。