mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-27 06:43:32 +00:00
Read-only Git mirror of the Mercurial gecko repositories at https://hg.mozilla.org. How to contribute: https://firefox-source-docs.mozilla.org/contributing/contribution_quickref.html
ec171f7887
Upstream commit: https://webrtc.googlesource.com/src/+/28b793b4dd275bf2b901b87e01c0ee8d4f5732fc [Merge-130] Fix LibvpxVp9Encoder simulcast bug. As of [1], a single VP9 encoder instance can produce simulcast 4:2:1. When it does, the EncodedImage has its simulcast index set (0, 1, 2). The bug is that if you then go back to a single encoder instance, either because you're doing singlecast or because you're doing simulcast with scaling factors that are not power of two (not 4:2:1), then the simulcast index which was previously set to 2 is not reset due to the old code path never calling SetSimulcastIndex. Example repro: 1. Send VP9 simulcast {180p, 360p, 720p}, i.e. 4:2.1. 2. Reconfigure to {180p, 360p, 540p}, i.e. no longer 4:2:1. What should happen: all three layers are sent. What actually happened: 180p is not sent and the 540p layer flips flops between 180p and 540p because the EncodedImage says simulcast index is 2 for both encodings[0] and encodings[2]. The fix is a one-line change: `SetSimulcastIndex(std::nullopt)` in the case that we don't have a `simulcast_to_svc_converter_` that sets it (0, 1, 2) for us. [1] https://webrtc-review.googlesource.com/c/src/+/360280 (cherry picked from commit a6fbb35ac1849c5cd823ec90121d92fc5b776b35) Bug: chromium:370299916 Change-Id: I94ce1a0bde43ef56cba930cb69b744877bbd4bf9 Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/363941 Reviewed-by: Sergey Silkin <ssilkin@webrtc.org> Commit-Queue: Henrik Boström <hbos@webrtc.org> Cr-Original-Commit-Position: refs/heads/main@{#43109} Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/364302 Reviewed-by: Ilya Nikolaevskiy <ilnik@webrtc.org> Cr-Commit-Position: refs/branch-heads/6723@{#2} Cr-Branched-From: 13e377b804f68aa9c20ea5e449666ea5248e3286-refs/heads/main@{#43019} |
||
---|---|---|
.cargo | ||
.github/workflows | ||
.vscode | ||
accessible | ||
browser | ||
build | ||
caps | ||
chrome | ||
config | ||
devtools | ||
docs | ||
docshell | ||
dom | ||
editor | ||
extensions | ||
gfx | ||
gradle/wrapper | ||
hal | ||
image | ||
intl | ||
ipc | ||
js | ||
layout | ||
media | ||
memory | ||
mfbt | ||
mobile | ||
modules | ||
mozglue | ||
netwerk | ||
nsprpub | ||
other-licenses | ||
parser | ||
python | ||
remote | ||
security | ||
services | ||
servo | ||
startupcache | ||
storage | ||
supply-chain | ||
taskcluster | ||
testing | ||
third_party | ||
toolkit | ||
tools | ||
uriloader | ||
view | ||
widget | ||
xpcom | ||
xpfe/appshell | ||
.arcconfig | ||
.babel-eslint.rc.js | ||
.clang-format | ||
.clang-format-ignore | ||
.cron.yml | ||
.eslintrc-ignores.js | ||
.eslintrc-rollouts.js | ||
.eslintrc-test-paths.js | ||
.eslintrc.js | ||
.git-blame-ignore-revs | ||
.gitattributes | ||
.gitignore | ||
.hg-annotate-ignore-revs | ||
.hgignore | ||
.hgtags | ||
.lando.ini | ||
.lldbinit | ||
.mailmap | ||
.prettierignore | ||
.prettierrc.js | ||
.rstcheck.cfg | ||
.stylelintignore | ||
.stylelintrc.js | ||
.taskcluster.yml | ||
.trackerignore | ||
.yamllint | ||
.ycm_extra_conf.py | ||
aclocal.m4 | ||
AUTHORS | ||
build.gradle | ||
Cargo.lock | ||
Cargo.toml | ||
client.mk | ||
client.py | ||
CLOBBER | ||
configure | ||
configure.py | ||
GNUmakefile | ||
gradle.properties | ||
gradlew | ||
gradlew.bat | ||
LICENSE | ||
mach | ||
mach.cmd | ||
mach.ps1 | ||
Makefile.in | ||
mots.yaml | ||
moz.build | ||
moz.configure | ||
mozilla-config.h.in | ||
old-configure.in | ||
package-lock.json | ||
package.json | ||
pyproject.toml | ||
README.txt | ||
settings.gradle | ||
substitute-local-geckoview.gradle | ||
test.mozbuild |
An explanation of the Firefox Source Code Directory Structure and links to project pages with documentation can be found at: https://firefox-source-docs.mozilla.org/contributing/directory_structure.html For information on how to build Firefox from the source code and create the patch see: https://firefox-source-docs.mozilla.org/contributing/contribution_quickref.html If you have a question about developing Firefox, and can't find the solution on https://firefox-source-docs.mozilla.org/, you can try asking your question on Matrix at chat.mozilla.org in `Introduction` (https://chat.mozilla.org/#/room/#introduction:mozilla.org) channel. Nightly development builds can be downloaded from: https://archive.mozilla.org/pub/firefox/nightly/latest-mozilla-central/ - or - https://www.mozilla.org/firefox/channel/desktop/#nightly Keep in mind that nightly builds, which are used by Firefox developers for testing, may be buggy.