-
Notifications
You must be signed in to change notification settings - Fork 477
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Disable 480p downscale resolution for Chromium browsers on Windows OS #2003
Conversation
src/videouplinkbandwidthpolicy/NScaleVideoUplinkBandwidthPolicy.ts
Outdated
Show resolved
Hide resolved
transceiverController.setVideoInput(new MediaStreamTrack()); | ||
const numParticipants = 5; | ||
const expectedParams = new DefaultVideoCaptureAndEncodeParameter( | ||
320, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
How were these values calculated? I'm not to familiar with NScale, but 320x192 seems like an odd resolution.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Oh this is just a dummy test case. We do not actually use it at all. The key factor is actual the scale down resolution.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Ah that makes sense
@@ -279,6 +279,10 @@ export default class DefaultBrowserBehavior implements BrowserBehavior, Extended | |||
return this.isAndroid(); | |||
} | |||
|
|||
disable480pResolutionScaleDown(): boolean { | |||
return /( Chrome\/98\.)/i.test(navigator.userAgent) && this.browser.os.startsWith('Windows'); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is this bug reproducible in Chromium? If yes, have we tested this user agent in Chromium on Windows, e.g., Electron?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We only tested in Edge and Chrome. Chime App uses Electron and I think they did a similar fix. But yeah it affects all Chromium browsers on Windows.
Issue #2002:
In Chrome 98 and Windows, videos appear grayscale for 480p when there are 5-8 videos on the call (except the active speakers) and hardware acceleration is on. This issue can be mitigated by turn off hardware acceleration.
Description of changes:
Check if its Chrome 98 and Windows OS then downscale to 360p for 5-8 videos instead of 480p.
Testing:
Can these tested using a demo application? Please provide reproducible step-by-step instructions.
Yes.
Test with Chrome, Edge, and Opera on Windows.
Checklist:
Have you successfully run
npm run build:release
locally?Yes
Do you add, modify, or delete public API definitions? If yes, has that been reviewed and approved?
Yes. Add a helper function in browser behavior to check whether 480p needs to be disabled.
Do you change the wire protocol, e.g. the request method? If yes, has that been reviewed and approved?
No
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.