Pinchflat
セルフホスト型の YouTube メディアダウンロードマネージャーで、チャンネルの更新を自動的に取得し、使いやすい Web インターフェースを提供します。Plex などのメディアセンターに対応しています。
スマートダウンロード
プロジェクトのホームページへ
インストーラはまだありません — ソースリポジトリをご覧ください
ワンクリックでチャンネルを購読し、YouTube 動画を自動的にダウンロードしてメディアライブラリに整理します。
主な機能
- 単一の Docker コンテナでデプロイ、外部依存なし
- 強力な命名ルール:ファイルの保存場所とフォーマットをカスタマイズ可能
- 新しいコンテンツを自動検出してダウンロード、周期は調整可能
- 音声のみのダウンロードに対応、ポッドキャスト管理に便利
- RSS フィードを内蔵、ポッドキャストクライアントで利用可能
できないこと
- •Pinchflat は動画再生機能を提供していないため、Plex/Jellyfin/VLC などのプレイヤーと併用する必要があります。初回使用時はマウントディレクトリの権限に注意してください:Docker コンテナ内のユーザーは対象ディレクトリへの書き込み権限が必要です。ネットワークストレージ(NAS/NFS)を使用する場合は、I/O の問題を避けるため設定をローカルディスクに保存することを推奨します。リバースプロキシを使用する場合は、WebSocket または API パスの追加設定が必要です。
使用例
- YouTube の教育系チャンネルや Vlog をローカルメディアサーバーにアーカイブする
- ポッドキャスト系チャンネルを定期的にダウンロードし、ポッドキャスト App にインポートしてオフラインで聴く
- お気に入りの YouTube 再生リストをローカルにバックアップする
詳細説明
Pinchflat は yt-dlp ベースのセルフホスト型 YouTube ダウンロードマネージャーです。チャンネルやプレイリストのダウンロードルールを設定するだけで、Pinchflat が定期的に新着動画をチェックし、自動的にダウンロードして、設定した命名規則に従ってローカルディスクに整理します。単一の Docker コンテナで動作し、外部依存は一切不要で、シンプルな Web インターフェースを備えています。音声のみのダウンロード、Shorts やライブ配信の処理、SponsorBlock の統合、より高画質を得るための自動再ダウンロード、古いメディアの定期削除、ポッドキャストアプリ向けの RSS フィード提供、高度な yt-dlp パラメータのカスタマイズをサポートしています。YouTube コンテンツを Plex、Jellyfin、Kodi などのメディアセンターにアーカイブするのに最適です。
トラブルシューティング & FAQ (2)
トラブル対応なぜPinchflatは、YouTube以外のソースからダウンロードしたファイルを、ビデオタイトルではなくソースファイル名で保存するのですか?
Pinchflatは、非YouTubeダウンロードの出力パステンプレートにおいて、ソースファイル名をtitle変数として誤って使用します。回避策として、目的の出力テンプレートを指定して手動でyt-dlpを実行してください。例:yt-dlp <url> --output "/downloads/path/%(title)s.%(ext)s"。恒久的な修正がリリースされたときは、issue #846を追跡してください。
トラブル対応新しいYouTubeソースを保存する際に、Pinchflatがハングしたり、接続がリセットされたり、Bad Gatewayが表示されたりする問題を修正するにはどうすればよいですか?
Pinchflat コンテナの DNS 解決を確認してください。報告されたケースでは、ホスト上では DNS が正常に動作していたにもかかわらず、コンテナ内では youtube.com が誤ってループバックアドレス(2001::1)と無関係な IP(199.16.158.12)に解決されていました。
コンテナ内から名前解決を確認します:
docker exec -it <pinchflat-container> sh -lc "getent hosts youtube.com"
予期しないアドレスやループバックアドレスが返される場合は、docker-compose.yml で DNS サーバーを明示的に設定します:
services:
pinchflat:
dns:
- 1.1.1.1
- 8.8.8.8
コンテナを再作成します:
docker compose up -d --force-recreate
その後、YouTube ソースを再度追加してみてください。youtube.com が 2001::1 や 199.16.158.12 ではなく、通常の YouTube のアドレスに解決されることを確認します。
タグ
はじめ方
ソフトウェアをインストール
ダウンロードしたインストーラをダブルクリックし、指示に従ってください
ステップ1:Docker がインストールされていることを確認し、イメージをプルします:docker pull ghcr.io/kieraneglin/pinchflat:latest
ステップ2:ローカルディレクトリ(例:/data/pinchflat/config と /data/pinchflat/downloads)を作成し、書き込み権限を付与します
ステップ3:コンテナを実行し、ポート 8945 をマッピングし、2つのディレクトリをマウントして、タイムゾーンを設定します:docker run -d -p 8945:8945 -v /data/pinchflat/config:/config -v /data/pinchflat/downloads:/downloads -e TZ=Asia/Shanghai ghcr.io/kieraneglin/pinchflat:latest
- ステップ1:Docker がインストールされていることを確認し、イメージをプルします:docker pull ghcr.io/kieraneglin/pinchflat:latest
- ステップ2:ローカルディレクトリ(例:/data/pinchflat/config と /data/pinchflat/downloads)を作成し、書き込み権限を付与します
- ステップ3:コンテナを実行し、ポート 8945 をマッピングし、2つのディレクトリをマウントして、タイムゾーンを設定します:docker run -d -p 8945:8945 -v /data/pinchflat/config:/config -v /data/pinchflat/downloads:/downloads -e TZ=Asia/Shanghai ghcr.io/kieraneglin/pinchflat:latest
チェックサムがありません
このプロジェクトは GitHub Release ページに SHA-256 チェックサムを公開していません
SHA256 チェックサム
チェックサムなし
GitHub Releases から直接ダウンロードし、ファイルの整合性をご自身で確認してください
本プラットフォーム上のすべての SHA-256 チェックサムは、プロジェクトの公式 GitHub Release ページから抽出されたもので、一切の改変はありません。GitHub Releases ページで独自に検証できます。
オープンソースの透明性
GitHub ソースを見るアンインストール情報
コンテナを停止して削除:docker stop pinchflat && docker rm pinchflat。すべてのデータをクリーンアップするには、ローカルにマッピングされた config および downloads ディレクトリを削除できます。
追加の依存関係なし
ダウンロード後すぐに使用可能。追加のランタイムは不要です。
問題が発生?以下のFAQを確認
2 FAQs