diff options
Diffstat (limited to 'Emby.Server.Implementations/Library/ExclusiveLiveStream.cs')
| -rw-r--r-- | Emby.Server.Implementations/Library/ExclusiveLiveStream.cs | 35 |
1 files changed, 24 insertions, 11 deletions
diff --git a/Emby.Server.Implementations/Library/ExclusiveLiveStream.cs b/Emby.Server.Implementations/Library/ExclusiveLiveStream.cs index 45a33a296..868071a99 100644 --- a/Emby.Server.Implementations/Library/ExclusiveLiveStream.cs +++ b/Emby.Server.Implementations/Library/ExclusiveLiveStream.cs @@ -1,4 +1,10 @@ +#nullable disable + +#pragma warning disable CS1591 + using System; +using System.Globalization; +using System.IO; using System.Threading; using System.Threading.Tasks; using MediaBrowser.Controller.Library; @@ -8,30 +14,37 @@ namespace Emby.Server.Implementations.Library { public class ExclusiveLiveStream : ILiveStream { + private readonly Func<Task> _closeFn; + + public ExclusiveLiveStream(MediaSourceInfo mediaSource, Func<Task> closeFn) + { + MediaSource = mediaSource; + EnableStreamSharing = false; + _closeFn = closeFn; + ConsumerCount = 1; + UniqueId = Guid.NewGuid().ToString("N", CultureInfo.InvariantCulture); + } + public int ConsumerCount { get; set; } + public string OriginalStreamId { get; set; } public string TunerHostId => null; public bool EnableStreamSharing { get; set; } - public MediaSourceInfo MediaSource { get; set; } - public string UniqueId { get; private set; } + public MediaSourceInfo MediaSource { get; set; } - private Func<Task> _closeFn; + public string UniqueId { get; } - public ExclusiveLiveStream(MediaSourceInfo mediaSource, Func<Task> closeFn) + public Task Close() { - MediaSource = mediaSource; - EnableStreamSharing = false; - _closeFn = closeFn; - ConsumerCount = 1; - UniqueId = Guid.NewGuid().ToString("N"); + return _closeFn(); } - public Task Close() + public Stream GetStream() { - return _closeFn(); + throw new NotSupportedException(); } public Task Open(CancellationToken openCancellationToken) |
