encode with qsv

This commit is contained in:
Luke Pulverenti
2015-11-06 10:02:22 -05:00
parent 6aa3313bc0
commit ce34c35b94
43 changed files with 317 additions and 226 deletions

View File

@@ -1272,6 +1272,11 @@ namespace MediaBrowser.Server.Implementations.Library
public QueryResult<BaseItem> GetItems(InternalItemsQuery query)
{
if (query.User != null)
{
AddUserToQuery(query, query.User);
}
var result = ItemRepository.GetItemIdsList(query);
var items = result.Select(GetItemById).Where(i => i != null).ToArray();
@@ -1284,11 +1289,21 @@ namespace MediaBrowser.Server.Implementations.Library
public QueryResult<BaseItem> QueryItems(InternalItemsQuery query)
{
if (query.User != null)
{
AddUserToQuery(query, query.User);
}
return ItemRepository.GetItems(query);
}
public List<Guid> GetItemIds(InternalItemsQuery query)
{
if (query.User != null)
{
AddUserToQuery(query, query.User);
}
return ItemRepository.GetItemIdsList(query);
}
@@ -1298,14 +1313,7 @@ namespace MediaBrowser.Server.Implementations.Library
query.AncestorIds = parents.SelectMany(i => i.GetIdsForAncestorQuery()).Select(i => i.ToString("N")).ToArray();
if (user != null)
{
AddUserToQuery(query, user);
}
var items = GetItemIds(query).Select(GetItemById);
return items;
return GetItemIds(query).Select(GetItemById);
}
public QueryResult<BaseItem> GetItemsResult(InternalItemsQuery query, IEnumerable<string> parentIds)
@@ -1314,26 +1322,24 @@ namespace MediaBrowser.Server.Implementations.Library
query.AncestorIds = parents.SelectMany(i => i.GetIdsForAncestorQuery()).Select(i => i.ToString("N")).ToArray();
if (query.User != null)
{
AddUserToQuery(query, query.User);
}
return GetItems(query);
}
private void AddUserToQuery(InternalItemsQuery query, User user)
{
if (query.AncestorIds.Length == 0)
if (query.AncestorIds.Length == 0 && !query.ParentId.HasValue && query.ChannelIds.Length == 0)
{
// Need to filter on user folders
// TODO: Need to filter on user folders
}
// TODO: handle blocking by tags
query.MaxParentalRating = user.Policy.MaxParentalRating;
// handle blocking by tags
// handle unrated filter
if (user.Policy.MaxParentalRating.HasValue)
{
query.BlockUnratedItems = user.Policy.BlockUnratedItems;
}
}
/// <summary>

View File

@@ -107,14 +107,7 @@ namespace MediaBrowser.Server.Implementations.Library
private int GetMaxAllowedBitrateForExternalSubtitleStream()
{
// This is abitrary but at some point it becomes too slow to extract subtitles on the fly
// We need to learn more about when this is the case vs. when it isn't
if (Environment.ProcessorCount >= 8)
{
return 10000000;
}
return 4000000;
return 20000000;
}
private IEnumerable<MediaStream> GetMediaStreamsForItem(IEnumerable<MediaStream> streams)