From 054706333d0c76b2fe676c91fbdf19b39d3d7b8b Mon Sep 17 00:00:00 2001 From: myristate Date: Tue, 13 Oct 2026 13:36:10 -0400 Subject: Backport pull request #18243 from jellyfin/release-12.z Fix crash probing streams without frame size Original-merge: 8e50df32e7ca3f7d74553b2dbb40cc3ef8e95bfc Merged-by: crobibero Backported-by: Bond_009 --- .../Probing/ProbeResultNormalizerTests.cs | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) (limited to 'tests/Jellyfin.MediaEncoding.Tests/Probing/ProbeResultNormalizerTests.cs') diff --git a/tests/Jellyfin.MediaEncoding.Tests/Probing/ProbeResultNormalizerTests.cs b/tests/Jellyfin.MediaEncoding.Tests/Probing/ProbeResultNormalizerTests.cs index 52e0b19700..cf9930abe1 100644 --- a/tests/Jellyfin.MediaEncoding.Tests/Probing/ProbeResultNormalizerTests.cs +++ b/tests/Jellyfin.MediaEncoding.Tests/Probing/ProbeResultNormalizerTests.cs @@ -242,6 +242,27 @@ namespace Jellyfin.MediaEncoding.Tests.Probing Assert.False(res.MediaStreams[0].IsAVC); } + [Theory] + [InlineData("Test Data/Probing/video_ts_no_dimensions.json", null)] + [InlineData("Test Data/Probing/video_ts_no_dimensions_zero_dar.json", "0:1")] + public void GetMediaInfo_TSWithoutDimensions_Success(string path, string? expectedAspectRatio) + { + var bytes = File.ReadAllBytes(path); + var internalMediaInfoResult = JsonSerializer.Deserialize(bytes, _jsonOptions); + + MediaInfo res = _probeResultNormalizer.GetMediaInfo(internalMediaInfoResult, VideoType.VideoFile, false, "http://192.168.1.19:5004/auto/v4", MediaProtocol.Http); + + Assert.Equal(2, res.MediaStreams.Count); + + var video = res.MediaStreams[0]; + Assert.Equal(MediaStreamType.Video, video.Type); + Assert.Equal("mpeg2video", video.Codec); + Assert.Null(video.Width); + Assert.Null(video.Height); + Assert.Equal(expectedAspectRatio, video.AspectRatio); + Assert.False(video.IsAnamorphic); + } + [Fact] public void GetMediaInfo_WebM_Success() { -- cgit v1.2.3