mirror of
https://github.com/jellyfin/jellyfin.git
synced 2025-04-24 05:57:20 -04:00
Merge pull request #9355 from nyanmisaka/va-vpp-pool-size
This commit is contained in:
commit
c807712246
1 changed files with 25 additions and 4 deletions
|
@ -3214,7 +3214,7 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||
|
||||
// OUTPUT nv12 surface(memory)
|
||||
// prefer hwmap to hwdownload on opencl.
|
||||
var hwTransferFilter = hasGraphicalSubs ? "hwdownload" : "hwmap";
|
||||
var hwTransferFilter = hasGraphicalSubs ? "hwdownload" : "hwmap=mode=read";
|
||||
mainFilters.Add(hwTransferFilter);
|
||||
mainFilters.Add("format=nv12");
|
||||
}
|
||||
|
@ -3457,7 +3457,7 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||
// OUTPUT nv12 surface(memory)
|
||||
// prefer hwmap to hwdownload on opencl.
|
||||
// qsv hwmap is not fully implemented for the time being.
|
||||
mainFilters.Add(isHwmapUsable ? "hwmap" : "hwdownload");
|
||||
mainFilters.Add(isHwmapUsable ? "hwmap=mode=read" : "hwdownload");
|
||||
mainFilters.Add("format=nv12");
|
||||
}
|
||||
|
||||
|
@ -3615,6 +3615,13 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||
|
||||
var outFormat = doTonemap ? string.Empty : "nv12";
|
||||
var hwScaleFilter = GetHwScaleFilter(isVaapiDecoder ? "vaapi" : "qsv", outFormat, inW, inH, reqW, reqH, reqMaxW, reqMaxH);
|
||||
|
||||
// allocate extra pool sizes for vaapi vpp
|
||||
if (!string.IsNullOrEmpty(hwScaleFilter) && isVaapiDecoder)
|
||||
{
|
||||
hwScaleFilter += ":extra_hw_frames=24";
|
||||
}
|
||||
|
||||
// hw scale
|
||||
mainFilters.Add(hwScaleFilter);
|
||||
}
|
||||
|
@ -3661,7 +3668,7 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||
// OUTPUT nv12 surface(memory)
|
||||
// prefer hwmap to hwdownload on opencl/vaapi.
|
||||
// qsv hwmap is not fully implemented for the time being.
|
||||
mainFilters.Add(isHwmapUsable ? "hwmap" : "hwdownload");
|
||||
mainFilters.Add(isHwmapUsable ? "hwmap=mode=read" : "hwdownload");
|
||||
mainFilters.Add("format=nv12");
|
||||
}
|
||||
|
||||
|
@ -3878,6 +3885,13 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||
|
||||
var outFormat = doTonemap ? string.Empty : "nv12";
|
||||
var hwScaleFilter = GetHwScaleFilter("vaapi", outFormat, inW, inH, reqW, reqH, reqMaxW, reqMaxH);
|
||||
|
||||
// allocate extra pool sizes for vaapi vpp
|
||||
if (!string.IsNullOrEmpty(hwScaleFilter))
|
||||
{
|
||||
hwScaleFilter += ":extra_hw_frames=24";
|
||||
}
|
||||
|
||||
// hw scale
|
||||
mainFilters.Add(hwScaleFilter);
|
||||
}
|
||||
|
@ -3919,7 +3933,7 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||
|
||||
// OUTPUT nv12 surface(memory)
|
||||
// prefer hwmap to hwdownload on opencl/vaapi.
|
||||
mainFilters.Add(isHwmapNotUsable ? "hwdownload" : "hwmap");
|
||||
mainFilters.Add(isHwmapNotUsable ? "hwdownload" : "hwmap=mode=read");
|
||||
mainFilters.Add("format=nv12");
|
||||
}
|
||||
|
||||
|
@ -4072,6 +4086,13 @@ namespace MediaBrowser.Controller.MediaEncoding
|
|||
|
||||
outFormat = doOclTonemap ? string.Empty : "nv12";
|
||||
var hwScaleFilter = GetHwScaleFilter("vaapi", outFormat, inW, inH, reqW, reqH, reqMaxW, reqMaxH);
|
||||
|
||||
// allocate extra pool sizes for vaapi vpp
|
||||
if (!string.IsNullOrEmpty(hwScaleFilter))
|
||||
{
|
||||
hwScaleFilter += ":extra_hw_frames=24";
|
||||
}
|
||||
|
||||
// hw scale
|
||||
mainFilters.Add(hwScaleFilter);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue