Browse Source

reduce hls disk use (#808)

* reduce hls segmenter disk use

* logging improvements

* update dependencies
pull/809/head
Jason Dove 4 years ago committed by GitHub
parent
commit
f272036c6f
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 7
      ErsatzTV.Application/Streaming/HlsSessionWorker.cs
  2. 2
      ErsatzTV.Core.Tests/ErsatzTV.Core.Tests.csproj
  3. 2
      ErsatzTV.Core/FFmpeg/FFmpegStreamSelector.cs
  4. 1
      ErsatzTV.Core/Metadata/LocalFolderScanner.cs
  5. 2
      ErsatzTV.FFmpeg.Tests/ErsatzTV.FFmpeg.Tests.csproj

7
ErsatzTV.Application/Streaming/HlsSessionWorker.cs

@ -371,7 +371,7 @@ public class HlsSessionWorker : IHlsSessionWorker
} }
} }
private static async Task<long> GetPtsOffset( private async Task<long> GetPtsOffset(
IMediator mediator, IMediator mediator,
string channelNumber, string channelNumber,
CancellationToken cancellationToken) CancellationToken cancellationToken)
@ -385,6 +385,11 @@ public class HlsSessionWorker : IHlsSessionWorker
new GetLastPtsDuration(channelNumber), new GetLastPtsDuration(channelNumber),
cancellationToken); cancellationToken);
foreach (BaseError error in queryResult.LeftToSeq())
{
_logger.LogWarning("Unable to determine last pts offset - {@Error}", error);
}
foreach ((long pts, long duration) in queryResult.RightToSeq()) foreach ((long pts, long duration) in queryResult.RightToSeq())
{ {
result = pts + duration; result = pts + duration;

2
ErsatzTV.Core.Tests/ErsatzTV.Core.Tests.csproj

@ -21,7 +21,7 @@
<PrivateAssets>all</PrivateAssets> <PrivateAssets>all</PrivateAssets>
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets> <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
</PackageReference> </PackageReference>
<PackageReference Include="Moq" Version="4.18.0" /> <PackageReference Include="Moq" Version="4.18.1" />
<PackageReference Include="NUnit" Version="3.13.3" /> <PackageReference Include="NUnit" Version="3.13.3" />
<PackageReference Include="NUnit3TestAdapter" Version="4.2.1" /> <PackageReference Include="NUnit3TestAdapter" Version="4.2.1" />
<PackageReference Include="Serilog" Version="2.11.0" /> <PackageReference Include="Serilog" Version="2.11.0" />

2
ErsatzTV.Core/FFmpeg/FFmpegStreamSelector.cs

@ -82,7 +82,7 @@ public class FFmpegStreamSelector : IFFmpegStreamSelector
"Unable to find audio stream with preferred audio language code(s) {Code}; selecting stream with most channels", "Unable to find audio stream with preferred audio language code(s) {Code}; selecting stream with most channels",
allCodes); allCodes);
return audioStreams.OrderByDescending(s => s.Channels).Head(); return audioStreams.OrderByDescending(s => s.Channels).HeadOrNone();
} }
public async Task<Option<Subtitle>> SelectSubtitleStream( public async Task<Option<Subtitle>> SelectSubtitleStream(

1
ErsatzTV.Core/Metadata/LocalFolderScanner.cs

@ -299,6 +299,7 @@ public abstract class LocalFolderScanner
} }
protected bool ShouldIncludeFolder(string folder) => protected bool ShouldIncludeFolder(string folder) =>
!string.IsNullOrWhiteSpace(folder) &&
!Path.GetFileName(folder).StartsWith('.') && !Path.GetFileName(folder).StartsWith('.') &&
!_localFileSystem.FileExists(Path.Combine(folder, ".etvignore")); !_localFileSystem.FileExists(Path.Combine(folder, ".etvignore"));
} }

2
ErsatzTV.FFmpeg.Tests/ErsatzTV.FFmpeg.Tests.csproj

@ -10,7 +10,7 @@
<ItemGroup> <ItemGroup>
<PackageReference Include="FluentAssertions" Version="6.6.0" /> <PackageReference Include="FluentAssertions" Version="6.6.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.2.0" /> <PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.2.0" />
<PackageReference Include="Moq" Version="4.18.0" /> <PackageReference Include="Moq" Version="4.18.1" />
<PackageReference Include="NUnit" Version="3.13.3" /> <PackageReference Include="NUnit" Version="3.13.3" />
<PackageReference Include="NUnit3TestAdapter" Version="4.2.1" /> <PackageReference Include="NUnit3TestAdapter" Version="4.2.1" />
<PackageReference Include="System.IO.FileSystem.Primitives" Version="4.3.0" /> <PackageReference Include="System.IO.FileSystem.Primitives" Version="4.3.0" />

Loading…
Cancel
Save