
昨年から田中渓さんにハマり、radikoのタイムフリー機能でラジオを聴いていました。
しかし、無料プランのradikoは正直使い勝手が良くありません。倍速再生はできないし、過去の放送回が一定期間で消えてしまいます。また、アプリ起動時のログイン認証に時間がかかることもあり、小さなストレスを感じていました。
かといって、1番組のために有料プランに加入するのもな…と考えた末、自宅サーバにセルフホストでaudiobookshelf、n8n、rec_radiko_tsを組み合わせた聴取環境を構築しました。これが思いのほか快適だったので、その仕組みを紹介します。
各サービスの紹介
今回使用した3つの主要サービスについて、それぞれの役割を簡単に解説します。
audiobookshelf
個人用途のメディアサーバ。ポッドキャストやオーディオブックといったファイルを一元管理し、ブラウザや専用のスマホアプリから再生できます。倍速再生や10秒スキップ、データの自動保存はもちろん、PCで聴いていた続きをスマホで再開するといった「再生状態の同期」も可能です。
n8n
異なるアプリや処理同士をつなぎ合わせる自動化ツール。「ポッドキャストが更新されたら、特定のプログラムを実行する」といった一連の流れを、ワークフローとして視覚的に組み立てることができます。今回はシステム全体の司令塔として採用しました。
rec_radiko_ts
radikoのタイムフリー番組をダウンロードするためのツール。コマンドラインから特定の番組を指定して取得できるため、プログラムと組み合わせて自動録音するのに適しています。
システム構成
今回構築したシステムの構成図と、自動化された処理フローがこちらです。一連の処理はすべて自宅サーバ上のn8nで自動化しています。

- ポッドキャストの監視: audiobookshelfとn8nが定期的にポッドキャストのRSSを確認。更新があれば、最新のデータをローカルストレージにダウンロード
- 録音のトリガー: ポッドキャストの更新を契機に、n8nが「rec_radiko_ts」を起動
- ラジオデータの取得: radikoサーバから「音楽入りのフルデータ」をダウンロードし、先に保存したポッドキャストデータを上書き
- ライブラリ更新: audiobookshelfのライブラリ情報を更新し、上書き後の再生時間などの情報を反映
- リスニング: スマホアプリやブラウザから、いつでも好きなときにラジオを聴講
n8nのワークフローは生成AIが試行錯誤して作成してくれました。処理の成功やエラーはDiscordに通知されるので、何かあればすぐに気付けます。

ポッドキャストデータを取得&上書きする理由
ここでポイントとなるのが、ポッドキャストのRSSとrec_radiko_tsを組み合わせている点です。この2つには以下のような一長一短があります。
- RSS(ポッドキャスト): 番組のタイトルや説明文、カバー画像などの「メタ情報」が充実している。しかし、権利の関係で番組内の音楽がカットされていることが多い
- rec_radiko_ts(radiko): 放送内容がそのまま手に入るため「音楽付き」で楽しめる。しかし、ファイル単体では番組の詳細情報を持っていない
田中渓さんのラジオは、番組内で流れる音楽も魅力の一つです。そこで「RSSから綺麗なメタ情報を取りつつ、音声ファイルをradikoのデータに差し替える」という手法をとることで、番組情報と音楽付きデータの両立を実現しました。
おわりに
1年前まではラジオもポッドキャストもまったく縁のない生活を送っていましたが、田中渓さんが出演されている番組を中心に、今ではランニング中や通勤時にラジオを聴くことが日常になりました。
その田中渓さんがパーソナリティを務めるInterFMの番組「Beyond K-point」は、実は今日が最終回でしたが、来月からはJ-WAVEに局を移して新番組「VALTURE RADIO」をスタートされるとのことで、私もこのシステムを引き続き活用しつつ、これからも日々の楽しみにしたいと思います。