Raspberry PiでBluetoothスピーカーでradikoを楽しむ、Dropboxで iPhoneと連携!
“Raspberry PiでBluetoothスピーカーが使えるのか格安スピーカー実践で検証してみる”
“Raspberry PiでBluetoothスピーカーでradikoを楽しむ、勿論 iPhoneと連携!”の続きです。
千円で買った“Bluetooth スピーカー ZENBRE M4 超小型 ワイヤレス ぶるーつうすスピーカー 8時間再生 高音質 低音強化 マイク搭載 AUX対応 車載/ポータブル ブルートゥーススピーカー (ブラック)”を使ってラズパイで”radiko“を聴けるようになったので、その続編ということで、お気に入りのラジオ番組を自動的に”Dropbox“にアップロードし、後でiPhoneでゆっくり楽しむ仕組みを作ってみようと思います。なお、最初にお断りしておきますが、録音した番組の内容は著作物ですので、個人で楽しむ範囲にその利用が限定されます。その辺りをご理解のうえ、今回のTALKをご覧下さい。
< Dropboxアプリケーションの登録 >
“radiko“の話に入る前に、録画したラジオ番組を”Dropbox“にアップロードするために必要となるアプリケーションの登録手続きを行います。なお、アプリケーションの登録に先立ち、”Dropbox“のアカウントでログインを済ませておいて下さい。
https://www.dropbox.com/developers/apps にアクセスして、”Create app”ボタンをクリックして下さい。(ラズパイ環境以外でも操作可能。)
1, 2項目は写真の通り選択し、”3. Name your app”欄に適当なアプリケーション名を入力して下さい。既に使われてる名称はNGです。
続けて、”Create app”ボタンをクリックして下さい。
作成したアプリケーションの画面に切り替わりますので、”OAuth 2″欄の”Generated access token”項目にある”Generate”ボタンをクリックして下さい。
表示された英数字の羅列をメモして下さい。後ほど必要になります。
< Dropboxのアップロード用スクリプトの準備 >
ラズパイ上にあるファイルなどを”Dropbox“にアップロードするスクリプト “Dropbox-Uploader“をダウンロードします。
curl "https://raw.githubusercontent.com/andreafabrizi/Dropbox-Uploader/master/dropbox_uploader.sh" -o dropbox_uploader.sh
ダウンロードが完了したら、スクリプトに実行権限を与えます。
chmod +x dropbox_uploader.sh
スクリプトを実行します。
./dropbox_uploader.sh
“# Access token:”というメッセージが表示されるので、先程メモしたアプリケーション用のアクセストークンを入力します。入力が正しいか確認が入るので、”y”を入力して下さい。
実際にアップロードができることをテストしておきましょう。
ラズパイの”/home/pi/”に適当な写真ファイル”test.jpg”を置いて、スクリプトを実行します。
実際に”Dropbox“を確認してみましょう。上記の手続きで作成したアプリケーションのファイルなどは、”アプリ”フォルダにアップロードされます。
“アプリ”フォルダのなかに、アプリケーション毎のフォルダがあります。
スクリプトで指定した通り、”radiko”という名前のフォルダが作られています。
“test.jpg”という写真ファイルがアップロードされていました。成功です!
< アップロード専用のスクリプトを作成 >
今回は、前回のTALKで、”radikoをlinuxで聞いたりするやつ“で公開している”radiko.sh”スクリプトを使って録音したラジオ番組を、先程の”Dropbox-Uploader“で”Dropbox“にアップロードするという仕組みを作ります。
個人的な話になりますが、”Tokyo FM“で日曜日の14時から放送されている”山下達郎のサンデー・ソングブック“が大のお気に入りなんですが、日曜日の午後ということでなかなか聴けるタイミングがなく残念に思っていました。勿論、”radiko“の”タイムフリー”機能を活用する手もあるのですが…
そんなわけで、今回の作例では個人的な趣味で作成したスクリプトを紹介します。
まずは、用途別に3種類のスクリプトを作成します。
※ 実用性を考えると、1つのファイルにまとめた方が良いと思います。
・”radiko.sh”スクリプトで放送を録画する。
sudo nano /home/pi/radiko_record_fmt.sh
chmod +x /home/pi/radiko_record_fmt.sh
・録音した内容を”Dropbox-Uploader“で”Dropbox“にアップロードする。
sudo nano /home/pi/radiko_upload_fmt.sh
chmod +x /home/pi/radiko_upload_fmt.sh
・アップロード後にラズパイから録画した内容を削除する。
sudo nano /home/pi/radiko_remove_fmt.sh
chmod +x /home/pi/radiko_remove_fmt.sh
作成を終えたところで、放送を録画するスクリプトの動作確認をしてみましょう。録画の素材はダウンロードできたものの、”avconv“というオーディオ・コンバーターが見つからなかったようです。
というわけで、インストールしようとしたところ、”ffmpeg“を使いなさいというメッセージが表示されインストールできません。
sudo apt-get install libav-tools
結局、”radiko.sh”スクリプトの内容をチェックし、”avconv”を”ffmpeg”に変更しました。
変更後の”radiko.sh”スクリプトで実行したところ、問題なく”m4a”形式のオーディオファイルが保存され、続くアップロード処理も成功しました。
ちなみに、55分の番組を録音済みのオーディオファイルの容量は20MB前後。アップロード処理もあっという間に終わりました。
“Dropbox“にアップロードしたオーディオファイルは、”Dropbox“アプリ内で、こんな感じで再生できます。
< 毎週日曜日に録音〜削除するクーロンを作成 >
それでは、最後の仕上げで、毎週日曜日の14時に録音を開始、15時に”Dropbox“にアップロード、16時にラズパイ上の録音済みファイルの削除、という処理をクーロンに登録しましょう。
crontab -e
最後の3行が今回追記した処理です。
追記を終えた後にクーロンを再起動して終了です。
sudo /etc/init.d/cron restart
以上で、3回に渡りTALKしたラズパイのストーリーは完結です。千円で買ったBluetoothスピーカー 1本で、こんなに楽しめるなんて、やっぱりラズパイは面白いですよね。しかも、手作り感のある仕掛けて、実生活を少しだけ豊かにできたので、個人的にはとても満足しています。
|
|
|
ホームページ “THE POOH FILES”にも是非お立ち寄り下さい。
“Adobe Stock“でベストショットな写真素材を販売中です。是非ご覧下さい。