gitextract_z9ywbwcb/ ├── .editorconfig ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.yml │ │ └── feature_request.md │ ├── dependabot.yml │ └── workflows/ │ ├── build.yml │ ├── package.sh │ └── publish.yml ├── .gitignore ├── .vscode/ │ ├── launch.json │ ├── settings.json │ └── tasks.json ├── ACKNOWLEDGEMENTS.md ├── CHANGELOG.md ├── Jellyfin.Plugin.MediaAnalyzer/ │ ├── Analyzers/ │ │ ├── BlackFrameAnalyzer.cs │ │ ├── ChapterAnalyzer.cs │ │ ├── ChromaprintAnalyzer.cs │ │ └── IMediaFileAnalyzer.cs │ ├── Configuration/ │ │ ├── PluginConfiguration.cs │ │ ├── configPage.html │ │ ├── version.txt │ │ └── visualizer.js │ ├── Controllers/ │ │ ├── MediaAnalyzerController.cs │ │ ├── TroubleshootingController.cs │ │ └── VisualizationController.cs │ ├── Data/ │ │ ├── AnalyzerType.cs │ │ ├── BlackFrame.cs │ │ ├── EpisodeVisualization.cs │ │ ├── FingerprintException.cs │ │ ├── IntroWithMetadata.cs │ │ ├── MediaSegmentsDb.cs │ │ ├── QueuedMedia.cs │ │ ├── Segment.cs │ │ ├── TimeRange.cs │ │ ├── TimeRangeHelpers.cs │ │ └── WarningManager.cs │ ├── Db/ │ │ ├── MediaAnalyzerDbContext.cs │ │ ├── MediaAnalyzerDbFactory.cs │ │ ├── SegmentMetadata.cs │ │ └── SegmentMetadataDb.cs │ ├── Entrypoint/ │ │ └── LibraryChangedEntrypoint.cs │ ├── FFmpegWrapper.cs │ ├── Helper/ │ │ └── Utils.cs │ ├── Jellyfin.Plugin.MediaAnalyzer.csproj │ ├── Migrations/ │ │ ├── 20230525091047_CreateBlacklistSegment.Designer.cs │ │ ├── 20230525091047_CreateBlacklistSegment.cs │ │ ├── 20240903114429_CreateSegmentMetadata.Designer.cs │ │ ├── 20240903114429_CreateSegmentMetadata.cs │ │ └── MediaAnalyzerDbContextModelSnapshot.cs │ ├── Plugin.cs │ ├── QueueManager.cs │ └── ScheduledTasks/ │ ├── AnalyzeMedia.cs │ └── BaseItemAnalyzerTask.cs ├── Jellyfin.Plugin.MediaAnalyzer.Tests/ │ ├── Jellyfin.Plugin.MediaAnalyzer.Tests.csproj │ ├── TestAudioFingerprinting.cs │ ├── TestBlackFrames.cs │ ├── TestChapterAnalyzer.cs │ ├── TestContiguous.cs │ ├── TestWarnings.cs │ ├── audio/ │ │ └── README.txt │ └── e2e_tests/ │ ├── .gitignore │ ├── README.md │ ├── build.sh │ ├── config_sample.jsonc │ ├── docker-compose.yml │ ├── selenium/ │ │ ├── main.py │ │ └── requirements.txt │ ├── verifier/ │ │ ├── go.mod │ │ ├── http.go │ │ ├── main.go │ │ ├── report.html │ │ ├── report_comparison.go │ │ ├── report_comparison_util.go │ │ ├── report_generator.go │ │ ├── schema_validation.go │ │ └── structs/ │ │ ├── intro.go │ │ ├── plugin_configuration.go │ │ ├── public_info.go │ │ └── report.go │ └── wrapper/ │ ├── exec.go │ ├── exec_test.go │ ├── go.mod │ ├── library.json │ ├── main.go │ ├── setup.go │ └── structs.go ├── Jellyfin.Plugin.MediaAnalyzer.sln ├── LICENSE ├── README.md ├── build.yaml ├── docs/ │ └── release.md └── jellyfin.ruleset