rework hls segmenter (#407)

* rework hls segmenter to start more quickly

* don't use realtime encoding for hls until we're at least a minute ahead

* ugly but functional playlist filtering
This commit is contained in:
Jason Dove
2021-10-09 22:46:38 -05:00
committed by GitHub
parent adc7982955
commit cf5718c288
31 changed files with 546 additions and 335 deletions
@@ -1,14 +1,11 @@
using System.Diagnostics;
using LanguageExt;
using System.Collections.Concurrent;
namespace ErsatzTV.Core.Interfaces.FFmpeg
{
public interface IFFmpegSegmenterService
{
bool ProcessExistsForChannel(string channelNumber);
bool TryAdd(string channelNumber, Process process);
ConcurrentDictionary<string, IHlsSessionWorker> SessionWorkers { get; }
void TouchChannel(string channelNumber);
void CleanUpSessions();
Unit KillAll();
}
}
@@ -0,0 +1,10 @@
using System;
namespace ErsatzTV.Core.Interfaces.FFmpeg
{
public interface IHlsSessionWorker
{
DateTimeOffset PlaylistStart { get; }
void Touch();
}
}