From 8d1ca8ca2718b61b6167ffd6dfe61af0c75c7257 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Fri, 31 Mar 2017 15:50:55 -0400 Subject: improve direct play to transcoding fallback --- MediaBrowser.Controller/MediaEncoding/EncodingJobOptions.cs | 5 +++++ 1 file changed, 5 insertions(+) (limited to 'MediaBrowser.Controller/MediaEncoding/EncodingJobOptions.cs') diff --git a/MediaBrowser.Controller/MediaEncoding/EncodingJobOptions.cs b/MediaBrowser.Controller/MediaEncoding/EncodingJobOptions.cs index 73be78dc9..f044db3d0 100644 --- a/MediaBrowser.Controller/MediaEncoding/EncodingJobOptions.cs +++ b/MediaBrowser.Controller/MediaEncoding/EncodingJobOptions.cs @@ -72,6 +72,9 @@ namespace MediaBrowser.Controller.MediaEncoding [ApiMember(Name = "EnableAutoStreamCopy", Description = "Whether or not to allow automatic stream copy if requested values match the original source. Defaults to true.", IsRequired = false, DataType = "bool", ParameterType = "query", Verb = "GET")] public bool EnableAutoStreamCopy { get; set; } + public bool AllowVideoStreamCopy { get; set; } + public bool AllowAudioStreamCopy { get; set; } + /// /// Gets or sets the audio sample rate. /// @@ -218,6 +221,8 @@ namespace MediaBrowser.Controller.MediaEncoding public BaseEncodingJobOptions() { EnableAutoStreamCopy = true; + AllowVideoStreamCopy = true; + AllowAudioStreamCopy = true; Context = EncodingContext.Streaming; } } -- cgit v1.2.3 From 463cb3e35420ab23ebac0785943443daf0d32216 Mon Sep 17 00:00:00 2001 From: Luke Pulverenti Date: Tue, 4 Apr 2017 02:01:20 -0400 Subject: update live stream management --- MediaBrowser.Api/Playback/StreamRequest.cs | 1 - MediaBrowser.Controller/MediaEncoding/EncodingJobOptions.cs | 1 + MediaBrowser.MediaEncoding/Encoder/BaseEncoder.cs | 2 +- MediaBrowser.MediaEncoding/Encoder/EncodingJob.cs | 3 +-- 4 files changed, 3 insertions(+), 4 deletions(-) (limited to 'MediaBrowser.Controller/MediaEncoding/EncodingJobOptions.cs') diff --git a/MediaBrowser.Api/Playback/StreamRequest.cs b/MediaBrowser.Api/Playback/StreamRequest.cs index ecb6350cd..d02b4bae6 100644 --- a/MediaBrowser.Api/Playback/StreamRequest.cs +++ b/MediaBrowser.Api/Playback/StreamRequest.cs @@ -37,7 +37,6 @@ namespace MediaBrowser.Api.Playback public string Params { get; set; } public string PlaySessionId { get; set; } - public string LiveStreamId { get; set; } public string Tag { get; set; } public string SegmentContainer { get; set; } diff --git a/MediaBrowser.Controller/MediaEncoding/EncodingJobOptions.cs b/MediaBrowser.Controller/MediaEncoding/EncodingJobOptions.cs index f044db3d0..30deae842 100644 --- a/MediaBrowser.Controller/MediaEncoding/EncodingJobOptions.cs +++ b/MediaBrowser.Controller/MediaEncoding/EncodingJobOptions.cs @@ -192,6 +192,7 @@ namespace MediaBrowser.Controller.MediaEncoding public int? TranscodingMaxAudioChannels { get; set; } public int? CpuCoreLimit { get; set; } public string OutputContainer { get; set; } + public string LiveStreamId { get; set; } /// /// Gets or sets the video codec. diff --git a/MediaBrowser.MediaEncoding/Encoder/BaseEncoder.cs b/MediaBrowser.MediaEncoding/Encoder/BaseEncoder.cs index b6e695f1b..c0440e132 100644 --- a/MediaBrowser.MediaEncoding/Encoder/BaseEncoder.cs +++ b/MediaBrowser.MediaEncoding/Encoder/BaseEncoder.cs @@ -350,7 +350,7 @@ namespace MediaBrowser.MediaEncoding.Encoder state.IsoMount = await IsoManager.Mount(state.MediaPath, cancellationToken).ConfigureAwait(false); } - if (state.MediaSource.RequiresOpening && string.IsNullOrWhiteSpace(state.LiveStreamId)) + if (state.MediaSource.RequiresOpening && string.IsNullOrWhiteSpace(state.Options.LiveStreamId)) { var liveStreamResponse = await MediaSourceManager.OpenLiveStream(new LiveStreamRequest { diff --git a/MediaBrowser.MediaEncoding/Encoder/EncodingJob.cs b/MediaBrowser.MediaEncoding/Encoder/EncodingJob.cs index 883709de8..98adb6e20 100644 --- a/MediaBrowser.MediaEncoding/Encoder/EncodingJob.cs +++ b/MediaBrowser.MediaEncoding/Encoder/EncodingJob.cs @@ -38,7 +38,6 @@ namespace MediaBrowser.MediaEncoding.Encoder public bool EstimateContentLength { get; set; } public TranscodeSeekInfo TranscodeSeekInfo { get; set; } public long? EncodingDurationTicks { get; set; } - public string LiveStreamId { get; set; } public string ItemType { get; set; } @@ -94,7 +93,7 @@ namespace MediaBrowser.MediaEncoding.Encoder private async void DisposeLiveStream() { - if (MediaSource.RequiresClosing) + if (MediaSource.RequiresClosing && string.IsNullOrWhiteSpace(Options.LiveStreamId) && !string.IsNullOrWhiteSpace(MediaSource.LiveStreamId)) { try { -- cgit v1.2.3