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.cs46
1 files changed, 36 insertions, 10 deletions
diff --git a/MediaBrowser.Api/Playback/BaseStreamingService.cs b/MediaBrowser.Api/Playback/BaseStreamingService.cs
index a6b3b7294..7dcb06f7b 100644
--- a/MediaBrowser.Api/Playback/BaseStreamingService.cs
+++ b/MediaBrowser.Api/Playback/BaseStreamingService.cs
@@ -1168,18 +1168,23 @@ namespace MediaBrowser.Api.Playback
protected double? GetFramerateParam(StreamState state)
{
- if (state.VideoRequest != null && state.VideoRequest.Framerate.HasValue)
+ if (state.VideoRequest != null)
{
- return state.VideoRequest.Framerate.Value;
- }
+ if (state.VideoRequest.Framerate.HasValue)
+ {
+ return state.VideoRequest.Framerate.Value;
+ }
- if (state.VideoStream != null)
- {
- var contentRate = state.VideoStream.AverageFrameRate ?? state.VideoStream.RealFrameRate;
+ var maxrate = state.VideoRequest.MaxFramerate ?? 23.976;
- if (contentRate.HasValue && contentRate.Value > 23.976)
+ if (state.VideoStream != null)
{
- return 23.976;
+ var contentRate = state.VideoStream.AverageFrameRate ?? state.VideoStream.RealFrameRate;
+
+ if (contentRate.HasValue && contentRate.Value > maxrate)
+ {
+ return maxrate;
+ }
}
}
@@ -1265,20 +1270,41 @@ namespace MediaBrowser.Api.Playback
{
if (videoRequest != null)
{
- request.StartTimeTicks = long.Parse(val, UsCulture);
+ videoRequest.MaxWidth = int.Parse(val, UsCulture);
}
}
else if (i == 12)
{
if (videoRequest != null)
{
- videoRequest.Profile = val;
+ videoRequest.MaxHeight = int.Parse(val, UsCulture);
}
}
else if (i == 13)
{
if (videoRequest != null)
{
+ videoRequest.Framerate = int.Parse(val, UsCulture);
+ }
+ }
+ else if (i == 14)
+ {
+ if (videoRequest != null)
+ {
+ request.StartTimeTicks = long.Parse(val, UsCulture);
+ }
+ }
+ else if (i == 15)
+ {
+ if (videoRequest != null)
+ {
+ videoRequest.Profile = val;
+ }
+ }
+ else if (i == 16)
+ {
+ if (videoRequest != null)
+ {
videoRequest.Level = val;
}
}