diff --git a/CHANGELOG.md b/CHANGELOG.md index f50ce9d13..56df7ea33 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -74,8 +74,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). - Prevent saving block templates when blocks are overlapping - This can happen if block durations are changed for blocks that are already on the template - Redirect variant playlist request to proper URL for starting `HLS Segmenter` session when no session is active - - This can happen when some clients "pause" for long enough for the session to stop in ETV - - When this happens, the client requests the temporary playlist URL e.g. `/iptv/session/1/hls.m3u8` (not the original URL `/iptv/channel/1.m3u8`) + - This can happen when some clients "pause" long enough for the session to stop in ETV + - When the client resumes playback, it requests the temp playlist URL which is now invalid e.g. `/iptv/session/1/hls.m3u8` (not the original URL `/iptv/channel/1.m3u8`) - To fix, the client will be redirected back to the original URL in this case which will create a new session ## [0.8.7-beta] - 2024-06-26 diff --git a/ErsatzTV.Application/ErsatzTV.Application.csproj b/ErsatzTV.Application/ErsatzTV.Application.csproj index fa54b6698..acaacdba4 100644 --- a/ErsatzTV.Application/ErsatzTV.Application.csproj +++ b/ErsatzTV.Application/ErsatzTV.Application.csproj @@ -15,13 +15,13 @@ - + all runtime; build; native; contentfiles; analyzers; buildtransitive - + diff --git a/ErsatzTV.Core.Tests/ErsatzTV.Core.Tests.csproj b/ErsatzTV.Core.Tests/ErsatzTV.Core.Tests.csproj index 34a63a67f..a22a243ee 100644 --- a/ErsatzTV.Core.Tests/ErsatzTV.Core.Tests.csproj +++ b/ErsatzTV.Core.Tests/ErsatzTV.Core.Tests.csproj @@ -16,13 +16,13 @@ - - + + all runtime; build; native; contentfiles; analyzers; buildtransitive - + diff --git a/ErsatzTV.Core/ErsatzTV.Core.csproj b/ErsatzTV.Core/ErsatzTV.Core.csproj index 15db02243..acc6ca9d0 100644 --- a/ErsatzTV.Core/ErsatzTV.Core.csproj +++ b/ErsatzTV.Core/ErsatzTV.Core.csproj @@ -20,7 +20,7 @@ - + all runtime; build; native; contentfiles; analyzers; buildtransitive @@ -30,7 +30,7 @@ - + diff --git a/ErsatzTV.FFmpeg.Tests/ErsatzTV.FFmpeg.Tests.csproj b/ErsatzTV.FFmpeg.Tests/ErsatzTV.FFmpeg.Tests.csproj index 76bb7bdc9..915fa39c9 100644 --- a/ErsatzTV.FFmpeg.Tests/ErsatzTV.FFmpeg.Tests.csproj +++ b/ErsatzTV.FFmpeg.Tests/ErsatzTV.FFmpeg.Tests.csproj @@ -10,9 +10,9 @@ - + - + diff --git a/ErsatzTV.Infrastructure.MySql/ErsatzTV.Infrastructure.MySql.csproj b/ErsatzTV.Infrastructure.MySql/ErsatzTV.Infrastructure.MySql.csproj index 14d5d415b..452771f97 100644 --- a/ErsatzTV.Infrastructure.MySql/ErsatzTV.Infrastructure.MySql.csproj +++ b/ErsatzTV.Infrastructure.MySql/ErsatzTV.Infrastructure.MySql.csproj @@ -16,7 +16,7 @@ - + diff --git a/ErsatzTV.Infrastructure.Sqlite/ErsatzTV.Infrastructure.Sqlite.csproj b/ErsatzTV.Infrastructure.Sqlite/ErsatzTV.Infrastructure.Sqlite.csproj index 5155d5ae9..10e444f62 100644 --- a/ErsatzTV.Infrastructure.Sqlite/ErsatzTV.Infrastructure.Sqlite.csproj +++ b/ErsatzTV.Infrastructure.Sqlite/ErsatzTV.Infrastructure.Sqlite.csproj @@ -13,8 +13,8 @@ - - + + diff --git a/ErsatzTV.Infrastructure.Tests/ErsatzTV.Infrastructure.Tests.csproj b/ErsatzTV.Infrastructure.Tests/ErsatzTV.Infrastructure.Tests.csproj index 896c02346..b164b49b0 100644 --- a/ErsatzTV.Infrastructure.Tests/ErsatzTV.Infrastructure.Tests.csproj +++ b/ErsatzTV.Infrastructure.Tests/ErsatzTV.Infrastructure.Tests.csproj @@ -10,11 +10,11 @@ - + - + - + runtime; build; native; contentfiles; analyzers; buildtransitive all diff --git a/ErsatzTV.Infrastructure/Data/Repositories/MediaCollectionRepository.cs b/ErsatzTV.Infrastructure/Data/Repositories/MediaCollectionRepository.cs index 8b275a98a..8f0e32de6 100644 --- a/ErsatzTV.Infrastructure/Data/Repositories/MediaCollectionRepository.cs +++ b/ErsatzTV.Infrastructure/Data/Repositories/MediaCollectionRepository.cs @@ -1009,6 +1009,7 @@ public class MediaCollectionRepository : IMediaCollectionRepository private static Task> GetMovieItems(TvContext dbContext, IEnumerable movieIds) => dbContext.Movies .Include(m => m.MovieMetadata) + .ThenInclude(mm => mm.Subtitles) .Include(m => m.MediaVersions) .ThenInclude(mv => mv.Chapters) .Include(m => m.MediaVersions) @@ -1035,6 +1036,7 @@ public class MediaCollectionRepository : IMediaCollectionRepository .Include(m => m.Artist) .ThenInclude(a => a.ArtistMetadata) .Include(m => m.MusicVideoMetadata) + .ThenInclude(mvm => mvm.Subtitles) .Include(m => m.MediaVersions) .ThenInclude(mv => mv.Chapters) .Include(m => m.MediaVersions) @@ -1069,6 +1071,8 @@ public class MediaCollectionRepository : IMediaCollectionRepository .Include(m => m.Artist) .ThenInclude(a => a.ArtistMetadata) .Include(m => m.MusicVideoMetadata) + .ThenInclude(mvm => mvm.Subtitles) + .Include(m => m.MusicVideoMetadata) .ThenInclude(mvm => mvm.Artists) .Include(m => m.MediaVersions) .ThenInclude(mv => mv.Chapters) @@ -1091,6 +1095,7 @@ public class MediaCollectionRepository : IMediaCollectionRepository private static Task> GetOtherVideoItems(TvContext dbContext, IEnumerable otherVideoIds) => dbContext.OtherVideos .Include(m => m.OtherVideoMetadata) + .ThenInclude(ovm => ovm.Subtitles) .Include(m => m.MediaVersions) .ThenInclude(mv => mv.Chapters) .Include(m => m.MediaVersions) @@ -1112,6 +1117,7 @@ public class MediaCollectionRepository : IMediaCollectionRepository private static Task> GetSongItems(TvContext dbContext, IEnumerable songIds) => dbContext.Songs .Include(m => m.SongMetadata) + .ThenInclude(s => s.Subtitles) .Include(m => m.MediaVersions) .ThenInclude(mv => mv.Chapters) .Include(m => m.MediaVersions) @@ -1133,6 +1139,7 @@ public class MediaCollectionRepository : IMediaCollectionRepository private static Task> GetImageItems(TvContext dbContext, IEnumerable songIds) => dbContext.Images .Include(m => m.ImageMetadata) + .ThenInclude(im => im.Subtitles) .Include(m => m.MediaVersions) .ThenInclude(mv => mv.Chapters) .Include(m => m.MediaVersions) @@ -1158,6 +1165,7 @@ public class MediaCollectionRepository : IMediaCollectionRepository private static Task> GetShowItemsFromEpisodeIds(TvContext dbContext, IEnumerable episodeIds) => dbContext.Episodes .Include(e => e.EpisodeMetadata) + .ThenInclude(em => em.Subtitles) .Include(e => e.MediaVersions) .ThenInclude(mv => mv.Chapters) .Include(m => m.MediaVersions) @@ -1195,6 +1203,7 @@ public class MediaCollectionRepository : IMediaCollectionRepository private static Task> GetSeasonItemsFromEpisodeIds(TvContext dbContext, IEnumerable episodeIds) => dbContext.Episodes .Include(e => e.EpisodeMetadata) + .ThenInclude(em => em.Subtitles) .Include(e => e.MediaVersions) .ThenInclude(mv => mv.Chapters) .Include(m => m.MediaVersions) @@ -1230,6 +1239,7 @@ public class MediaCollectionRepository : IMediaCollectionRepository private static Task> GetEpisodeItems(TvContext dbContext, IEnumerable episodeIds) => dbContext.Episodes .Include(e => e.EpisodeMetadata) + .ThenInclude(em => em.Subtitles) .Include(e => e.MediaVersions) .ThenInclude(mv => mv.Chapters) .Include(m => m.MediaVersions) diff --git a/ErsatzTV.Infrastructure/ErsatzTV.Infrastructure.csproj b/ErsatzTV.Infrastructure/ErsatzTV.Infrastructure.csproj index 710d535cd..7b9c46a9f 100644 --- a/ErsatzTV.Infrastructure/ErsatzTV.Infrastructure.csproj +++ b/ErsatzTV.Infrastructure/ErsatzTV.Infrastructure.csproj @@ -13,18 +13,18 @@ - - + + - - + + all runtime; build; native; contentfiles; analyzers; buildtransitive - - + + all runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/ErsatzTV.Scanner.Tests/ErsatzTV.Scanner.Tests.csproj b/ErsatzTV.Scanner.Tests/ErsatzTV.Scanner.Tests.csproj index 9f0fd37ba..f02254c3d 100644 --- a/ErsatzTV.Scanner.Tests/ErsatzTV.Scanner.Tests.csproj +++ b/ErsatzTV.Scanner.Tests/ErsatzTV.Scanner.Tests.csproj @@ -11,11 +11,11 @@ - + - + - + runtime; build; native; contentfiles; analyzers; buildtransitive all diff --git a/ErsatzTV.Scanner/ErsatzTV.Scanner.csproj b/ErsatzTV.Scanner/ErsatzTV.Scanner.csproj index 71d03984a..c382fe0ca 100644 --- a/ErsatzTV.Scanner/ErsatzTV.Scanner.csproj +++ b/ErsatzTV.Scanner/ErsatzTV.Scanner.csproj @@ -28,7 +28,7 @@ - + diff --git a/ErsatzTV/ErsatzTV.csproj b/ErsatzTV/ErsatzTV.csproj index e51430e92..256ef0e31 100644 --- a/ErsatzTV/ErsatzTV.csproj +++ b/ErsatzTV/ErsatzTV.csproj @@ -20,28 +20,28 @@ - + - - - - - + + + + + all runtime; build; native; contentfiles; analyzers; buildtransitive - + all runtime; build; native; contentfiles; analyzers; buildtransitive - + - +