概要
Starchive はYouTube動画を自動でアーカイブするシステム。 Firefox拡張機能 と Go製バックエンド で構成。 動画は yt-dlp と ffmpeg でダウンロード・変換。 字幕対応 (英語のみ、一部制限あり)。 セットアップや利用方法も簡単。
Starchive: YouTube自動アーカイブシステム概要
- Starchive は、YouTube動画を訪問時に自動保存するブラウザ拡張機能およびローカルバックエンドシステム
- Firefox拡張機能 がYouTube動画ページを検出し、動画IDを抽出
- Go製バックエンド が動画IDを受け取り、 yt-dlp と ffmpeg で動画をダウンロードおよびMOV形式(h264_videotoolboxエンコーディング)へ変換
- 英語字幕(VTT形式) のダウンロードにも対応(ただしリトライ制御で一回のみ試行)
- 動画ファイルはローカルの ./data/ ディレクトリに保存
コンポーネント詳細
-
バックエンド(Go)
- HTTPサーバー(main.go)
- ポート3009で稼働
- エンドポイント「/」はヘルスチェック、「/youtube」はPOSTで動画ID受信・ダウンロード処理
- 動画ダウンローダー(youtube.go)
- yt-dlp と ffmpeg で動画取得・MOV変換
- 字幕(英語・VTT形式) 対応(現在リトライ1回のみ)
- HTTPサーバー(main.go)
-
ブラウザ拡張機能(Firefox)
- manifest.json で権限と構成定義
- content.js がYouTube動画ページ検出・動画ID抽出
- background.js がcontent scriptとバックエンドAPIの通信担当
- popup.html/js で手動取得用UI提供
動作フロー
- YouTube動画ページ訪問時、content scriptが 動画ID をURLから抽出
- 動画ID をbackground scriptに送信
- background scriptが http://localhost:3009/youtube へPOSTリクエスト
- Goバックエンドが動画IDを受信し、 yt-dlp で動画ダウンロード
- ffmpeg でMOV形式に変換、./data/ディレクトリへ保存
- 英語字幕も同時にダウンロード(制限あり)
セットアップ方法
- Goバックエンド起動:
go run .コマンド実行
- Firefox拡張機能を firefox/ ディレクトリから読み込み
- 任意のYouTube動画ページ訪問で自動アーカイブ開始
依存関係
- yt-dlp :YouTube動画ダウンロード
- ffmpeg :動画変換・処理
- Go :バックエンドサーバー実行環境
注意事項
- Starchive は https://www.starchive.io/ とは無関係
- ローカル環境でのみ動作、外部サービスとの連携なし
Starchive はYouTube動画の個人アーカイブ用途に最適な自動化ツール。 シンプルな構成とセットアップで、動画保存を効率化。