Steve Anton cd83ae2d65 Speed up FrameCombiner::Combine by 3x
There were a couple operations in the mixer which touched
AudioFrame data() and mutable_data() getters in a hot loop. These
getters have a if (muted) conditional in them which led to
inefficient code generation and execution.

Profiled using Google Meet with 6 audio-only speaking participants.
Meet uses 3 audio receive streams.

Before: https://pprof.corp.google.com/user-profile?id=02526c98ca1f60ba7b340b2f5dabb72a&tab=flame&path=18l9q740udb80g1iq9r1c1gv6b9k1cuuq200eztpq0054kuq0
After: https://pprof.corp.google.com/user-profile?id=32a33e5c90c650e013bdf5008d9b5fd3&tab=flame&path=18l9q740udb80g1iq9r1c1gv6b9k1cuuq200eztpq0054kuq0

(Zoomed in on the audio render thread.)

Bug: webrtc:12662
Change-Id: If6ecb5de02095b8b0e4938f1a1817b55d388e01a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/214560
Reviewed-by: Per Åhgren <peah@webrtc.org>
Reviewed-by: Olga Sharonova <olka@webrtc.org>
Reviewed-by: Alex Loiko <aleloi@webrtc.org>
Commit-Queue: Steve Anton <steveanton@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#33712}
2021-04-13 17:18:47 +00:00
..
2021-02-10 15:04:55 +00:00
2020-10-02 12:33:34 +00:00
2021-02-10 15:04:55 +00:00
2020-11-26 12:26:02 +00:00