mirror of
https://github.com/jellyfin/jellyfin.git
synced 2026-07-16 05:43:54 +03:00
[PR #13771] [MERGED] Import Keyframes into database #13706
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/jellyfin/jellyfin/pull/13771
Author: @Shadowghost
Created: 3/25/2025
Status: ✅ Merged
Merged: 4/3/2025
Merged by: @crobibero
Base:
master← Head:import-keyframes📝 Commits (3)
4168ac1Migrate keyframe data into database0a9ab23Clear database table before import to handle failed migrationsa2e3b5fMerge branch 'master' into import-keyframes📊 Changes
22 files changed (+2128 additions, -78 deletions)
View changed files
📝
Emby.Server.Implementations/ApplicationHost.cs(+1 -0)📝
Jellyfin.Api/Controllers/DynamicHlsController.cs(+1 -0)📝
Jellyfin.Server.Implementations/Item/BaseItemRepository.cs(+1 -0)➕
Jellyfin.Server.Implementations/Item/KeyframeRepository.cs(+64 -0)📝
Jellyfin.Server/Migrations/MigrationRunner.cs(+1 -0)➕
Jellyfin.Server/Migrations/Routines/MigrateKeyframeData.cs(+173 -0)📝
MediaBrowser.Controller/MediaBrowser.Controller.csproj(+1 -0)➕
MediaBrowser.Controller/Persistence/IKeyframeRepository.cs(+29 -0)➕
src/Jellyfin.Database/Jellyfin.Database.Implementations/Entities/KeyframeData.cs(+32 -0)📝
src/Jellyfin.Database/Jellyfin.Database.Implementations/JellyfinDbContext.cs(+5 -0)➕
src/Jellyfin.Database/Jellyfin.Database.Implementations/ModelConfiguration/KeyframeDataConfiguration.cs(+18 -0)➕
src/Jellyfin.Database/Jellyfin.Database.Providers.Sqlite/Migrations/20250327101120_AddKeyframeData.Designer.cs(+1681 -0)➕
src/Jellyfin.Database/Jellyfin.Database.Providers.Sqlite/Migrations/20250327101120_AddKeyframeData.cs(+41 -0)📝
src/Jellyfin.Database/Jellyfin.Database.Providers.Sqlite/Migrations/JellyfinDbModelSnapshot.cs(+29 -0)📝
src/Jellyfin.MediaEncoding.Hls/Cache/CacheDecorator.cs(+22 -57)📝
src/Jellyfin.MediaEncoding.Hls/Extractors/FfProbeKeyframeExtractor.cs(+1 -1)📝
src/Jellyfin.MediaEncoding.Hls/Extractors/IKeyframeExtractor.cs(+3 -1)📝
src/Jellyfin.MediaEncoding.Hls/Extractors/MatroskaKeyframeExtractor.cs(+1 -1)📝
src/Jellyfin.MediaEncoding.Hls/Jellyfin.MediaEncoding.Hls.csproj(+1 -0)📝
src/Jellyfin.MediaEncoding.Hls/Playlist/CreateMainPlaylistRequest.cs(+10 -1)...and 2 more files
📄 Description
Keyframe data is currently saved in JSON files. This PR migrates the data into the database and properly cleans it up when the item is removed.
A mediaSource is always an item.
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.