Commit Graph

74 Commits

Author SHA1 Message Date
f6acf98a46 Fix the android clang bot for compiling with thread annotations.
TBR=niklas.enbom@webrtc.org
R=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5330 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-20 21:54:26 +00:00
7fb75ecbd4 Add thread_annotations for clang targets.
TESTED: As expected clang bots catched a few issues which are fixed with this CL, other bots ignore the annotations and compile fine.

R=niklas.enbom@webrtc.org, phoglund@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5328 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-20 20:20:50 +00:00
179908c81c JNI Audio: remove dead members.
BUG=2735
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5312 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-17 23:46:14 +00:00
9ee75e9c77 Enables mixing and matching Java and native audio. It is used for getting best of both worlds capabilities (AEC and low latency).
BUG=N/A
R=fischman@webrtc.org, niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5270 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-11 21:42:44 +00:00
f9bdbe3619 Roll chromium_revision 232627:238260
This brings us the updated swarming_client
that has moved out from Chromium into a standalone
project.
Because of this, all .isolate files needed to be
updated as well, similar to the changes in
https://codereview.chromium.org/29993003

TEST=trybots passing
BUG=none
R=andrew@webrtc.org, perkj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5260 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-11 13:37:12 +00:00
7ae8495779 Removed unnecessary Pulse init from VoE startup.
Saves 10% (~260ms) of the total PeerConnectionTest wallclock time.

R=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5254 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-10 21:01:34 +00:00
d3865e9124 Don't HANDLE_EINTR(close). Use IGNORE_EINTR(close).
It is incorrect to wrap close in HANDLE_EINTR on Linux.

BUG=chromium:269623
R=fischman@webrtc.org

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

Patch from Mark Mentovai <mark@chromium.org>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5206 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-12-03 19:10:20 +00:00
a750044396 Fixes a crash in VoE when unregistering JNI hooks.
BUG=11695087
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5144 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-20 22:32:12 +00:00
b082ade3db Hook up audio/video sync to Call.
Adds an end-to-end audio/video sync test.

BUG=2530, 2608
TEST=trybots
R=henrika@webrtc.org, mflodman@webrtc.org, pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5128 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-18 11:45:11 +00:00
b8cb85b348 Fix broken build on x86 Android
BUG=2545
R=fischman@webrtc.org, henrike@webrtc.org

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

Patch from Lu Quiang <qiang.lu@intel.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5081 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-04 19:06:08 +00:00
621df678c8 WEBRTC_{BIG, LITTLE}_ENDIAN -> WEBRTC_ARCH_{BIG, LITTLE}_ENDIAN.
Mostly to remove a long-standing TODO...

TESTED=trybots
R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5013 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-22 10:27:23 +00:00
3555303cb0 Roll chromium_revision 226126:228675 and fix clang warnings
By request from thakis@chromium.org, I disabled the
-Wno-unused-const-variable setting that is set in Chromium's
common.gypi so we can prepare our code for it's removal.

This required some cleanup in order to get the code to compile
with Clang having the -Wunused-const-variable warning enabled.

TEST=all trybots passing
BUG=none
R=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4966 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-15 20:10:17 +00:00
05773e5a70 Android OpenSlDemo: remove some usages of deprecated APIs that is breaking the bots.
TBR=fischman@webrtc.org

BUG=N/A

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4956 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-14 16:25:11 +00:00
f53622d42e WebRTCDemo: Fixes warning for devices with pre-17 API level. Also fixes broken build build.xml and project.properties.
BUG=2083
R=fischman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4951 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-11 21:28:26 +00:00
3f9288f987 Add APK and isolate target for video_engine_tests
Add .isolate file and _run target for video_engine_tests.

Move tools/swarm_client to be untracked in all .isolate file,
so refactorings in swarm_client doesn't require us updating
all our .isolate files (similar to the changes for the
Chromium tests done in:
https://src.chromium.org/viewvc/chrome?view=rev&revision=218844)

Update modules_unittests.isolate with new NetEq4 reference files
needed.

TEST=trybots passing
I also setup a Chromium workspace where I patched third_party/webrtc
with the changes in this CL, followed by compiling with the settings
described in
https://code.google.com/p/webrtc/issues/detail?id=1882#c11
I then verified that the video_engine_tests_apk dir was created
in the output folder.
BUG=1916,2462
R=andrew@webrtc.org, henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4925 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-04 18:20:38 +00:00
ad2eb6f67d Unbreaks Android build after r4915.
TBR=ajm@webrtc.org

BUG=Not filed

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4921 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-04 14:21:23 +00:00
4e65e07e41 VideoCaptureAndroid: rewrote the (standalone) implementation of video capture on Android.
Besides being ~40% the size of the previous implementation, this makes it so
that VideoCaptureAndroid can stop and restart capture, which is necessary to
support onPause/onResume reasonably on Android.

BUG=1407
R=henrike@webrtc.org, wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4915 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-03 18:23:13 +00:00
2a97317953 Fix include of isolate.gypi
Recent changes in GYP seem to have broken our previous
"hack" for getting the GYP rule for .isolate files
imported from the Chromium build/isolate.gypi.

The best solution for now is to remove the hack
and check in a copy of Chromium's src/build/isolate.gypi
in WebRTC's build/ dir instead. A similar approach is
used for our build/protoc.gypi file.

TEST=On Linux, I successfully ran:
gclient runhooks
ninja -C out/Release
and verified a bunch of .isolated files were created in
out/Release (which didn't happen before this patch).

I also renamed the build/isolate.gypi from Chromium to
ensure that our own is used and not that one (in case any
paths would be incorrect).

I also ran build/gyp_chromium in a Chromium checkout
with WebRTC in third_party/webrtc having this patch applied
to ensure GYP processing was still working.

Finally, I verified that the same project generation and
compilation from a Chromium checkout worked the way we build
our Android native tests, using:
. build/android/envsetup.sh
GYP_DEFINES="$GYP_DEFINES include_tests=1 enable_tracing=1" gclient runhooks
ninja -C out/Release android_builder_webrtc

BUG=1916
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4907 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-02 19:31:16 +00:00
f8f78b1316 Android OpenSL: Fixes faulty assertion in jni-code.
BUG=2452
R=fischman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4906 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-02 18:41:06 +00:00
1fdc51ae2a APK for opensl loopback.
BUG=N/A
R=andrew@webrtc.org, fischman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4901 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-02 14:58:19 +00:00
6049787252 Add protection to few more methods of AudioDeviceLinuxALSA. Those methods can be called from
a different thread.

One example is the _playWarning can be changed in AudioDeviceLinuxALSA::Init, which is called on the application's thread. At the same time it can be read via PlayoutWarning() on the VoE's process_thread.

RISK=P2
TESTED=try bots and tsan test:
tools/valgrind-webrtc/webrtc_tests.sh --tool=tsan -t out/Debug/libjingle_peerconnection_unittest --gtest_filter=PeerConnectionFactoryTestInternal.CreatePCUsingInternalModules
BUG=1205
R=xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4866 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-27 18:19:25 +00:00
c8dea6a00f Use the native sample rate for OpenSL recording.
BUG=N/A
R=fischman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4771 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-17 18:44:51 +00:00
2553450959 Fix win trybot errors due to r4729.
The addition of logging.h in r4729 was causing the win trybot to fail
with "#pragma deprecated" errors in standard library headers. This
turned out to be due to including strsafe.h (via audio_device_config.h)
before sstream (via logging.h).

strsafe.h was only being included for the unused DEBUG_PRINT macro. I
removed all references to it.

This incidentally removes a bunch of other unneeded headers discovered
while trying to track the problem down.

This didn't show up in the commitbots; my guess is that the trybots are
using the VC10 toolchain and the commitbots the VC11 toolchain.

TBR=pbos

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4738 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-13 00:02:13 +00:00
5eb997a2fd Fix unsigned/signed comparison error due to r4729.
Fix it for real by switching to ints rather than casting.

TBR=xians

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4730 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-12 01:01:42 +00:00
8f94013651 Reduce frequency of high audio delay warning logs.
This will log the warning every 5 seconds instead of every 10 ms.

BUG=b/10674993
TESTED=Ran voe_cmd_test with hard-coded high delay. Observed a log
every 5 seconds.

R=noahric@chromium.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4729 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-11 22:35:00 +00:00
6138c5cfa4 OpenSl: fixes crashes externally reported in issue 2361 and 2362.
BUG=2361,2362
R=fischman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4726 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-11 18:50:06 +00:00
835ef67d14 Remove repeated conditions key.
R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4720 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-11 00:16:00 +00:00
82f014aa0b OpenSL (not default): Enables low latency audio on Android.
BUG=1669
R=andrew@webrtc.org, fischman@webrtc.org, niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4719 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-10 18:24:07 +00:00
e141373b8a Add isolate configuration for Android for all tests.
In https://code.google.com/p/webrtc/source/detail?r=4407
henrike@ added the path to the WebRTC resources and
data directories for Android that are required in order to
use isolate for test execution on Android.

This CL adds similar entries to the rest of the .isolate
files added in
https://code.google.com/p/webrtc/source/detail?r=4590.

It also removes three accidentally added .isolate files that originated
from old test names:
* audio_device_test_api
* video_capture_module_test
* video_render_module_test

BUG=1882,1916
TEST=trybots passing.
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4627 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-27 12:10:09 +00:00
3365422c41 Isolate GYP target and .isolate files for tests
This is a re-land attempt of http://review.webrtc.org/1673004/
It now includes a build/isolate.gypi in WebRTC that includes the same
file as the one that would be included when WebRTC is used in a Chromium
checkout. It is needed since it is not possible to use variables in GYP's
includes sections.

Implemented according to the instructions at
http://www.chromium.org/developers/testing/isolated-testing

Workflow has been like this:
1. create _run GYP target
2. create a stripped down .isolate file
3. export GYP_DEFINES="$GYP_DEFINES test_isolation_mode=check"
4. runhooks
5. compile
6. test if the test would run (i.e. find it's dependencies) without
   actually executing it:
   tools/swarm_client/isolate.py run --isolated out/Release/testname.isolated
7. If failing, run the fix_test_cases.py script like this:
   tools/swarm_client/googletest/fix_test_cases.py --isolated out/Release/testname.isolated

All tests that run on the bots for WebRTC has got _run target
and .isolate file created.

"Normal tests" that run fine on any machine:
* audio_decoder_unittests
* common_audio_unittests
* common_video_unittests
* metrics_unittests
* modules_tests
* modules_unittests
* neteq_unittests
* system_wrappers_unittests
* test_support_unittests
* tools_unittests
* video_engine_core_unittests
* voice_engine_unittests

Tests that requires bare-metal and audio/video devices:
* audio_device_tests
* video_capture_tests

I also added the isolate boilerplate code for the following
tests that are not yet pure gtest binaries (which means they
cannot run isolated yet):
* video_render_tests
* vie_auto_test
* voe_auto_test

TEST=running isolate.py as described above. WebRTC trybots passing. Created a Chromium checkout with third_party/webrtc ToT and this patch applied, passing the runhooks step.
BUG=1916
R=henrike@webrtc.org, tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4590 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-22 07:57:00 +00:00
c028ee2bf2 Android audio opensles: random deadlock in stopRecording().
BUG=2201
Test=WebRTCDemo

R=fischman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4589 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-22 03:14:34 +00:00
32fe90b3f9 Made all integration tests use consistent naming.
After decision by pbos@, mflodman@ et. al.

BUG=
R=kjellander@webrtc.org, mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4565 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-19 11:40:19 +00:00
cc9238e385 Fix OSX keydown detection. I noticed that the OSX implementation differs from Linux and Windows, and it will trigger continuously for a key that is pressed down. It would totally make sense to change this to a callback driven model, but that's a bigger change.
I need to test this before committing...

R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4550 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-15 14:19:12 +00:00
c92781737c OpenSl bug: not matching playout and record sample rate led to high or low pitch audio (depending on if playout rate was higher or lower than record rate).
BUG=N/A
R=fischman@webrtc.org, niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4549 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-15 14:13:13 +00:00
4298f73031 Revert 4547 "Isolate GYP target and .isolate files for tests"
As this breaks the FYI bots in 
http://build.chromium.org/p/chromium.webrtc.fyi/waterfall
due to different path to isolate.gypi (which cannot easily
be resolved due to limitations in GYP)

> Isolate GYP target and .isolate files for tests
> 
> Implemented according to the instructions at
> http://www.chromium.org/developers/testing/isolated-testing
> 
> Workflow has been like this:
> 1. create _run GYP target
> 2. create a stripped down .isolate file
> 3. export GYP_DEFINES="$GYP_DEFINES test_isolation_mode=check"
> 4. runhooks
> 5. compile
> 6. test if the test would run (i.e. find it's dependencies) without
>    actually executing it:
>    tools/swarm_client/isolate.py run --isolated out/Release/testname.isolated
> 7. If failing, run the fix_test_cases.py script like this:
>    tools/swarm_client/fix_test_cases.py --isolated out/Release/testname.isolated
> 
> All tests that run on the bots for WebRTC has got _run target
> and .isolate file created.
> 
> "Normal tests" that run fine on any machine:
> * audio_decoder_unittests
> * common_audio_unittests
> * common_video_unittests
> * metrics_unittests
> * modules_integrationtests
> * modules_unittests
> * neteq_unittests
> * system_wrappers_unittests
> * test_support_unittests
> * tools_unittests
> * video_engine_core_unittests
> * voice_engine_unittests
> 
> Tests that requires bare-metal and audio/video devices:
> * audio_device_integrationtests
> * video_capture_integrationtests
> 
> I also added the isolate boilerplate code for the following
> tests that are not yet pure gtest binaries (which means they
> cannot run isolated yet):
> * video_render_integrationtests
> * vie_auto_test
> * voe_auto_test
> 
> TEST=running isolate.py as described above.
> BUG=1916
> R=tommi@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/1673004

TBR=kjellander@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4548 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-15 11:29:58 +00:00
d7a4d235d2 Isolate GYP target and .isolate files for tests
Implemented according to the instructions at
http://www.chromium.org/developers/testing/isolated-testing

Workflow has been like this:
1. create _run GYP target
2. create a stripped down .isolate file
3. export GYP_DEFINES="$GYP_DEFINES test_isolation_mode=check"
4. runhooks
5. compile
6. test if the test would run (i.e. find it's dependencies) without
   actually executing it:
   tools/swarm_client/isolate.py run --isolated out/Release/testname.isolated
7. If failing, run the fix_test_cases.py script like this:
   tools/swarm_client/fix_test_cases.py --isolated out/Release/testname.isolated

All tests that run on the bots for WebRTC has got _run target
and .isolate file created.

"Normal tests" that run fine on any machine:
* audio_decoder_unittests
* common_audio_unittests
* common_video_unittests
* metrics_unittests
* modules_integrationtests
* modules_unittests
* neteq_unittests
* system_wrappers_unittests
* test_support_unittests
* tools_unittests
* video_engine_core_unittests
* voice_engine_unittests

Tests that requires bare-metal and audio/video devices:
* audio_device_integrationtests
* video_capture_integrationtests

I also added the isolate boilerplate code for the following
tests that are not yet pure gtest binaries (which means they
cannot run isolated yet):
* video_render_integrationtests
* vie_auto_test
* voe_auto_test

TEST=running isolate.py as described above.
BUG=1916
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4547 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-15 10:02:06 +00:00
a3b7406219 Remove unused unreferenced code in webrtc/
The code removed here are .c, .cc and .h files that are not referenced
from anywhere else. E.g. if git-grep showed no occurrence of the file
it's removed. This process was repeated until no more unreferenced
files were present.

BUG=
R=andrew@webrtc.org, henrike@webrtc.org, phoglund@webrtc.org, stefan@webrtc.org, turaj@webrtc.org, wu@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4511 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-09 08:47:51 +00:00
12dc1a38ca 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
2013-08-05 16:22:53 +00:00
8fff1f065e Merge r4394 from stable to trunk.
r4326 was mistakenly committed to stable, so this is to re-merge back to trunk.

Fixed the AGC and interface problems on the new path.

In order to make the AGC work properly, we need to cache the volume value passed
by the callback, compare it with the value returned by
shared->transmit_mixer()->CaptureLevel(). If they are the same, we need to
return 0 to indicate no volume needs changing, otherwise return the new volume.
By doing this, we avoid setting the volume all the same, which allows the users
to change the volume manually.

This patch also fixes some minor issues with the interfaces too: make the int
channel[] const, and correct the order of the input params in
channel::Demultiplex.

R=tommi@webrtc.org

BUG=[2134]
TEST=compile && manual AGC test

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4450 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-31 16:27:42 +00:00
2f84afad30 Merge r4326 from stable to trunk.
r4326 was mistakenly committed to stable, so this is to re-merge back to trunk.

Add new interface to support multiple sources in webrtc.
CaptureData() will be called by chrome with a flag |need_audio_processing| to
indicate if the data needs to be processed by APM or not. Different from the old
interface that will send the data to all voe channels, the new interface will
specify a list of voe channels that the data is demultiplexing to.

R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4449 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-31 16:23:37 +00:00
096515b070 Fix some chromium-style warnings in webrtc/modules/audio_device/
BUG=163
R=xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4426 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-30 12:32:59 +00:00
811269df40 Include files from webrtc/.. paths in audio_device/.
BUG=1662
R=xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4330 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-11 13:24:38 +00:00
0b8636a783 In AudioDeviceWindowsCore::_EnumerateEndpointDevicesAll(), continue enumerating if one individual device failed.
BUG=
TEST=manual Test
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4295 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-04 07:24:12 +00:00
d900e8bea8 Proper spacing for end-of-namespace comments.
BUG=
R=mflodman@webrtc.org, tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4293 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-03 15:12:26 +00:00
546c91dc2e Build all java files into jar for each module on Android
BUG=None
TEST=All java files in each module are built into jar and used by WebRTCDemo app
R=fischman@webrtc.org, niklas.enbom@webrtc.org

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

Patch from Jeremy Mao <yujie.mao@intel.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4284 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-07-01 17:52:39 +00:00
63e988856e Merge more tests into modules_{unit,integration}tests.
A new test target named 'modules_integrationtests' is created
and the following test targets were merged into it:
* audio_coding_module_test
* test_fec
* video_coding_integrationtests
* vp8_integrationtests

A couple of other targets were merged into modules_unittests:
* audio_coding_unittests
* audioproc_unittest
* common_unittests
* video_coding_unittests
* video_processing_unittests
* vp8_unittests

I wasn't able to merge audio_decoder_unittests and neteq_unittests due to
conflicts with different defines in these tests.

Some tests that have special requirements aren't merged into
modules_integrationtests yet. I took the opportunity to rename them
since the bot configs will need to be update anyway:
* audio_device_test_api -> audio_device_integrationtests
* video_capture_module_test -> video_capture_integrationtests
* video_render_module_test -> video_render_integrationtests

Exclude files were added for modules_integrationtests to make sure
the memcheck and tsan bots doesn't tests that are too slow
(audio_coding_module_test and vp8_integrationtests were previously
disabled on those bots).

Suppressions for AudioCodingModuleTest needed to be added to get
modules_integrationtests to pass memcheck (even if the test is
excluded from execution).

BUG=1843
TEST=local execution on Linux and trybots (passing except the merged tests of course)
R=andrew@webrtc.org, tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4228 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-14 20:09:44 +00:00
dd97ef4e28 Revert 4211 "Build all java files into jar for each module on An..."
Reason for revert: behold the meltdown of the "trunk" bots on http://build.chromium.org/p/chromium.webrtc.fyi/waterfall

Turns out that include in gyp is fraught with peril: https://code.google.com/p/gyp/wiki/InputFormatReference#Including_Other_Files

> Build all java files into jar for each module on Android
>
> BUG=
> R=fischman@webrtc.org, niklas.enbom@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/1636004
>
> Patch from Jeremy Mao <yujie.mao@intel.com>.

TBR=fischman@webrtc.org
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4222 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-12 17:39:29 +00:00
1374965680 Build all java files into jar for each module on Android
BUG=
R=fischman@webrtc.org, niklas.enbom@webrtc.org

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

Patch from Jeremy Mao <yujie.mao@intel.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4211 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-10 23:34:27 +00:00
83a062cc5f AudioDeviceAndroidOpenSLES: NULL variables might be referenced in StopPlayout()
BUG=1891
Test=ManualTest

R=fischman@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4200 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-10 08:09:05 +00:00
569fdef732 Revert some variables to uint32_t to fix compile errors on Mac gcc.
TBR=xians

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4199 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-06-08 00:43:25 +00:00