rfriendsでラジオ録音

ラジコ、らじるらじる、タイムフリーのラジオ番組を録音

Rfriends2 for Raspberry Pi 用イメージの使い方

Raspberry Pi でラジオサーバを作ろう!」企画の説明書です。

イメージをmicroSDに書いてラズベリーパイを起動するだけ!

Raspberry Pi 3 Model B
Raspberry Pi Zero W

 

(2019/09/14 Ver.1.16)

1.Rfriends2 for Raspberry Piについて

1)Rfriends2でできること
・キーワード指定により、ラジコ、らじるらじるのラジオ番組を24H自動/手動で録音する。
・ラジコのタイムフリーの番組を自動/手動で録音する。

・PC,スマホからアクセスして、録音データのコピー/再生をする。

2)Rfriends2 for Raspberry Piの特長
・イメージをmicroSDに書き込むだけで設定済みのrfriends2が使用可能。
・安価、低消費電力で24h稼働を実現。
・PCの再起動やスリープに悩まされることがありません。

3)動作確認機種
Raspberry Pi 3 Model B
Raspberry Pi Zero W

f:id:rfriends:20190821112722j:plain

4)ダウンロード

リンク先より rfriends2_2.6.*.***.***.zip をダウンロードしてください。

 Download

5)ドキュメント
・詳細な操作方法は「rfriendsでラジオ録音」を参照ください。
 http://rfriends.hatenablog.com/

 ・提供しているイメージは以下の設定を行っています。

 セットアップ Raspberry Pi3

 

2.準備するもの

0)Network環境

 ・WAN,LAN
  当然ですが、常時外部ネットワークにつながる環境が必要です。ルータ、DHCP等、わかりやすく言えばスマホWiFi接続できる環境
 ・PC
  WindowsPCまたはLinuxPCが必要です。Macでも可能だと思います。Androidでもできないかと試してみましたが、microSDへの書き込みが無理でした。稼働後は大丈夫ですが。 


1)Raspberry pi 一式

 ・Raspberry Pi 3 Model B または Raspberry Pi Zero W
 ・5.1V/2.5A ACアダプタ (Zeroの場合は2A)
  注意:低アンペアのアダプタでも動作しますが不安定になる可能性があります。

 ・LANケーブル(有線接続の場合)
 ・microSDカード Class10 UHS-I(4GB以上、できれば16GB,32GB
 ・microSDリーダ

 必要に応じて
 ・Raspberry Pi ケース
 ・ヒートシンク


2)rfriends2 イメージ

 rfriends2_2.6.*_rp_2019****.img


 raspbian(Raspbian GNU/Linux 9 stretch lite)上にrfriends2をインストールし設定を行ったものです。

3)Win32DiskImager

 イメージを書き込むアプリです。
 https://ja.osdn.net/projects/sfnet_win32diskimager/releases/
 Win32DiskImager-1.0.0-binary.zip

4)ssh,smb,ftpクライアント

 WindowsPC環境では、sshteraterm、smbはPCのエクスプローラftpfilezilla がおすすめ。LinuxPC環境では標準ツールが使えます。

  Android環境では
 sshはConnectBot(Kenny Root)、smbはファイルマネージャ+(flashlihgt+clock)、
ftpはFtpCafe(Droidware UK) がおすすめ

 

 他の環境の方は、ssh,smb,ftpで検索してください。

 

3.microSD にrfriend2を書き込む

 ダウンロードしたrfriends2_***.zipを解凍して、rfriends2_***.imgを取り出してください。Win32DiskImagerを使ってmicroSDにrfriends2_***.imgを書き込んでください。

f:id:rfriends:20190821130510j:plain

 

4.無線LAN設定

 有線LAN接続の場合は、この設定は不要です。無線LAN接続の場合、イメージを書き込んだmicroSDをPCに接続してください。以下のようなアラーム画面が出ますがキャンセルしてください。フォーマットしてはいけません。ドライブ名は環境により異なります。

 

f:id:rfriends:20190821143217j:plain

 

エクスプローラで確認すると、bootという領域(fat32フォーマット)が認識されているはずです。

f:id:rfriends:20190821143153j:plain


 wpa_supplicant.conf を作成(改行はLF)し、このboot領域にコピーすれば無線LANに接続できます。SSID、password は自分の環境に書き換えてください。また、セキュリティが気になる方はパスワードを暗号化してください。(ローカルなのでそんなに気にしなくてもいいと思いますが)

 
network={
ssid="SSID"
psk="password"
}

 注意:一度起動すると、wpa_supplicant.conf は /etc/wpa_supplicantディレクトリに移動し、boot領域からは削除されます。設定を間違った場合などで再設定する場合は、wpa_supplicant.conf を再度、boot領域にコピーしてください。

 

(参考)パスワードの暗号化

# wpa_passphrase "SSID" "password"

 

5.Raspberrypiの起動とIPアドレスの確認

 RaspberrypiにmicroSDを挿入し、Raspberrypiを起動してください。起動が完了する(グリーンのLEDが点滅から点灯に変わる)まで、しばらくお待ちください。


 次に、RaspberrypiはDHCPで動作していますので、IPアドレスを確認してください。IPアドレスの確認方法は、下記のようなIP scanner ソフトを使うと便利です。

 

Advanced IP Scanner

https://www.advanced-ip-scanner.com/jp/

スキャン結果より、MACアドレスが、B8:27:EB:**:**:** のものを探してください。

 FRIENDS2 192.168.1.*** Raspberry Pi Foundation B8:27:EB:**:**:**

 こんな感じで見つかると思います。ここでは仮に、192.168.1.100とします。

  teraterm を起動し、Host の欄に192.168.1.100 と入力しOKボタンを押し、pi/raspberry でRaspberryPiにログインできます。

 

 次に外部ネットワークにつながっているか確認してください。teraterm上で、ping yahoo.co.jp と入力して下さい。こんな感じのリターンが帰ってくればOKです。

64 bytes from f1.top.vip.ssk.yahoo.co.jp (182.22.59.229): icmp_seq=1 ttl=49 time=11.0 ms

 

6.領域拡張

 提供イメージは領域が縮小されているため、microSD全体を使用するように領域を拡張する必要があります。

 teraterm等でRaspberrypiにアクセスしてください。ホストのIPアドレスは環境により異なります。「Raspberrypiの起動とIPアドレスの確認」で確認したIPアドレスを指定してください。

 ホスト:192.168.1.100
 ユーザ名:pi
 パスフレーズ:raspberry


 起動したteraterm上で以下のコマンドを入力してください。再起動が必要です。

 $ sudo raspi-config --expand-rootfs
 $ sudo reboot

 注意:この操作をしないと大容量のmicroSDを使用していても4GB弱しか認識されません。

f:id:rfriends:20190821144246j:plain

 再起動後、領域が拡張されたことを確認してください。
 $ df

f:id:rfriends:20190821132049j:plain

 

7.番組予約

 初期状態では何も予約されていないので、teraterm上で以下のコマンドを実行してください。サンプルで設定したキーワードをもとに本日のラジコ、らじるらじるの番組を予約し、昨日のタイムフリー番組をダウンロードします。実行には時間がかかります。

 

$  sh /home/pi/rfriends2/script/ex_rfriends.sh &

 

 なお、キーワード予約及びタイムフリーの自動ダウンロードは毎朝5時10分に設定しています。以降、毎日自動実行されるので、この手動番組予約は必要ありません。

 

8.rfriends2ユーティリティ起動

 teraterm上で以下のコマンドを入力するとrfriends2のユーティリティが使用できます。

 $ cd /home/pi/rfriends2
 $ sh rfriends2.sh

f:id:rfriends:20190821111654j:plain


 キーワードによるラジオ番組の録音は自動で行われます。このアプリは常時実行しておく必要はありません。詳細な使用方法はrfriends2のサイトのマニュアルを参照ください。

 

9.samba,ftp

1)samba

 PCのエクスプローラから、\\192.168.1.100 でアクセス(smb)することにより録音データにアクセスできます。ほかのアプリを使う場合は、はanonymousでアクセスしてください。

f:id:rfriends:20190821111224j:plain

2)ftp

 ftp で192.168.1.100 にアクセスすることによりRaspberry Piに接続できます。

f:id:rfriends:20190823044236j:plain

 

 接続すると、以下のような状態になります。

あとは、録音データをD&DすればPC側に転送することができます。

 

f:id:rfriends:20190823045059j:plain

 

10.最後に

 以上で説明は終わりです。

 

 おそらく初心者の方にはわかりにくいと思いますが、ネットで勉強しながら頑張ってみるのも楽しいものです。挑戦した方は一言コメントを頂ければ幸いです。

 当方ではRaspberry Pi 3 Model Bで1年以上運用しており、問題は生じておりません。ただし、24h稼働になるので、設置場所は火災等にお気を付けください。

 

 microSDへのアクセスを極力減らすため

 ・録音はRAMディスク上で行い、番組終了後microSDにコピーしています。
 ・ログ等を極力取らない、あるいはRAMディスク上に取るようにしています。

 それでも、microSDの寿命は突然やって来ます。録音データはこまめにバックアップすることをお勧めします。自動でファイルサーバ等にムーブする処理を追加するといいかもしれません。

 

 なお、本イメージを使ったことによる一切の責任は当方にはありません。うまく動かないからRaspberry Piの代金をよこせといったクレームはご遠慮ください。

 

11.おまけ

・Rfriends2 for Raspberry Pi イメージの作り方

 イメージ作成は以下の手順で行いました。当方で稼働しているラジオサーバは32GBのmicroSDで運用しています。これをそのままイメージ化すると大きくなりすぎます。
そこで、

1)データ整理
 録音データを他に退避後、消去しました。
2)領域縮小
 gparted で領域を約3GBに縮小しました。
3)使用領域調査
 $ sudo fdisk -l /dev/sdb により使用している領域を把握
4)イメージのバックアップ
 $ sudo dd if=/dev/sdb of=***/rfriends2.img count=****** bs=512 でイメージのバックアップを取りました。
5)完成
 これにより、4GBのmicroSDでも使用できるイメージ(約 3.1GB)が作成できました。
6)アップロード
 できたイメージをrarに圧縮(約 1.6GB)し
 GoogleDriveにアップロードしました。

 GoogleDriveはサイズ制限が少ないので。

 

Raspberry Pi Zero Wの温度

 

f:id:rfriends:20190821112437j:plain

・アイドル時 
使用電流 : 約40mA
CPU温度 : 40.1'C

・タイムフリー一括ダウンロード時 
使用電流 : 約140mA
CPU温度 : 48.7'C

CPU温度は以下のコマンドで取得できます。
$ vcgencmd measure_temp
temp=48.7'C
--------------------------------------------------------------------

#rfriends
#raspberry pi
#raspbian
#radiko
#ラジコ
#らじるらじる
#NHK
#タイムフリー
#ラジオ
#録音
#英会話
#深夜放送