DescriptioniSAC: Move global trig tables into the codec instance
These tables are constant, so it makes sense for all encoders to share
one copy---but it was initialized in a racy way, and there's no
appealing way to fix that without adding dependencies on locking
functions. So we simply give each codec instance its own copy, which
costs 8 * (240 + 240 + 120 + 120) = 5760 bytes apiece.
As noted in the TODO comment, the size of the tables could be reduced,
and they could be filled in at compile-time, but that would make the
encoder output slightly different, which would mess with our tests.
R=henrik.lundin@webrtc.org, solenberg@webrtc.org
Committed: https://chromium.googlesource.com/external/webrtc/+/ac81163011c586fda1e74fd9d53a7156856dfd8c
Patch Set 1 : #
Total comments: 7
Messages
Total messages: 19 (8 generated)
|