History log of /external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
98f53510b222f71fdd8b799b2f33737ceeb28c61 28-Oct-2015 Henrik Kjellander <kjellander@webrtc.org> system_wrappers: rename interface -> include

BUG=webrtc:5095
R=tommi@webrtc.org

Review URL: https://codereview.webrtc.org/1413333002 .

Cr-Commit-Position: refs/heads/master@{#10438}
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
dce40cf804019a9898b6ab8d8262466b697c56e0 24-Aug-2015 Peter Kasting <pkasting@google.com> Update a ton of audio code to use size_t more correctly and in general reduce
use of int16_t/uint16_t.

This is the upshot of a recommendation by henrik.lundin and kwiberg on an original small change ( https://webrtc-codereview.appspot.com/42569004/#ps1 ) to stop using int16_t just because values could fit in it, and is similar in nature to a previous "mass change to use size_t more" ( https://webrtc-codereview.appspot.com/23129004/ ) which also needed to be split up for review but to land all at once, since, like adding "const", such changes tend to cause a lot of transitive effects.

This was be reviewed and approved in pieces:
https://codereview.webrtc.org/1224093003
https://codereview.webrtc.org/1224123002
https://codereview.webrtc.org/1224163002
https://codereview.webrtc.org/1225133003
https://codereview.webrtc.org/1225173002
https://codereview.webrtc.org/1227163003
https://codereview.webrtc.org/1227203003
https://codereview.webrtc.org/1227213002
https://codereview.webrtc.org/1227893002
https://codereview.webrtc.org/1228793004
https://codereview.webrtc.org/1228803003
https://codereview.webrtc.org/1228823002
https://codereview.webrtc.org/1228823003
https://codereview.webrtc.org/1228843002
https://codereview.webrtc.org/1230693002
https://codereview.webrtc.org/1231713002

The change is being landed as TBR to all the folks who reviewed the above.

BUG=chromium:81439
TEST=none
R=andrew@webrtc.org, pbos@webrtc.org
TBR=aluebs, andrew, asapersson, henrika, hlundin, jan.skoglund, kwiberg, minyue, pbos, pthatcher

Review URL: https://codereview.webrtc.org/1230503003 .

Cr-Commit-Position: refs/heads/master@{#9768}
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
b297c5a01f88219da26cffe433804963d1b70f0f 23-Jul-2015 pkasting <pkasting@chromium.org> Miscellaneous changes split from https://codereview.webrtc.org/1230503003 .

These are mostly trivial changes and are separated out just to reduce the
diff on that change to the minimum possible.

Note explanatory comments on patch set 1.

BUG=none
TEST=none

Review URL: https://codereview.webrtc.org/1235643003

Cr-Commit-Position: refs/heads/master@{#9617}
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
728d9037c016c01295177fa700fc7927f0bb80bb 11-Jun-2015 Peter Kasting <pkasting@google.com> Reformat existing code. There should be no functional effects.

This includes changes like:
* Attempt to break lines at better positions
* Use "override" in more places, don't use "virtual" with it
* Use {} where the body is more than one line
* Make declaration and definition arg names match
* Eliminate unused code
* EXPECT_EQ(expected, actual) (but use (actual, expected) for e.g. _GT)
* Correct #include order
* Use anonymous namespaces in preference to "static" for file-scoping
* Eliminate unnecessary casts
* Update reference code in comments of ARM assembly sources to match actual current C code
* Fix indenting to be more style-guide compliant
* Use arraysize() in more places
* Use bool instead of int for "boolean" values (0/1)
* Shorten and simplify code
* Spaces around operators
* 80 column limit
* Use const more consistently
* Space goes after '*' in type name, not before
* Remove unnecessary return values
* Use "(var == const)", not "(const == var)"
* Spelling
* Prefer true, typed constants to "enum hack" constants
* Avoid "virtual" on non-overridden functions
* ASSERT(x == y) -> ASSERT_EQ(y, x)

BUG=none
R=andrew@webrtc.org, asapersson@webrtc.org, henrika@webrtc.org, juberti@webrtc.org, kjellander@webrtc.org, kwiberg@webrtc.org

Review URL: https://codereview.webrtc.org/1172163004

Cr-Commit-Position: refs/heads/master@{#9420}
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
cb7f8ce2df7564546936d3041a96ccc86a90f988 20-May-2015 Andrew MacDonald <andrew@webrtc.org> Clear ARM NEON flag

Merge WEBRTC_ARCH_ARM64_NEON and WEBRTC_ARCH_ARM_NEON into one
WEBRTC_HAS_NEON.
Replace WEBRTC_DETECT_ARM_NEON by WEBRTC_DETECT_NEON.
Replace WEBRTC_ARCH_ARM by WEBRTC_ARCH_ARM64 for arm64 cpu.

BUG=4002
R=andrew@webrtc.org, jridges@masque.com, kjellander@webrtc.org

Change-Id: I870a4d0682b80633b671c9aab733153f6d95a980

Review URL: https://webrtc-codereview.appspot.com/49309004

Cr-Commit-Position: refs/heads/master@{#9228}
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
073dd7b423157020846872ca2398cc86d3ca9508 11-Feb-2015 andrew@webrtc.org <andrew@webrtc.org> WebRtc_GetCPUFeaturesARM is only available on android

R=andrew@webrtc.org, jridges@masque.com, zhongwei.yao@arm.com

Review URL: https://webrtc-codereview.appspot.com/35119004

Patch from Mostyn Bramley-Moore <mostynb@opera.com>.

Cr-Commit-Position: refs/heads/master@{#8336}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8336 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
2ebfac5649a5e48fbbc501b42a4336ff979c03e6 14-Jan-2015 kwiberg@webrtc.org <kwiberg@webrtc.org> Remove COMPILE_ASSERT and use static_assert everywhere

COMPILE_ASSERT is no longer needed now that we have C++11's
static_assert.

R=aluebs@webrtc.org, andrew@webrtc.org, hellner@chromium.org, henrike@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/39469004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8058 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
3df38b442f6ba29722049b4c4d7121053003a1f8 13-Jan-2015 kwiberg@webrtc.org <kwiberg@webrtc.org> Unify the two copies of compile_assert.h

This patch basically deletes webrtc/base/compile_assert.h (which is
the more outdated copy) and moves
webrtc/system_wrappers/source/compile_assert.h to take its place.

R=aluebs@webrtc.org, andrew@webrtc.org, tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/36719004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@8048 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
3cbd6c26c861a63f8f6164b7142d532a599f00e5 04-Sep-2014 bjornv@webrtc.org <bjornv@webrtc.org> Fix MSVC warnings about value truncations, webrtc/common_audio/ edition.

This changes some method signatures to better reflect how callers are actually
using them. This also has the tendency to make signatures more consistent about
e.g. using int (instead of int16_t) for lengths of things like vectors, and
using int16_t (instead of int) for e.g. counts of bits in a value.

This also removes a couple of functions that were only called in unittests.

BUG=3353,chromium:81439
TEST=none
R=andrew@webrtc.org, bjornv@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/23389004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7060 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
f2aafe4355c4b7ecbd122798f08a5c5ec5d2693a 29-Apr-2014 henrike@webrtc.org <henrike@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Added include of assert.h for files calling assert but missing the include.

BUG=N/A
R=niklas.enbom@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/19409005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6022 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
00073aafa8fde49357181214231cb20e1d763df4 27-Feb-2014 andrew@webrtc.org <andrew@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Clean up CPU detection defines in SincResampler a little.

R=aluebs@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/9159004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5615 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
2038920a2b2a36073ddc9739b5a5ab9c6443af2c 26-Feb-2014 andrew@webrtc.org <andrew@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Use scoped_ptr<T[]> in SincResampler to avoid .get()[] weirdness.

R=aluebs@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/9139004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5613 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
12dc1a38ca54a000e4fecfbc6d41138b895c9ca5 05-Aug-2013 pbos@webrtc.org <pbos@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Switch C++-style C headers with their C equivalents.

The C++ headers define the C functions within the std:: namespace, but
we mainly don't use the std:: namespace for C functions. Therefore we
should include the C headers.

BUG=1833
R=tommi@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1917004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4486 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
b86fbaf1d41db539205ec671ff399a3a3aa50734 26-Jul-2013 andrew@webrtc.org <andrew@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Downstream latest Chromium SincResampler changes.

Replace the BlockSize() workaround we were using previously to support
the push wrapper with the upstream request_frames interface. This
requires a bit of a trick to ensure we don't add more delay than
necessary. On the first pass we use a dummy Resample() call in order to
prime the buffer such that all later calls only require a single input
request through Run().

Notably, this brings in an optimized loop condition, improving
performance by ~2% - 3% on tested platforms and avoids a 20% performance
hit with clang. This addresses issue2041.

Only negligible changes to the PushSincResamplerTest SNR thresholds, due
to a fractional sample adjustment in output delay.

This still retains the per-instance CPU detection, as webrtc lacks a
LazyInstance helper for static initialization.

Ideally, we would adopt SetRatio() in PushSincResampler's
InitializeIfNeeded() for on-the-fly changes, but this will require a way
to update request_frames.

The diff against Chromium upstream is available here:
https://codereview.chromium.org/19470003

BUG=2041
TESTED=unit tests, voe_cmd_test in loopback running through all codecs
with 44.1 kHz and 48 kHz device formats using a stereo mic.

R=dalecurtis@chromium.org

Review URL: https://webrtc-codereview.appspot.com/1838004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4406 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
c6a3755adabc5bf73a8f0cf40c4434fa353e5e33 08-May-2013 andrew@webrtc.org <andrew@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Update SincResampler with the latest Chromium code.

* Brings in on-the-fly sample ratio updates (or varispeed) with minor modifications to build in webrtc.
* Moved SSE and NEON optimized functions into their own files to handle run-time detection properly. NEON optimizations now enabled.

TESTED=unit tests and ran voe_cmd_test loopback with both devices using 44.1 kHz to exercise SincResampler in real-time.
R=dalecurtis@chromium.org, kma@webrtc.org

Review URL: https://webrtc-codereview.appspot.com/1438004

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3987 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
8fc05feed43c702eb84fc26b36aecce33622b06b 26-Apr-2013 andrew@webrtc.org <andrew@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Add a push-based wrapper around SincResampler.

Includes a unittest to ensure we meet the same quality thresholds as SincResampler (modulo quantization error).

BUG=webrtc:1395

Review URL: https://webrtc-codereview.appspot.com/1323011

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3909 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
076fc12539185da66aee15c2d8fa3d3a094f57b3 15-Feb-2013 andrew@webrtc.org <andrew@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Modify SincResampler to build in webrtc.

This is the first in a series of CLs to bring arbitrary resampling to webrtc.

* Replace Chromium-specific helpers with their respective webrtc versions.
* Add a second constructor to permit runtime selection of block_size.
* Add stringize_macros to system_wrappers.

BUG=webrtc:1395
TESTED=unit tests

Review URL: https://webrtc-codereview.appspot.com/1097012

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3518 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc
a8ef811fe52add24f90973d19a31347226456abc 14-Feb-2013 andrew@webrtc.org <andrew@webrtc.org@4adac7df-926f-26a2-2b94-8c16560cd09d> Import SincResampler from Chromium.

Committing the originals to make further reviews cleaner.

TBR=bjornv
BUG=webrtc:1395

Review URL: https://webrtc-codereview.appspot.com/1096010

git-svn-id: http://webrtc.googlecode.com/svn/trunk@3508 4adac7df-926f-26a2-2b94-8c16560cd09d
/external/webrtc/webrtc/common_audio/resampler/sinc_resampler.cc