diff options
| author | Bond-009 <bond.009@outlook.com> | 2025-06-19 11:26:37 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-06-19 11:26:37 +0200 |
| commit | 6996c8a1defbc8f5eeec03a291246e2c8cb457fe (patch) | |
| tree | 5f1c448df8639b2a300c12dcc319207ef1f9a51f /MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs | |
| parent | f9766300035de70a8b709641fd4a3e3e7964dceb (diff) | |
| parent | e8291fc856bcc5f18e4ed6538a841642bb29f6b2 (diff) | |
Merge pull request #14330 from jellyfin/qsv-dx11-static-pool
Fix QSV "static surface pool size exceeded" on Windows
Diffstat (limited to 'MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs')
| -rw-r--r-- | MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs index 26d4c4fcf..a1fafb024 100644 --- a/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs +++ b/MediaBrowser.Controller/MediaEncoding/EncodingHelper.cs @@ -4442,6 +4442,13 @@ namespace MediaBrowser.Controller.MediaEncoding var swapOutputWandH = doVppTranspose && swapWAndH; var hwScaleFilter = GetHwScaleFilter("vpp", "qsv", outFormat, swapOutputWandH, swpInW, swpInH, reqW, reqH, reqMaxW, reqMaxH); + // d3d11va doesn't support dynamic pool size, use vpp filter ctx to relay + // to prevent encoder async and bframes from exhausting the decoder pool. + if (!string.IsNullOrEmpty(hwScaleFilter) && isD3d11vaDecoder) + { + hwScaleFilter += ":passthrough=0"; + } + if (!string.IsNullOrEmpty(hwScaleFilter) && doVppTranspose) { hwScaleFilter += $":transpose={transposeDir}"; |
