podself

command module
v0.0.0-...-2d9c4a1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 6, 2025 License: MIT Imports: 20 Imported by: 0

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フォルダの準備
  1. Google Driveに新しいフォルダを作成
  2. フォルダを右クリック → 「リンクを取得」
  3. 「制限付き」を「リンクを知っている全員」に変更
  4. URLからフォルダIDを取得(folders/の後の部分)
  5. 設定ファイルの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フィードを生成します:

  1. JavaScript自動コピー: ファイルIDを取得するJavaScriptが自動的にクリップボードにコピーされます
  2. ブラウザ自動起動: フォルダIDを設定している場合、Google Driveフォルダがブラウザで自動的に開きます
  3. JavaScript実行: 開発者コンソールを開いて、クリップボードの内容を貼り付けて実行します
  4. Enter押下: JavaScriptを実行して結果がクリップボードにコピーされたら、ターミナルに戻ってEnterキーを押します
  5. 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の取得方法
  1. Google Driveでポッドキャスト用フォルダを開く
  2. URLを確認: https://drive.google.com/drive/folders/1234567890abcdef
  3. 末尾の1234567890abcdef部分がフォルダID

トラブルシューティング

Overcastで「Not a podcast feed」エラーが出る
  • URLの形式が正しいか確認してください
  • ファイル名の拡張子が.rssになっているか確認してください
  • Googleドライブの共有設定を確認してください
Finderコメントが読み取れない
  • macOSを使用しているか確認してください
  • ファイルの権限を確認してください

ライセンス

MIT License

作者

@syou6162

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL