Commit graph

20 commits

Author SHA1 Message Date
Karl Wiberg
e40468ba3d Move some numeric utility code from rtc_base/ to rtc_base/numerics/
Specifically, I'm moving

  safe_compare.h
  safe_conversions.h
  safe_minmax.h

They shouldn't be part of the API, and moving them to an appropriate
subdirectory of rtc_base/ is a good way to keep track of that.

BUG=webrtc:8445

Change-Id: I458531aeb30bcf4291c4bec3bf22a2fffbf054ff
Reviewed-on: https://webrtc-review.googlesource.com/20860
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20829}
2017-11-22 11:21:47 +00:00
Mirko Bonadei
ea7a3f8225 Fixing unsafe conversion
The bot "Win (more_configs)" has spotted another unsafe type conversion.

This CL is a follow-up of:
- https://webrtc-review.googlesource.com/c/src/+/12921
- https://webrtc-review.googlesource.com/c/src/+/13122

Bug: chromium:759980
Change-Id: I3634c3e20fcd9f4e106914399ac40ca87d4c6137
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/13622
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#20349}
2017-10-19 10:59:50 +00:00
Mirko Bonadei
7120742701 Adding NOLINT for typedefs.h and common_types.h
Now that we have moved WebRTC from src/webrtc to src/, common_types.h
and typedefs.h are triggering a cpplint error.

The cpplint complaint is:
Include the directory when naming .h files  [build/include] [4]

This CL disables the error but we have to remove these two headers
from the root directory.

NOPRESUBMIT=true

Bug: webrtc:5876
Change-Id: I08e1b69aadcc4b28ab83bf25e3819d135d41d333
Reviewed-on: https://webrtc-review.googlesource.com/1577
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Kjellander <kjellander@google.com>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19859}
2017-09-15 13:03:51 +00:00
Mirko Bonadei
92ea95e34a Fixing WebRTC after moving from src/webrtc to src/
In https://webrtc-review.googlesource.com/c/src/+/1560 we moved WebRTC
from src/webrtc to src/ (in order to preserve an healthy git history).
This CL takes care of fixing header guards, #include paths, etc...

NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
TBR=tommi@webrtc.org


Bug: chromium:611808
Change-Id: Iea91618212bee0af16aa3f05071eab8f93706578
Reviewed-on: https://webrtc-review.googlesource.com/1561
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19846}
2017-09-15 05:02:56 +00:00
Mirko Bonadei
bb547203bf Moving src/webrtc into src/.
In order to eliminate the WebRTC Subtree mirror in Chromium, 
WebRTC is moving the content of the src/webrtc directory up
to the src/ directory.

NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
TBR=tommi@webrtc.org

Bug: chromium:611808
Change-Id: Iac59c5b51b950f174119565bac87955a7994bc38
Reviewed-on: https://webrtc-review.googlesource.com/1560
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Kjellander <kjellander@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19845}
2017-09-15 04:25:06 +00:00
niklase@google.com
5adc73aad3 git-svn-id: http://webrtc.googlecode.com/svn/trunk@166 4adac7df-926f-26a2-2b94-8c16560cd09d 2011-07-07 08:46:41 +00:00
cduvivier@google.com
d0159d8eb0 aec_rdft_128: one entry point for each sign.
Review URL: http://webrtc-codereview.appspot.com/61007

git-svn-id: http://webrtc.googlecode.com/svn/trunk@153 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-07-06 23:35:37 +00:00
cduvivier@google.com
fae3b31707 Optimization/cleanup of 'aec_rfdt' initialization (constants, LUT, ...):
* 2.7% AEC overall speedup for the straight C path.
* 3.5% AEC overall speedup for the SSE2 path.
Review URL: http://webrtc-codereview.appspot.com/60001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@152 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-07-06 18:32:59 +00:00
cduvivier@google.com
9d94116697 Optimization of 'rftbsub':
* scalar optimization, vectorization.
* 0.5% AEC overall speedup for the straight C path.
* 2.8% AEC overall speedup for the SSE2 path.
Review URL: http://webrtc-codereview.appspot.com/48008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@137 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-06-30 19:19:37 +00:00
leozwang@google.com
8ec2231979 Add aec_rdft.c to android build
Review URL: http://webrtc-codereview.appspot.com/58001

git-svn-id: http://webrtc.googlecode.com/svn/trunk@136 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-06-30 18:34:09 +00:00
cduvivier@google.com
20cb6b684b Optimization of 'rftfsub':
* scalar optimization, vectorization (including new file for SSE2 code
  and path selection mechanism).
* 0.5% AEC overall speedup for the straight C path.
* 3.0% AEC overall speedup for the SSE2 path.
Review URL: http://webrtc-codereview.appspot.com/46005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@134 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-06-30 01:22:19 +00:00
cduvivier@google.com
181f543de4 AEC specific version of " Real Discrete Fourier Transform".
Lots of AEC CPU usage is coming from calls to 'rdft'. To optimize this,
deep changes (modification of memory layout, ...) have to be done and it
is not practical to do them in an utility library. Most of these changes
will occur in subsequent CLs.

The new file 'aec_core_rdft.c' is a copy of 'modules/audio_processing/
utility/fft4g.c' whose size has been significantly reduced by removing
all code non-necessary to compute rdft. The main entry point and utility
functions have also been modified to take into account the fact that all
'rdft' calls performed by AEC have a length of 128. This yields:
* 1.8% AEC overall speedup for the straight C path.
* 2.3% AEC overall speedup for the SSE2 path.
Review URL: http://webrtc-codereview.appspot.com/44008

git-svn-id: http://webrtc.googlecode.com/svn/trunk@126 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-06-24 18:22:47 +00:00
cduvivier@google.com
5af7a804ea Optimization of "overdrive and suppress":
* float accuracy pow function, vectorized pow approximation, general
  vectorization.
* 10.2% AEC overall speedup for the straight C path.
* 16.1% AEC overall speedup for the SSE2 path.
Review URL: http://webrtc-codereview.appspot.com/24016

git-svn-id: http://webrtc.googlecode.com/svn/trunk@72 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-06-13 18:56:48 +00:00
ajm@google.com
0333cf6c57 Adding Bjorn to overall audio_processing OWNERS file (thereby allowing the deletion of all the sub-folder files).
Review URL: http://webrtc-codereview.appspot.com/24015

git-svn-id: http://webrtc.googlecode.com/svn/trunk@70 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-06-13 16:45:50 +00:00
leozwang@google.com
0b0c28c495 add android makefile, some modification in vpx makefile to build encoder from c source for now
Review URL: http://webrtc-codereview.appspot.com/29012

git-svn-id: http://webrtc.googlecode.com/svn/trunk@50 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-06-07 17:24:39 +00:00
cduvivier@google.com
a4f6303c5d Vectorization of "FilterAdaptation":
* 1.0% AEC overall speedup for straight C path.
* 6.2% AEC overall speedup for SSE2 path.
* fix warnings, make code compile with "-std=gnu89
-Wstrict-prototypes -Wold-style-definition -Wmissing-prototypes
-Wmissing-declarations -Wdeclaration-after-statement -Wextra -Wall
-Werror"
Review URL: http://webrtc-codereview.appspot.com/24012

git-svn-id: http://webrtc.googlecode.com/svn/trunk@38 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-06-02 23:50:06 +00:00
cduvivier@google.com
936b36dbf6 Partial vectorization of "ProcessBlock":
* new file for SSE2 code, code selection through function pointers.
* structure change for array of complex numbers.
* 3.8% AEC overall speedup for straight C path.
* 8.8% AEC overall speedup for SSE2 path.
Review URL: http://webrtc-codereview.appspot.com/34002

git-svn-id: http://webrtc.googlecode.com/svn/trunk@36 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-06-02 01:38:10 +00:00
niklase@google.com
9ed826feea Review URL: http://webrtc-codereview.appspot.com/29009
git-svn-id: http://webrtc.googlecode.com/svn/trunk@27 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-06-01 07:29:32 +00:00
cduvivier@google.com
d357f2ca3b Partial vectorization of "ProcessBlock":
* new file for SSE2 code, code selection through function pointers.
* structure change for array of complex numbers.
* 3.8% AEC overall speedup for straight C path.
* 8.8% AEC overall speedup for SSE2 path.
Review URL: http://webrtc-codereview.appspot.com/33003

git-svn-id: http://webrtc.googlecode.com/svn/trunk@26 4adac7df-926f-26a2-2b94-8c16560cd09d
2011-06-01 01:20:06 +00:00
niklase@google.com
77ae29bc81 git-svn-id: http://webrtc.googlecode.com/svn/trunk@4 4adac7df-926f-26a2-2b94-8c16560cd09d 2011-05-30 11:22:19 +00:00