|
|
|
@ -387,8 +387,6 @@ namespace MediaBrowser.Server.Implementations.LiveTv.TunerHosts.HdHomerun
|
|
|
|
|
}
|
|
|
|
|
id += "_" + url.GetMD5().ToString("N");
|
|
|
|
|
|
|
|
|
|
var enableLocalBuffer = EnableLocalBuffer();
|
|
|
|
|
|
|
|
|
|
var mediaSource = new MediaSourceInfo
|
|
|
|
|
{
|
|
|
|
|
Path = url,
|
|
|
|
@ -422,8 +420,8 @@ namespace MediaBrowser.Server.Implementations.LiveTv.TunerHosts.HdHomerun
|
|
|
|
|
BufferMs = 0,
|
|
|
|
|
Container = "ts",
|
|
|
|
|
Id = id,
|
|
|
|
|
SupportsDirectPlay = !enableLocalBuffer,
|
|
|
|
|
SupportsDirectStream = enableLocalBuffer,
|
|
|
|
|
SupportsDirectPlay = false,
|
|
|
|
|
SupportsDirectStream = true,
|
|
|
|
|
SupportsTranscoding = true,
|
|
|
|
|
IsInfiniteStream = true
|
|
|
|
|
};
|
|
|
|
@ -490,11 +488,6 @@ namespace MediaBrowser.Server.Implementations.LiveTv.TunerHosts.HdHomerun
|
|
|
|
|
return channelId.StartsWith(ChannelIdPrefix, StringComparison.OrdinalIgnoreCase);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
private bool EnableLocalBuffer()
|
|
|
|
|
{
|
|
|
|
|
return true;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
protected override async Task<LiveStream> GetChannelStream(TunerHostInfo info, string channelId, string streamId, CancellationToken cancellationToken)
|
|
|
|
|
{
|
|
|
|
|
var profile = streamId.Split('_')[0];
|
|
|
|
@ -509,19 +502,9 @@ namespace MediaBrowser.Server.Implementations.LiveTv.TunerHosts.HdHomerun
|
|
|
|
|
|
|
|
|
|
var mediaSource = await GetMediaSource(info, hdhrId, profile).ConfigureAwait(false);
|
|
|
|
|
|
|
|
|
|
if (EnableLocalBuffer())
|
|
|
|
|
{
|
|
|
|
|
var liveStream = new HdHomerunLiveStream(mediaSource, streamId, _fileSystem, _httpClient, Logger, Config.ApplicationPaths, _appHost);
|
|
|
|
|
liveStream.EnableStreamSharing = true;
|
|
|
|
|
return liveStream;
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
|
|
|
|
var liveStream = new LiveStream(mediaSource);
|
|
|
|
|
liveStream.EnableStreamSharing = true;
|
|
|
|
|
//liveStream.EnableStreamSharing = false;
|
|
|
|
|
return liveStream;
|
|
|
|
|
}
|
|
|
|
|
var liveStream = new HdHomerunLiveStream(mediaSource, streamId, _fileSystem, _httpClient, Logger, Config.ApplicationPaths, _appHost);
|
|
|
|
|
liveStream.EnableStreamSharing = true;
|
|
|
|
|
return liveStream;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public async Task Validate(TunerHostInfo info)
|
|
|
|
|