2011年10月2日日曜日

AM/FMラジオ放送をPCで録音してみる(チューナー無しで)

今までに、いわゆるアニラジと呼ばれるWebラジオを良く視聴していた。

Webラジオの良いところは時間と場所にしばられないことだろう。
さらに、ゴニョゴニョしてPCに保存してから携帯音楽プレーヤーに移せば、屋外での視聴も可能となる。
まぁ、スマホでの直接視聴は可能だが、通信回線の状態に影響を受けるので、ストレスと手間のトレードオフだろう。

ところで、ふらっと思いつきで、NHKラジオの語学講座「まいにち中国語」を聞いてみようと言う気になった。
たまたま本屋でテキストが目について、手に取ってみると10月から新しく講座が始まると書いてあったからだ。
さらに、「さよなら絶望放送」がオールナイトニッポンRで復活するそうだ。

と言うことで、一般のラジオ放送を録音して、通勤電車内で手持ちの携帯音楽プレーヤーにて視聴する方法を検討した。

アナログな時代では「エアチェック」は普通に行なわれていた。
しかし今となっては、ラジオチューナーは無いし、テープデッキはまだ持っているが、音楽テープが入手できない。
音楽テープに録音できたとしても、今さら屋外でテープウォークマンをガチャガチャいじるのもアレだろう。(MDも同様)

また、パッケージされた商品も色々と存在した。
オリンパスの「ラジオサーバー」や、ラジオチューナー付きのICレコーダーだ。
まぁ、これならば世話は無いだろう。
ポンと買ってきて、アンテナを設置して、受信して録音すればMP3やWMAなどのファイルになるだろう。

だが、
  • けっこーなお値段である。
  • アナログで受信するのが「おもしろくない」。
ので、一般のラジオ放送をPCで視聴する環境をさらに検討した。


USBのラジオチューナーでも買えばよいのかな?とも思ったが、先に書いたように結局アナログで受信するのが「おもしろくない」。

と言うのも、現在、民放のラジオ放送は「radiko」での視聴が可能だからだ。
また、最近になってNHKも「らじる★らじる」と言うネットラジオを始めた。
これによって、新聞のラテ欄に掲載されている主要ラジオ局は全てネットでの視聴が可能になった。

さて、これらのネットラジオをPCにて録音する方法であるが、「radika」を使用することにした。
他にもネットラジオの録音ソフトは色々とあるようだが、NHKネットラジオに対応している点をポイントとした。

「radika」のインストールと、NHKネットラジオのチューナー登録は、どこかのHPに載っていたので、これらを参考にしてセットアップした。
動作確認として、「radiko」 と「らじる★らじる」が正常に受信できることを確認した。

続いて、radikaでの録音の設定であるが、メニュー[ツール]-[オプション]ダイアログ-[録音]タブにて行なう。
[録音フォーマット]にてフォーマット(WAV、FLV、M4A、MP3、AAC)が選択できる。
これは録音と同時にradikaにて、これらのエンコードを行なうと言う意味である。

今回は実験のためにWAV(PCM)にて保存することにした。
とりあえずWAVフォーマットで保存しておけば、後でどうにでもなると言う戦略である。

一応、最終的にはMP3での視聴を考えている。
radikaはMP3のエンコードにLAMEを使用している(ようだ)。
自分でWAVからMP3にエンコードした場合と、radikaがエンコードしたMP3との比較は後で予定する。

ネットラジオのエアチェック(?)は、アナログラジオのエアチェックと同様に、失敗したらそれまでである。
NHKの語学講座は再放送があるので1日3回同じ内容が放送されるが、その他の一般の番組にはこういったフォローは無い。
従って、予約録音の設定とテストは念入りに行なった。

番組予約(スケジュール)は、[スケジュールの追加]で行なう。
[単発予約]、[曜日予約]、[キーワード予約]が可能である。

[単発予約]と[曜日予約]では、録音の開始時間と終了時間を指定する。
この時、番組の前後が切れないように、予約時刻に多少の余裕を持たせるが、radikoでは[オプション] ダイアログ-[スケジュール]タブ内に[予約マージン]の設定がある。

この[予約マージン]には[録音開始マージン]と[録音完了マージン]を秒数で設定できる。
このマージン時間は全てのスケジュールに共通の設定である。
今回は[録音開始マージン]を30秒、[録音完了マージン]を20秒に設定した。

さらに、中国語講座の[曜日予約]スケジュールにて、予約時間の設定で、開始時間を10秒マイナスして、終了時間を10秒プラスした。

これにより、番組の開始時間に対して40秒、終了時間に対して30秒のマージンの設定となる。

この設定で、中国語講座を月-金 の5日間実際にエアチェックのテストをしてみた。

15分間の番組で、前後のマージンも含めて、実際に録音されたWAVファイルのサイズは約160MBとなった。

録音された5日間分のWAVファイルについて、EACのメニュー[ツール]-[WAVファイル処理]にて読み込むと、こうなる。

図1:WAVファイルの読み込み

続いて、メニュー[CUEシート]-[CUEシートの生成]を実行すると、こうなる。

図2:[CUEシートの生成]による無音箇所の検出

語学番組なので、無音箇所が多く検出されるw
実際に再生して確認すると、一番最初と最後の無音箇所が、番組の境界であった。

こうして、録音された5日分のWAVファイルについて調べてみると、番組の前後のマージンはそれぞれ、
  1. 開始時間マージン:33秒、終了時間マージン:26秒
  2. 開始時間マージン:32秒、終了時間マージン:26秒
  3. 開始時間マージン:32秒、終了時間マージン:26秒
  4. 開始時間マージン:32秒、終了時間マージン:26秒
  5. 開始時間マージン:44秒、終了時間マージン:25秒
となった。
設定の開始40秒(30+10)/終了30秒(20+10)に対して、大体5秒のオーダーでの誤差が認められる。

この誤差について、少し検証してみる。

PCの時刻はNTPにて合わせているので、大体電波時計並みの精度は出ていると思う。
radikaの予約時のタイマー動作はPCの時刻を元にしている(と思う)。

また、我が家はFTTHであるので、ネットワークの物理層レベルでの遅延は無視する。

一方、radikoやNHKネットラジオのHPでは、「時報は当てにするな」と注意書きがある。
ストリーミング時のエンコード/デコードに発生するタイムラグによるものだろう。
(まぁ、地デジの時報・時刻表示の問題と似たようなものだ)

さらに、radikaではストリーミングの保存のために受信パケットのバッファリングをしている(ようだ)。

従って、受信したラジオ番組上の時刻(仮想の時刻)に対して、現実の時刻通りにタイマー動作したために発生した誤差ではないかと考える。


このように、radikaによるネットラジオのエアチェックは、多少のクセ?はあるものの、実際の運用に耐えられるものと考えた。


【現状における問題点/検討課題】

  • ほぼ5日間、PCの電源は点けっぱなしw
  • 停電したらアウトw
  • NTTビルの施設点検や回線工事による回線のダウン

radikaによるエアチェックをOSのスリープ/復帰に対応させることで、外出時にPCが点けっぱなしという事態は避けられる。

エアチェックのスリープ対応は、OSの設定の確認、radikaの設定、動作テストが必要である。

また、停電への対応は、エアチェックをノートPCで行なえばよいのだが、よくよく考えてみると、ルーターやPON装置の電源がバックアップされていないので、停電からの自動復帰は可能だが、エアチェックの時間に停電しているとアウトである。

また、数ヶ月に1度程度の頻度で、平日の深夜にBフレッツ回線が数分間ダウンすることがある。
ま、家庭用サービス回線なので仕方が無いが、こうなるとお手上げであるw

0 件のコメント:

コメントを投稿