Open Bug 1249859 Opened 9 years ago Updated 2 years ago

Optimize simulcast if two layers drop too close to each other in resolution.

Categories

(Core :: WebRTC, defect, P3)

defect

Tracking

()

Tracking Status
firefox47 --- affected

People

(Reporter: jib, Unassigned)

References

Details

Attachments

(1 file)

If two layers are too similar, only allocate bits to one of them.
Important for making simulcast useful
Rank: 15
Priority: -- → P1
Assignee: nobody → dminor
Comment on attachment 8807644 [details] Bug 1249859 - Optimize simulcast if two layers are too close to each other in resolution; https://reviewboard.mozilla.org/r/90732/#review90518 We call this on input resolution changes, but since scales are all 1/nth, the test below is really just a limit on the scaling factor. r- for the test issue. ::: dom/media/tests/mochitest/test_peerConnection_simulcastOfferPruning.html:49 (Diff revision 1) > + // We expect the 1.25 and 3.0 scalings to be pruned, so the rest > + // of this test is functionally equivalent to > + // test_peerConnection_simulcastOffer.html. Can't we combine it with the existing test instead of running the simulcast test twice? I.e. add the encodings, and then verify which get pruned. ::: media/webrtc/signaling/src/media-conduit/VideoConduit.cpp:1429 (Diff revision 1) > + // This ensures we preserve the highest resolution stream, which is the > + // first one we examine. > + if (last_width != 0 && last_height != 0) { > + if (SIMULCAST_PRUNING_FACTOR*new_width*new_height > last_width*last_height) { This is the equivalent to requiring that jsScaleDownBy be >= 2 (which would yield a 4x difference in pixels, since aspect ratio is locked and we don't have min/max sizes anytmore). If < 2, it will skip Perhaps the limit should be ~2.25 (jsscaledownby of >= 1.5), maybe 2. The other and maybe more interesting aspect of this is that if we have to downscale the encodings (due to load/encoding-time), that might not filter through simulcast correctly. The interaction between load and simulcast in general may need some work... But that can be for another bug, assuming it's an issue at all.
Attachment #8807644 - Flags: review?(rjesup) → review-
Status: NEW → ASSIGNED
I'll be focusing on WebRTC automation for the next while, freeing this up for someone else.
Assignee: dminor → nobody
Status: ASSIGNED → NEW
Mass change P1->P2 to align with new Mozilla triage process
Priority: P1 → P2
Moving to p3 because no activity for at least 1 year(s). See https://github.com/mozilla/bug-handling/blob/master/policy/triage-bugzilla.md#how-do-you-triage for more information
Priority: P2 → P3
Severity: minor → S4
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: