tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

commit 7742bfaf382777b4044c7fd64703cd4275ea0c5a
parent 3e26fc1cb82cef3dd9506e4a9fc7f27e9ed5b76f
Author: Andrew Osmond <aosmond@gmail.com>
Date:   Wed, 10 Dec 2025 16:24:23 +0000

Bug 2005119 - FFmpegDataEncoder::FindSoftwareEncoder should not allow fallback to hardware encoders. r=media-playback-reviewers,padenot

The order of checks was wrong. We should filter out all hardware codecs
before checking for libx264.

Differential Revision: https://phabricator.services.mozilla.com/D275718

Diffstat:
Mdom/media/platforms/ffmpeg/FFmpegDataEncoder.cpp | 8++++----
1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/dom/media/platforms/ffmpeg/FFmpegDataEncoder.cpp b/dom/media/platforms/ffmpeg/FFmpegDataEncoder.cpp @@ -69,6 +69,10 @@ AVCodec* FFmpegDataEncoder<LIBAV_VER>::FindSoftwareEncoder( continue; } + if (codec->capabilities & AV_CODEC_CAP_HARDWARE) { + continue; + } + // Prioritize libx264 for now since it's the only h264 codec we tested. // Once libopenh264 is supported, we can simply use the first one we find. if (aCodecId == AV_CODEC_ID_H264 && strcmp(codec->name, "libx264") != 0) { @@ -78,10 +82,6 @@ AVCodec* FFmpegDataEncoder<LIBAV_VER>::FindSoftwareEncoder( continue; } - if (codec->capabilities & AV_CODEC_CAP_HARDWARE) { - continue; - } - if (codec->capabilities & AV_CODEC_CAP_EXPERIMENTAL) { if (!fallbackCodec) { fallbackCodec = codec;