ソフトウェア無線用「見えるFMステレオラジオ」をバージョンアップ

Radio

自作しているFMラジオ予約録音ソフトをバージョンアップしました。OSプラットフォームはWindowsです。

以前のバージョンは予約録音すると解除ができなくて不便でしたが、対策方法がようやく確立できたため、バージョンアップしてリリースすることにしました。

本ソフトは、FM放送を受信することしか出来ませんが、単体で動作し、動作も軽快です。動かすまでが大変な汎用SDRソフト(SDR#, HDSDR等)を使う前に、PC側の動作確認する用途でもお使いいただけます。

主な改善事項

  • GUIによる予約キャンセル機能の実装と録音回数の削除:「NHKらじる☆らじる録音」でGUI上でスケジュール開始・停止を行えましたのでFMラジオソフトにも適用しました。これにより録音回数のパラメータを削除しました。
  • ボタン制御の追加:チャンネル名を選ぶ前に予約できるという不具合がありましたので、修正しました。
  • Windowsアイコンの設定:Windowsアイコンをpythonアイコンから自作アイコンに変更し、見栄えを改善ました。
  • iniファイルの追加:Youtubeチャンネルで九州地方のiniファイルがほしいとの要望をもらいましたのでiniファイルを製作し、添付しました。

必要機材と環境

  • Windows10 PC:モノラル受信はたいてい動作可(Celeron/AtomでもOK)、ステレオ受信はintel Core i7クラス(4コア8スレッド以上)が必要
  • USBチューナー:RTL-SDR.COM V3, RTL2832 USBチューナ, HackRF oneにて動作確認済み
  • USBチューナーのドライバー:Zadig(フリーソフト)を使います。ドライバーの入手とインストール方法はこちらの記事を参照ください。
  • FMアンテナ:RTL-SDR.COM V3のセット付属品で十分です。

ソフトの入手先と使い方

本ソフト(ffm_recorder)はファイル単体で動作しますので、Windowsへのインストールは不要です。

当サイトのダウンロードページからzip形式のファイルを2つダウンロードし、適当なフォルダに展開してください。展開が終わったらffm_tuner.exeを移動し、下図のように一つのフォルダ集めてください。

※ラジオ予約録音ソフトのダウンロードはこちらから

(ご注意)ソフトは随時最新版に更新しており、記事公開時のバージョンが配信されているとは限りません。改修項目の詳細はソフト内の来歴(txtファイル)を参照してください。

プログラムとフォルダの説明

  • recordフォルダ:録音したファイルを保存するフォルダです。
  • ffm_recorder.exe:プログラム本体です。
  • ffm_tuner.exe:現在のFM放送を聞くためのチューナーソフトです。
  • ffm_module.exe:受信と録音するためのチューナーソフトです。
  • settings_fm.ini:放送局と起動時の初期値設定を記載するイニシャルファイルです。関東や九州にお住まいの方は、settings_fm_tokyo.ini, settings_fm_fukuoka.iniをsettings_fm.iniにリネームしてください。
改定来歴
  • 2022.6.26: ver1.0をリリース

画面仕様(GUI)の説明

録音キャンセルができるようになりましたので録音回数のプルダウンを削除しました。その他、大きく変更していません。

本改修でファイル名も変更しましたので、exeファイルは全て差し替えてください。iniファイルには変更ありませんので、同じものがお使いいただけます。

以下は大阪の初期設定ファイルで起動したときの画面です。

  • 受信放送局:最大10局を登録できます。設定はiniファイルにチャンネルの情報を記載してください。背景色もiniファイルで選択できますので、従来放送(90MHzまで)とワイドFM放送(90MHz以上)を見分けられるようにしています。
  • 予約曜日ラジオボタン:録音予約する曜日はラジオボタンから選びます。初期値は日曜日(固定)です。
  • 開始時刻、録音時間:予約録音する開始時刻と録音時間を設定します。初期値はiniファイルで変更できます。
  • チューナー選択:USBチューナーのデバイス設定です。RTL-SDR.COMなどのRTL2832チューナーならrtl=0を選択します。(通常はデフォルトのまま)
  • 受信方式:モノラル、ステレオの切替です。ステレオはCore i7クラスのハイスペックPCでないと処理落ちが発生しますので予約前に試聴してください。初期値はモノラルです。
  • 「FM放送を聴く」:選択されている放送局にあわせてチューナー(ffm_tuner)を起動します。
  • 「FM放送を予約」:画面に設定された時刻が到来すると録音ソフト(ffm_module)を起動します。ffm_module起動するとコマンド画面が出て録音中状態が確認出来ます。録音を中止する場合はffm_moduleコマンド画面でCtrl+Cでプログラムを終了してください。
  • 現在の番組表表示や予約録音状態表示:radikoから現在の番組表を入手し表示しています。予約録音をした場合は予約開始スケジュールが表示されます。
  • 注意事項:予約録音機能を使う場合はPCを「常にオン」の設定にしてください。PCがスリープすると、USBチューナーの接続がロストして再起動が必要になります。

iniファイル記載方法について

iniファイルの記述方法は、前回のステレオ化仕様時のままですので、今回の記事からは割愛します。

今後の課題

懸案だった録音予約の設定・キャンセルがGUI上で制御することが出来、ようやく常時起動で使えるレベルになりましたので正式版リリースとしました。

まだ課題はいくつかありますので、引き続き勉強して継続取組みしていきます。

  • ラジオ録音ファイルのmp3化:mp3化はffmpegやvlcを使う予定ですが、録音ファイル制御が2つのプログラムに渡ると制御が煩雑になってしまうため、録音モジュールと制御GUIの統合をおこなってから実装する予定です。
  • 予約キャンセルのGUI化:ver.0.5より、コマンドウインドウでの予約キャンセルはできるように出来たものの、プログラム構造の制約によりGUI画面も終了するので最初から設定やり直しになってしまいます。GUI画面だけで予約キャンセルも行えるようプログラムの構造を再検討中です。Ver.1.0で解決!
  • FM放送のステレオ受信:GNURadioの制約によりFM放送なのにモノラル受信です。日本のFM放送は少々特殊らしく、独自ブロックを作る必要があります。 Ver.0.6で実装!
  • Androidアプリ化:現在の最終目標です。原理的には手に負える範囲ですが、まだ環境も構築できていません。

以上、自作ラジオ録音ソフトの紹介でした。