소스 검색

Fix trickplay images never being replaced

The Refresh API controller did not pass the query parameter from the client to MetadataRefreshOptions and the old trickplay files never got replaced.
gnattu 10 달 전
부모
커밋
c8ca0c72e1
1개의 변경된 파일5개의 추가작업 그리고 2개의 파일을 삭제
  1. 5 2
      Jellyfin.Api/Controllers/ItemRefreshController.cs

+ 5 - 2
Jellyfin.Api/Controllers/ItemRefreshController.cs

@@ -50,6 +50,7 @@ public class ItemRefreshController : BaseJellyfinApiController
     /// <param name="imageRefreshMode">(Optional) Specifies the image refresh mode.</param>
     /// <param name="replaceAllMetadata">(Optional) Determines if metadata should be replaced. Only applicable if mode is FullRefresh.</param>
     /// <param name="replaceAllImages">(Optional) Determines if images should be replaced. Only applicable if mode is FullRefresh.</param>
+    /// <param name="regenerateTrickplay">(Optional) Determines if trickplay images should be replaced. Only applicable if mode is FullRefresh.</param>
     /// <response code="204">Item metadata refresh queued.</response>
     /// <response code="404">Item to refresh not found.</response>
     /// <returns>An <see cref="NoContentResult"/> on success, or a <see cref="NotFoundResult"/> if the item could not be found.</returns>
@@ -62,7 +63,8 @@ public class ItemRefreshController : BaseJellyfinApiController
         [FromQuery] MetadataRefreshMode metadataRefreshMode = MetadataRefreshMode.None,
         [FromQuery] MetadataRefreshMode imageRefreshMode = MetadataRefreshMode.None,
         [FromQuery] bool replaceAllMetadata = false,
-        [FromQuery] bool replaceAllImages = false)
+        [FromQuery] bool replaceAllImages = false,
+        [FromQuery] bool regenerateTrickplay = false)
     {
         var item = _libraryManager.GetItemById<BaseItem>(itemId, User.GetUserId());
         if (item is null)
@@ -81,7 +83,8 @@ public class ItemRefreshController : BaseJellyfinApiController
                 || replaceAllImages
                 || replaceAllMetadata,
             IsAutomated = false,
-            RemoveOldMetadata = replaceAllMetadata
+            RemoveOldMetadata = replaceAllMetadata,
+            RegenerateTrickplay = regenerateTrickplay
         };
 
         _providerManager.QueueRefresh(item.Id, refreshOptions, RefreshPriority.High);