Repolode
frederikemmer

frederikemmer/MediaLyze

ffprobeで動画・音楽・オーディオブックのライブラリをスキャンし、技術メタデータをWeb UIで確認できるセルフホスト型ツール。

スター
509
フォーク
17
未解決の Issue
8
最終コミット
昨日

これは何?

MediaLyzeはローカルの動画、音楽、オーディオブックのコレクションをスキャンし、各ファイルをffprobeで解析します。形式、ストリーム、字幕の情報を正規化して、検索可能なライブラリにまとめます。結果はFastAPIとReactのWebインターフェースから確認でき、コレクション全体のグラフ、履歴分析、比較ビュー、品質スコアを利用できます。

SQLiteデータベースを使う単一のDockerコンテナとして実行できるほか、Windows、macOS、Linux向けのElectronデスクトップアプリとしても利用できます。フルスキャンと差分スキャンでは、パス、サイズ、更新日時を基に変更を追跡します。また、globパターンを使ってファイルやフォルダーを除外できます。

ベータ機能として、FFmpegによるトランスコードで、元ファイルに紐づく動画バリエーションを作成できます。Intel、AMD、NVIDIA、Appleの各エンジンでハードウェアアクセラレーションを検出します。置き換えを明示的に確認しない限り、元ファイルは変更されません。

主な機能

  • 01ffprobeでメディアファイルを解析し、形式、ストリーム、字幕を正規化
  • 02パス、サイズ、更新日時に基づくフルスキャンと差分スキャン
  • 03コレクション全体のグラフ、履歴分析、品質スコア
  • 04番組、シーズン、特典コンテンツを認識
  • 05globベースのファイル・フォルダー除外ルール
  • 06ハードウェアアクセラレーションの検出機能を備えた、元ファイルを変更しないベータ版FFmpegトランスコード

ユースケース

  • 大規模なホームビデオや音楽ライブラリ全体のコーデック、解像度、字幕の対応状況を監査する
  • 対象デバイスで再生するために再エンコードが必要なファイルを見つける
  • NAS上のメディアコレクションの経時的な変化を追跡する
  • Docker環境でネットワークマウントされたメディアを読み取り専用で解析する

クイックスタート

  1. 1

    サンプルの環境ファイルをコピーします

    cp docker/env.example .env
  2. 2

    Docker Composeでコンテナをビルドして起動します

    docker compose -f docker-compose-dev.yaml up --build
  3. 3

    ブラウザーで http://localhost:8080 を開きます

使う前に知っておきたいこと

  • AGPL-3.0ライセンスのもとで提供されています。強いコピーレフトライセンスであり、変更したバージョンをネットワーク経由で提供する場合にも適用されます。
  • トランスコード機能はまだベータ版です。
  • 認証機能は組み込まれていません。独自の認証レイヤーを用意する必要があります。

収録されている特集

トピック

#media-library#ffprobe#ffmpeg#self-hosted#media-analysis#transcoding#docker#video-metadata

よくある質問

MediaLyze とは?
ffprobeで動画・音楽・オーディオブックのライブラリをスキャンし、技術メタデータをWeb UIで確認できるセルフホスト型ツール。 MediaLyzeはローカルの動画、音楽、オーディオブックのコレクションをスキャンし、各ファイルをffprobeで解析します。形式、ストリーム、字幕の情報を正規化して、検索可能なライブラリにまとめます。結果はFastAPIとReactのWebインターフェースから確認でき、コレクション全体のグラフ、履歴分析、比較ビュー、品質スコアを利用できます。
MediaLyze は無料で使えますか?ライセンスは?
MediaLyze は AGPL-3.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
MediaLyze は今もメンテナンスされていますか?
活発にメンテナンス中。MediaLyze の最終コミットは 2026年11月6日 です。
MediaLyze は何に使えますか?
大規模なホームビデオや音楽ライブラリ全体のコーデック、解像度、字幕の対応状況を監査する 対象デバイスで再生するために再エンコードが必要なファイルを見つける NAS上のメディアコレクションの経時的な変化を追跡する Docker環境でネットワークマウントされたメディアを読み取り専用で解析する
MediaLyze のインストール方法は?
サンプルの環境ファイルをコピーします: cp docker/env.example .env Docker Composeでコンテナをビルドして起動します: docker compose -f docker-compose-dev.yaml up --build ブラウザーで http://localhost:8080 を開きます
MediaLyze はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/frederikemmer/MediaLyze

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト