README
¶
Podself - Googleドライブベースのプライベートポッドキャストシステム
Podselfは、Googleドライブをストレージとして使用し、個人用のポッドキャストを配信するためのツールです。NotebookLMなどで生成した音声ファイルを、ポッドキャストクライアント(Overcastなど)で聴くことができます。
クイックスタート
# 1. インストール
go install github.com/syou6162/podself@latest
# 2. 音声ファイルを配置
cp your-audio.mp3 ~/.local/share/podself/episodes/
# 3. Google Driveにアップロード(手動)
# 4. RSSフィード生成
podself generate-rss
# → JavaScriptが自動的にクリップボードにコピーされる
# → Google Driveで実行してEnterキーを押す
# 5. feed.rssをGoogle Driveにアップロード(手動)
特徴
- 🎙️ Googleドライブ上の音声ファイル(MP3/M4A)からRSSフィードを生成
- 📝 MacのFinderコメントをポッドキャストの説明文として使用
- 🔒 プライベート配信(URLを知っている人のみアクセス可能)
- 💰 完全無料(Googleドライブの容量内で運用)
- 🚀 シンプルな運用フロー
必要な環境
- Go 1.20以上
- macOS専用
- Finderコメント機能を使用
pbcopy/pbpasteコマンドを使用(macOS標準)
- Googleドライブアカウント
インストール
Go installを使用(推奨)
go install github.com/syou6162/podself@latest
ソースからビルド
git clone https://github.com/syou6162/podself.git
cd podself
go build -o podself
初回セットアップ
1. 設定ファイルの作成(オプション)
デフォルト設定で良い場合はスキップできます。カスタマイズする場合は設定ファイルを作成します:
# 設定ディレクトリを作成
mkdir -p ~/.config/podself
# サンプル設定をコピー
curl -o ~/.config/podself/config.yaml \
https://raw.githubusercontent.com/syou6162/podself/main/config_example.yaml
# 設定を編集
vi ~/.config/podself/config.yaml
主な設定項目:
feed.title: ポッドキャストのタイトルpaths.episodes_dir: 音声ファイルの保存場所drive.folder_id: Google DriveのフォルダID(URLの末尾部分)
2. Google Driveフォルダの準備
- Google Driveに新しいフォルダを作成
- フォルダを右クリック → 「リンクを取得」
- 「制限付き」を「リンクを知っている全員」に変更
- URLからフォルダIDを取得(
folders/の後の部分) - 設定ファイルの
drive.folder_idに記入
使い方
1. 音声ファイルの準備
音声ファイル(MP3またはM4A)を配置します。場所は設定ファイルで変更可能です。
# デフォルトの場所(~/.local/share/podself/episodes/)を使う場合
cp your-audio-file.mp3 ~/.local/share/podself/episodes/
# または設定ファイルで指定した場所を使う場合
# 例: paths.episodes_dir: "~/Documents/podcast" と設定した場合
cp your-audio-file.mp3 ~/Documents/podcast/
注意: 初回実行時にエピソードディレクトリ、設定ディレクトリ、キャッシュディレクトリが自動的に作成されます。
2. Finderコメントの設定
各音声ファイルにFinderコメントを追加します(ポッドキャストの説明文として使用されます)。
# コマンドで設定(推奨)
echo "エピソードの説明文" | podself set-metadata-comment episode.m4a
# ファイルから読み込む場合
cat description.txt | podself set-metadata-comment episode.m4a
# Claude CLIで要約を生成して設定する場合
claude --print "/tmp/book.mdの内容を1000字程度で要約してください" | podself set-metadata-comment episode.m4a
# 複数行の説明文を設定する場合
cat <<EOF | podself set-metadata-comment episode.m4a
今回のエピソードでは、AIの最新動向について解説します。
特に以下のトピックを扱います:
- 大規模言語モデルの進化
- 実用化事例
- 今後の展望
EOF
補足: Finderの「情報を見る」から手動で設定することも可能ですが、文字数制限が厳しい(約750文字)ため、コマンドでの設定を推奨します。コマンド経由では最大60KBまでの説明文を設定できます。
3. Googleドライブへのアップロード
音声ファイルをGoogleドライブにアップロードします。
4. RSSフィードの生成(対話的)
# RSSフィード生成コマンドを実行
podself generate-rss
以下の手順で対話的にRSSフィードを生成します:
- JavaScript自動コピー: ファイルIDを取得するJavaScriptが自動的にクリップボードにコピーされます
- ブラウザ自動起動: フォルダIDを設定している場合、Google Driveフォルダがブラウザで自動的に開きます
- JavaScript実行: 開発者コンソールを開いて、クリップボードの内容を貼り付けて実行します
- Enter押下: JavaScriptを実行して結果がクリップボードにコピーされたら、ターミナルに戻ってEnterキーを押します
- RSS生成: RSSフィードが自動生成され、
~/.cache/podself/feed.rssに保存されます(設定で変更可能)
5. RSSフィードのGoogleドライブへのアップロード
生成されたfeed.rssファイルもGoogleドライブにアップロードします。
フォルダIDを設定している場合:
- RSSフィード生成後、自動的にGoogle Driveフォルダがブラウザで開きます
- アップロード先のフォルダが表示されるので、生成されたファイルをドラッグ&ドロップでアップロード
フォルダIDを設定していない場合:
- 手動でGoogle Driveを開いてアップロードしてください
6. ポッドキャストクライアントでの購読
GoogleドライブのRSSフィードURLをポッドキャストクライアントに追加します:
https://drive.google.com/uc?export=download&id=RSS_FILE_ID&filename=feed.rss
重要:拡張子は必ず.rssにしてください。.xmlだとOvercastなどのクライアントでエラーになります。
コマンド一覧
podself
引数なしで実行するとヘルプと現在の設定を表示します。
podself generate-rss
対話的にRSSフィードを生成します。音声ファイルのスキャン、Google DriveのファイルIDマッピング、RSS生成を一連の流れで実行します。
podself set-metadata-comment <ファイル>
標準入力からテキストを読み取り、指定したファイルのFinderコメントとして設定します。
# 例
echo "エピソードの説明" | podself set-metadata-comment episode.m4a
cat description.txt | podself set-metadata-comment episode.m4a
グローバルオプション
--verbose, -v: デバッグログを出力--help, -h: ヘルプを表示--version: バージョンを表示
設定
PodselfはXDG Base Directory仕様に対応しており、設定ファイルを使用してカスタマイズできます。
設定ファイルの場所
- 設定ファイル:
~/.config/podself/config.yaml - 音声ファイル:
~/.local/share/podself/episodes/ - RSSフィード:
~/.cache/podself/feed.rss
設定ファイルの例
設定ファイルの例はconfig_example.yamlを参照してください。
フォルダIDの取得方法
- Google Driveでポッドキャスト用フォルダを開く
- URLを確認:
https://drive.google.com/drive/folders/1234567890abcdef - 末尾の
1234567890abcdef部分がフォルダID
トラブルシューティング
Overcastで「Not a podcast feed」エラーが出る
- URLの形式が正しいか確認してください
- ファイル名の拡張子が
.rssになっているか確認してください - Googleドライブの共有設定を確認してください
Finderコメントが読み取れない
- macOSを使用しているか確認してください
- ファイルの権限を確認してください
ライセンス
MIT License
作者
Documentation
¶
There is no documentation for this package.