소스 검색

Merge pull request #10870 from MaVdbussche/fix-trailers_urls

Fix NFO parser to be able to read corrct STRM URL format
Cody Robibero 1 년 전
부모
커밋
64b0c82d68
2개의 변경된 파일23개의 추가작업 그리고 4개의 파일을 삭제
  1. 1 0
      CONTRIBUTORS.md
  2. 22 4
      MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs

+ 1 - 0
CONTRIBUTORS.md

@@ -175,6 +175,7 @@
  - [Chris-Codes-It](https://github.com/Chris-Codes-It)
  - [Chris-Codes-It](https://github.com/Chris-Codes-It)
  - [Pithaya](https://github.com/Pithaya)
  - [Pithaya](https://github.com/Pithaya)
  - [Çağrı Sakaoğlu](https://github.com/ilovepilav)
  - [Çağrı Sakaoğlu](https://github.com/ilovepilav)
+ _ [Barasingha](https://github.com/MaVdbussche)
  - [Gauvino](https://github.com/Gauvino)
  - [Gauvino](https://github.com/Gauvino)
 
 
 # Emby Contributors
 # Emby Contributors

+ 22 - 4
MediaBrowser.XbmcMetadata/Parsers/BaseNfoParser.cs

@@ -460,10 +460,28 @@ namespace MediaBrowser.XbmcMetadata.Parsers
                     var trailer = reader.ReadNormalizedString();
                     var trailer = reader.ReadNormalizedString();
                     if (!string.IsNullOrEmpty(trailer))
                     if (!string.IsNullOrEmpty(trailer))
                     {
                     {
-                        item.AddTrailerUrl(trailer.Replace(
-                            "plugin://plugin.video.youtube/?action=play_video&videoid=",
-                            BaseNfoSaver.YouTubeWatchUrl,
-                            StringComparison.OrdinalIgnoreCase));
+                        if (trailer.StartsWith("plugin://plugin.video.youtube/?action=play_video&videoid=", StringComparison.OrdinalIgnoreCase))
+                        {
+                            // Deprecated format
+                            item.AddTrailerUrl(trailer.Replace(
+                                "plugin://plugin.video.youtube/?action=play_video&videoid=",
+                                BaseNfoSaver.YouTubeWatchUrl,
+                                StringComparison.OrdinalIgnoreCase));
+
+                            var suggestedUrl = trailer.Replace(
+                                "plugin://plugin.video.youtube/?action=play_video&videoid=",
+                                "plugin://plugin.video.youtube/play/?video_id=",
+                                StringComparison.OrdinalIgnoreCase);
+                            Logger.LogWarning("Trailer URL uses a deprecated format : {Url}. Using {NewUrl} instead is advised.", trailer, suggestedUrl);
+                        }
+                        else if (trailer.StartsWith("plugin://plugin.video.youtube/play/?video_id=", StringComparison.OrdinalIgnoreCase))
+                        {
+                            // Proper format
+                            item.AddTrailerUrl(trailer.Replace(
+                                "plugin://plugin.video.youtube/play/?video_id=",
+                                BaseNfoSaver.YouTubeWatchUrl,
+                                StringComparison.OrdinalIgnoreCase));
+                        }
                     }
                     }
 
 
                     break;
                     break;