NHKらじるらじる聞き逃し高速録音フリーソフトの製作(Windows用)

Radio

NHKネットラジオ「らじる☆らじる」の聞き逃し番組を録音するフリーソフトを製作しました。

「らじる☆らじる」の聞き逃し番組を録音するソフトはたくさんありますが、PCへのインストールが必要だったり、インストールまでの操作が煩雑だったり、番組改変にタイムリーに更新されない、録音したくない番組も録音してしまう、勝手なフォルダ振り分けをされてしまう、などの不満を感じたので最小限の操作で必要な番組だけが録音ができるソフトを作ってみました。

本ソフトは単体動作ソフトとなっていますので、Windowsへインストールすることなく、適当なフォルダ上で動作します。

ソフト自体は、ダウンロードフォルダに展開しただけでも、普通に使えますので、PC操作に不慣れな方でも使えると思います。

改定来歴

  • 2023.11.18:バージョンR02に更新しました。らじるらじるで配信されているほぼすべての番組録音に対応しました。これに伴いR01の配信は終了させていただきました。
  • 2024.02.18:バージョンR03に更新しました。らじるらじるで配信されている番組表の閲覧機能を追加しました。これに伴いR02の配信は終了させていただきました。

動作要件

本ソフトの動作要件は以下のとおりです。

  • Windows10 PC:当然ながらネット接続必須
  • VLC(Video LAN)がインストールされていること(動作確認はVer.3.0.17.4)
  • ffmpeg Ver.4以降がインストールされていること(動作確認はVer.4.4以降)

ソフト自体の負荷は高くありません。

必要モジュールを1つのファイルに固めているため、起動に少し時間はかかりますが、低スペックPCでも快適に動くと思います。

ソフトの入手とインストール

本ソフトは、ストリーミング再生にVLC(フリーソフト)、ストリーミング録音にFFmpeg(フリーソフト)を使いますので、あらかじめPCにソフトウェアをインストールしてください。

PCにVLCとffmpegが入っていると、どのような映像音声ファイルも再生・変換ができるようになるため、入れておいて損はないと思います。

らじる聞き逃しRecorderの入手と展開

らじる聞き逃しRecorderは、以下リンクから入手して、zipファイルは適当なフォルダに展開してください。

  • m2h_recorder_3_0:プログラム本体(36MB)2022.6.21 New

本ソフトは単体で動作しますので、PCへインストールする必要はありませんが、同一フォルダにいれて動かしてください。

フォルダ内のファイル構成は以下の通りです。

  • m2h_recorder.exe:プログラム本体
  • settings_m2h.ini:設定ファイル(exeがファイルが参照)
  • README_m2h.txt:取扱説明・ライセンス説明等のdocument
  • recordフォルダ:録音ファイルが保存されるフォルダ(空フォルダです)

VLCの入手とインストール

本ソフトのネットストリーミング再生は、VLC-libを利用してますので事前にインストールしてください。

ここからVLCを入手し、インストーラをダブルクリックするだけでインストールは完了します。なおインストール先のフォルダは、デフォルトの"C:\Program Files\VideoLAN\VLC"が推奨です。

Ver.2以前のVLCがインストールされている場合は、"C:\Program Files (x86)\VideoLAN"にインストールされており、自動でVer.3に更新はされません。古いバージョンが入っていた場合は、一度アンインストールして、最新バージョンを入れることをおすすめします。

FFmpegの入手とインストール

本ソフトのストリーミング録音にフリーソフトのffmpegを利用していますので、こちらも事前にインストールしてください。

ffmpegはここから入手出来ますが、たくさんのバージョンやパッケージがあり、少々難しいと思われましたので、下図のスクリーンショットを参考にダウンロードしてください。

動作に必要とするのはffmpeg.exeという実行ファイルのみですので、win64で一番小さいファイルサイズのものをダウンロードします。本記事の執筆時点ではessentialsの7z圧縮版が23MBと最小でした。

ffmpegはVer.4.3以降をインストールしてください。Ver.4.3以前の場合はオプション記述が違いますのでダウンロード時にエラー終了となります。

ffmpegはインストーラがありませんので「C:\ffmpeg\bin」というフォルダを作って、ffmpeg.exeを含むプログラムを手動でコピーしてください。

またffmpeg.exeは、コマンドラインベースのプログラムですので、ダブルクリックして実行してもWindow画面には何も表示されません。ダブルクリックで何も表示されない状態で正常です。

本ソフトは、ffmpeg.exeをダイレクトに呼び出しているため、Windowsのpathを通す作業は不要です。

(補足)Windows版のVLCはストリーミング録音が出来るのですが、CLI(コマンドラインインタフェース)経由で録音することができないめ、ffmpegを使うことにしました。

基本的な使い方

らじる聞き逃しRecorderの起動は、m2h_recorder.exeをダブルクリックするだけです。

ファイルサイズが36Mbyteと少々大きいので読み込みには少し時間がかかります。

起動後の画面の説明

起動後の画面は、テキストボックス内にffmpegとVLCのインストール状態が表示され、操作前に確認することができます。

インタ-ネットに接続されている状態で「現在の放送を聞く」をクリックすると、現在のネットストリーミングが再生されます。

受信ストリーミングのチャンネルはNHKラジオ第2のみです。ストリーミングURLはsettings_m2h.iniで変更することも可能です。(初期値は東京のNHK第2にしています。)

聞き逃し番組を録音する

番組選択からプルダウンで録音したい番組名を選択すると、現在配信中の番組が表示されますので、録音したい番組を選択して「録音する」をクリックすると録音が始まります。

番組タイトル名は、ネット配信の情報をそのまま表示しており、最大文字長のタイトルに合わせてウィンドウが自動で伸長します。伸長はしますが伸縮はしません。

番組名のラジオボタンをクリックすると、テキスト表示エリアに放送日付、番組タイトル、配信URL(m3u8コンテンツ)が表示し、録音するボタンがクリックできるようになります。

番組のダウンロード時間はネット環境にもよりますが、光回線なら15分の番組が12秒くらいでダウンロードできます。ファイルサイズは15分番組で概ね6Mバイト以内です。

ffmpegでダウンロード出来ない場合は、ウインドウ上に表示される配信URL(m3u8コンテンツのアドレス)をコピーして、VLCのネットワーク再生機能にて再生やダウンロードすることも可能です。

録音するをクリックすると、ffmpegが起動してffmpegのコマンドウィンドウが出ますエラー時は赤い文字でエラーメッセージが出ますので、ネット環境などをチェックして再度ダウンロードしてください。

ffmpegが正しくインストールされていなかったり、コマンドウィンドウが一瞬表示されてすぐ消える場合は、正常に録音動作が行われていません。

ダウンロードが出来ない場合は、①iniファイルの設定確認、②recordフォルダの存在確認、③ffmpegのインストール先確認をしてください。

ダウンロードにffmpegを使っている関係上、ダウンロード中はffmpegの終了を待つ状態となり、マウス操作は受付できません。ダウンロードを中断したい場合は、Windowsのタスクマネージャーでプロセスを強制終了してください。

録音ファイルを再生する

録音したファイル名は、番組名、日付、開始時刻が振られて、設定されたrecordフォルダに保存されます。

番組タイトルはファイルにメタデータとして埋め込みますので、フォルダーの種類をミュージックにすると整理に便利です。

録音形式はm4aのみのサポートです。mp3形式をサポートするか迷いましたが、筆者の環境ではm4a形式で困ることは無いため、保存形式は固定としました。

ファイル名の形式:(番組略称)_(日付)_(開始時刻).m4a

録音ファイルの保存先フォルダは「settings_m2h.ini」で任意設定できます。フォルダ名とフォルダパスは、日本語の2バイト文字は指定できませんので、必ず半角英数字のみで記載してください。

google driveなど、フォルダ名に2バイト文字(「マイドライブ」という名のフォルダ)が入るところに保存したい場合は、プログラム本体をマイドライブより下層のフォルダへ配置することで対処できます。

設定ファイル編集によるカスタマイズ

設定ファイルは、iniファイル形式で記載していますので、番組名、表示順などの変更が直感的に容易に出来ます。

iniファイルの編集は、メモ帳等を用いてパラメータを変更してください。パラメーターの先頭に"#"を記載すると、その行はコメントアウトすることが出来ます。

現在の設定をコメントアウトしながら編集していくことで、効率よく修正することが出来ると思います。

[CH1]
channel = 中学生の基礎英語レベル1 # GUIに表示される番組名
prog_dir = 6806 #聞き逃しの番組ID
prog_sub = 01 #聞き逃しの番組サブID 語学放送は01のみです 
file_name = KISO_1 # 保存するファイル名の接頭文字

クラウドストレージへの録音

本アプリは、iCloud、OneDrive、GoogleDriveへの録音にも対応しています。

クラウドへ録音することで、対応スマホでいつでも放送が聞くことが出来るようになり、とても便利です。

クラウドストレージの録音設定はこちらの記事を参照してください。

バージョンR02での新機能

バージョンR02より、設定ファイルのprog_subが"01"以外でも設定できるように改修しました。

これにより、語学放送以外のほぼすべての配信が録音出来るようになりました。

ただし、1タイトルあたり6番組までの制約があります。深夜番組の再放送など6番組を超えるものは録音できません。

バージョンR03での新機能

バージョンR03で、らじるらじるで配信中の全番組を一覧表示する機能を追加しました。

これまでは、らじるらじるHPから番組IDを探す必要がありましたが、R03から「現在放送中の番組を確認」のボタンをクリックするだけで、一覧表示できる機能を追加しました。

これによりカスタマイズにおいて、設定ファイルに記載する番組名・prog_dir・prog_subの値が本ソフトウェア単体で確認出来るようになりました

「中学生の基礎英語」はテキストが必須

中学生の基礎英語はとても優秀なコンテンツで、このNHK語学放送だけでもそこそこのビジネス英会話なら聞き取れる力量がつくとおもいます。

ただし、中学生は単語のスペル自体をあまり知らない状態ですから、聞いているだけでは語彙力が向上しないため、別途販売されているテキスト本は必須だと思います。

テキストは、紙本と電子書籍が販売されていますが、Amazonのkindleで電子書籍を購入し、Amazon Fire HDで読む組み合わせが利便性高いと思いますので、おすすめします。

今後の課題

以前にらじるらじるのリアルタイム放送の予約ソフトを作っていたため、json解析を勉強して比較的簡単に聞き逃し録音ソフトを作成することができました。

ネット上には他の録音ソフトも複数ありますが、インストール不要、操作が簡単、動作が軽快、勝手に設定が変わらないという点にこだわって作りました。

現状、製作者本人が認識している制約や課題は以下の通りです。

  • リアルタイム録音ソフトとの合体:らじる☆らじるの録音は、PCの放置運転ができるリアルタイム録音ソフトのほうが簡単です。タブの切替でリアルタイム録音の使い分けができるようにするつもりです。
  • 番組改訂への追従:番組配信は4月と10月に変更され、番組名とid番号が変わることがあり、切り替え時期はiniファイルの編集が必要となります。id番号の抽出はjson解析をしないと得られないので、id番号を抽出をするプログラムを作りたいと思います。
  • Android対応(apkパッケージ化):Androidはまだ未知の領域です。現在の開発スキルの到達目標です。

終わりに

本プログラムの製作期間はおよそ1ヶ月位でした。「らじる☆らじる」のjson解析は初めて行う作業でしたので、検証用サンプルプログラムを作って一つずつクリアしました。

製作中に時間を要した部分は、ffmpegによるm4aファイル保存でした。ffmpeg ver4.3からURLの解析機能が入ったそうなのですが、この機能が不完全な状態であるため「-http_seekable 0」を付け加えることで解決しました。(これを発見したネットの先輩方には感謝)

またffmpegは、コマンドオプションが長く、どこにミスがあるか分からなくて、試行錯誤を繰り返していました。基本動作ができたあとは、ひたすらGUIの挙動テストとそのデバッグの繰り返しをしていました。

このソフト開発により、json解析、ffmpeg、python マルチスレッド制御、など多くのスキルを獲得できました。自分でソフトが作れるようになると本当に楽しいですね。