From 6807675123a40338e647b3eafd488312452180a0 Mon Sep 17 00:00:00 2001 From: trav90 Date: Tue, 28 Nov 2023 14:42:53 -0600 Subject: [PATCH] Issue #2393 - Part 4 - Reduce VideoQueue size for GPU based images --- dom/media/MediaFormatReader.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/dom/media/MediaFormatReader.cpp b/dom/media/MediaFormatReader.cpp index a658298e2d..53437182dc 100644 --- a/dom/media/MediaFormatReader.cpp +++ b/dom/media/MediaFormatReader.cpp @@ -1509,6 +1509,15 @@ MediaFormatReader::Update(TrackType aTrack) nsCString error; mVideo.mIsHardwareAccelerated = mVideo.mDecoder && mVideo.mDecoder->IsHardwareAccelerated(error); +#ifdef XP_WIN + // D3D11_YCBCR_IMAGE images are GPU based, we try to limit the amount + // of GPU RAM used. + VideoData* videoData = static_cast(output.get()); + mVideo.mIsHardwareAccelerated = + mVideo.mIsHardwareAccelerated || + (videoData->mImage && + videoData->mImage->GetFormat() == ImageFormat::D3D11_YCBCR_IMAGE); +#endif } } else if (decoder.HasFatalError()) { LOG("Rejecting %s promise: DECODE_ERROR", TrackTypeToStr(aTrack));