update stream selection

This commit is contained in:
Luke Pulverenti
2016-04-14 15:12:00 -04:00
parent e34dc6701b
commit 57e3bb72f9
5 changed files with 48 additions and 13 deletions

View File

@@ -227,7 +227,7 @@ namespace MediaBrowser.Api.Playback
SetDeviceSpecificData(item, mediaSource, profile, auth, maxBitrate, startTimeTicks, mediaSourceId, audioStreamIndex, subtitleStreamIndex, result.PlaySessionId);
}
SortMediaSources(result);
SortMediaSources(result, maxBitrate);
}
private void SetDeviceSpecificData(BaseItem item,
@@ -375,7 +375,7 @@ namespace MediaBrowser.Api.Playback
}
}
private void SortMediaSources(PlaybackInfoResponse result)
private void SortMediaSources(PlaybackInfoResponse result, int? maxBitrate)
{
var originalList = result.MediaSources.ToList();
@@ -409,6 +409,23 @@ namespace MediaBrowser.Api.Playback
return 1;
}
}).ThenBy(i =>
{
if (maxBitrate.HasValue)
{
if (i.Bitrate.HasValue)
{
if (i.Bitrate.Value <= maxBitrate.Value)
{
return 0;
}
return 2;
}
}
return 1;
}).ThenBy(originalList.IndexOf)
.ToList();
}