aboutsummaryrefslogtreecommitdiff
path: root/MediaBrowser.Api/Playback/BaseStreamingService.cs
diff options
context:
space:
mode:
Diffstat (limited to 'MediaBrowser.Api/Playback/BaseStreamingService.cs')
-rw-r--r--MediaBrowser.Api/Playback/BaseStreamingService.cs21
1 files changed, 12 insertions, 9 deletions
diff --git a/MediaBrowser.Api/Playback/BaseStreamingService.cs b/MediaBrowser.Api/Playback/BaseStreamingService.cs
index d1c3de427..e1559cabf 100644
--- a/MediaBrowser.Api/Playback/BaseStreamingService.cs
+++ b/MediaBrowser.Api/Playback/BaseStreamingService.cs
@@ -22,7 +22,6 @@ using System.Threading.Tasks;
using MediaBrowser.Common.Net;
using MediaBrowser.Controller;
using MediaBrowser.Controller.Net;
-using MediaBrowser.MediaEncoding.Encoder;
using MediaBrowser.Model.Diagnostics;
namespace MediaBrowser.Api.Playback
@@ -126,14 +125,10 @@ namespace MediaBrowser.Api.Playback
/// <summary>
/// Gets the output file path.
/// </summary>
- /// <param name="state">The state.</param>
- /// <returns>System.String.</returns>
- private string GetOutputFilePath(StreamState state)
+ private string GetOutputFilePath(StreamState state, string outputFileExtension)
{
var folder = ServerConfigurationManager.ApplicationPaths.TranscodingTempPath;
- var outputFileExtension = GetOutputFileExtension(state);
-
var data = GetCommandLineArguments("dummy\\dummy", state, false);
data += "-" + (state.Request.DeviceId ?? string.Empty);
@@ -802,7 +797,7 @@ namespace MediaBrowser.Api.Playback
{
state.User = UserManager.GetUserById(auth.UserId);
}
-
+
//if ((Request.UserAgent ?? string.Empty).IndexOf("iphone", StringComparison.OrdinalIgnoreCase) != -1 ||
// (Request.UserAgent ?? string.Empty).IndexOf("ipad", StringComparison.OrdinalIgnoreCase) != -1 ||
// (Request.UserAgent ?? string.Empty).IndexOf("ipod", StringComparison.OrdinalIgnoreCase) != -1)
@@ -878,9 +873,14 @@ namespace MediaBrowser.Api.Playback
if (string.IsNullOrEmpty(container))
{
+ container = request.Container;
+ }
+
+ if (string.IsNullOrEmpty(container))
+ {
container = request.Static ?
state.InputContainer :
- (Path.GetExtension(GetOutputFilePath(state)) ?? string.Empty).TrimStart('.');
+ GetOutputFileExtension(state);
}
state.OutputContainer = (container ?? string.Empty).TrimStart('.');
@@ -923,7 +923,10 @@ namespace MediaBrowser.Api.Playback
ApplyDeviceProfileSettings(state);
}
- state.OutputFilePath = GetOutputFilePath(state);
+ var ext = string.IsNullOrWhiteSpace(state.OutputContainer)
+ ? GetOutputFileExtension(state)
+ : ("." + state.OutputContainer);
+ state.OutputFilePath = GetOutputFilePath(state, ext);
return state;
}