diff options
| author | Tim Eisele <Ghost_of_Stone@web.de> | 2025-04-03 02:06:40 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-04-02 18:06:40 -0600 |
| commit | 0573999d5ef7526a3bb3e24523ba0e5599816155 (patch) | |
| tree | 7d35df4c7c8536fc8f2f99d8d05309d97862684d /MediaBrowser.Controller/Persistence/IKeyframeRepository.cs | |
| parent | 49ac705867234c48e79ceb1cd84bc4394c65313d (diff) | |
Import Keyframes into database (#13771)
* Migrate keyframe data into database
* Clear database table before import to handle failed migrations
Diffstat (limited to 'MediaBrowser.Controller/Persistence/IKeyframeRepository.cs')
| -rw-r--r-- | MediaBrowser.Controller/Persistence/IKeyframeRepository.cs | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/MediaBrowser.Controller/Persistence/IKeyframeRepository.cs b/MediaBrowser.Controller/Persistence/IKeyframeRepository.cs new file mode 100644 index 000000000..4930434a7 --- /dev/null +++ b/MediaBrowser.Controller/Persistence/IKeyframeRepository.cs @@ -0,0 +1,29 @@ +using System; +using System.Collections.Generic; +using System.Threading; +using System.Threading.Tasks; +using Jellyfin.MediaEncoding.Keyframes; + +namespace MediaBrowser.Controller.Persistence; + +/// <summary> +/// Provides methods for accessing keyframe data. +/// </summary> +public interface IKeyframeRepository +{ + /// <summary> + /// Gets the keyframe data. + /// </summary> + /// <param name="itemId">The item id.</param> + /// <returns>The keyframe data.</returns> + IReadOnlyList<KeyframeData> GetKeyframeData(Guid itemId); + + /// <summary> + /// Saves the keyframe data. + /// </summary> + /// <param name="itemId">The item id.</param> + /// <param name="data">The keyframe data.</param> + /// <param name="cancellationToken">The cancellation token.</param> + /// <returns>The task object representing the asynchronous operation.</returns> + Task SaveKeyframeDataAsync(Guid itemId, KeyframeData data, CancellationToken cancellationToken); +} |
