2733 Commits

Author SHA1 Message Date
pbos@webrtc.org
c86e45d7c4 Fix parallelizability in modules_tests.
R=henrik.lundin@webrtc.org
BUG=3873
TEST=third_party/gtest-parallel/gtest-parallel -r 10 -w 64 out/Debug/modules_tests

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7354 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-01 10:05:40 +00:00
henrik.lundin@webrtc.org
4cebd84c79 Reland "Remove DTMF status methods from Voice Engine" r7276
This reverts r7277.

TBR=henrika@webrtc.org,pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7353 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-01 08:23:21 +00:00
kjellander@webrtc.org
3037bc3447 GN: Add common configs to tools and test.
Similar changes as in https://review.webrtc.org/28589004/
were missed in https://review.webrtc.org/25569004/.
This should fix the Chromium WebRTC FYI bots that currently
are broken due to lack of include paths.

BUG=3441
TBR=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7347 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 19:07:58 +00:00
kjellander@webrtc.org
b8caf6a504 GN: Enable libvpx, add link target and convert some test targets
Libvpx now supports GN and this CL turns on compiling it.
I also introduced an executable target 'webrtc_tests'
that depends on all in WeBRTC + tests in order to get a full
linking step executed (since we've seen link problems for GN
when rolling WebRTC into Chromium).

I also converted a few test targets and made a GN file for
third_party/gflags.

BUG=3441
TESTED=Trybots + full Chromium build with a symlinked src/third_party/webrtc
dir to a workspace wit this CL applied.

R=brettw@chromium.org
TBR=niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7344 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 18:05:02 +00:00
andrew@webrtc.org
d05756f0a2 Changed mips_arch_variant variable value corresponding to Chromium code changes.
Chromium commit URL: https://crrev.com/c8a5da7455b57b2399e4a69e8100c098d9870052

R=andrew@webrtc.org

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

Patch from Ljubomir Papuga <lpapuga@mips.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7343 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 15:53:24 +00:00
xians@webrtc.org
79a7148108 Revert 7337 "Reland 28629004: adding new AEC dump start interfac..."
> Reland 28629004: adding new AEC dump start interface for chrome
> 
> adding new AEC dump start interface for chrome.
> 
> This is required because we are not allow to pass CRT objects across dll boundaries, that says, when we pass a file descriptor from chrome dll to libpeerconnection dll, the file descriptor will become invalid immediate, more information can be found here:
> http://msdn.microsoft.com/en-us/library/ms235460.aspx
> 
> Chromium bug:crbug/415935
> TEST=bots
> R=bjornv@webrtc.org, kwiberg@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/27639004

TBR=xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7342 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 15:29:13 +00:00
xians@webrtc.org
7aad5e5cce Revert 7338 "Fixed the android build by making the interface pur..."
> Fixed the android build by making the interface pure virtual.
> 
> TBR=asapersson@webrtc.org, bjornv@webrtc.org,
> 
> Review URL: https://webrtc-codereview.appspot.com/24789004

TBR=xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7341 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 15:26:15 +00:00
houssainy@google.com
d0bb5862f5 Collecting stats every fixed time in webrtc_video_streaming.js test
and prepare the format these collected stats to be plotted using one of
external dev-tools.

R=andresp@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7340 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 15:20:15 +00:00
andrew@webrtc.org
db75a66b0f Minor code change to fix some warnings in MIPS build.
R=andrew@webrtc.org, bjornv@webrtc.org, kwiberg@webrtc.org

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

Patch from Ljubomir Papuga <lpapuga@mips.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7339 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 15:17:50 +00:00
xians@webrtc.org
90d1979d77 Fixed the android build by making the interface pure virtual.
TBR=asapersson@webrtc.org, bjornv@webrtc.org,

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7338 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 15:15:22 +00:00
xians@webrtc.org
14092e00f1 Reland 28629004: adding new AEC dump start interface for chrome
adding new AEC dump start interface for chrome.

This is required because we are not allow to pass CRT objects across dll boundaries, that says, when we pass a file descriptor from chrome dll to libpeerconnection dll, the file descriptor will become invalid immediate, more information can be found here:
http://msdn.microsoft.com/en-us/library/ms235460.aspx

Chromium bug:crbug/415935
TEST=bots
R=bjornv@webrtc.org, kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7337 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 14:35:15 +00:00
henrike@webrtc.org
792d1a0541 Adds isolate for rtc_unittests and moves sound's unittests to rtc_unittest.
BUG=N/A
R=andrew@webrtc.org, kjellander@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7336 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 14:21:10 +00:00
xians@webrtc.org
875206196c Revert 7334 "adding new AEC dump start interface for chrome."
> adding new AEC dump start interface for chrome.
> 
> This is required because we are not allow to pass CRT objects across dll boundaries, that says, when we pass a file descriptor from chrome dll to libpeerconnection dll, the file descriptor will become invalid immediate, more information can be found here:
> http://msdn.microsoft.com/en-us/library/ms235460.aspx
> 
> Chromium bug:crbug/415935
> TEST=bots
> R=bjornv@webrtc.org, kwiberg@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/28629004

TBR=xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7335 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 13:30:05 +00:00
xians@webrtc.org
2e417d6428 adding new AEC dump start interface for chrome.
This is required because we are not allow to pass CRT objects across dll boundaries, that says, when we pass a file descriptor from chrome dll to libpeerconnection dll, the file descriptor will become invalid immediate, more information can be found here:
http://msdn.microsoft.com/en-us/library/ms235460.aspx

Chromium bug:crbug/415935
TEST=bots
R=bjornv@webrtc.org, kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7334 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 13:11:27 +00:00
henrik.lundin@webrtc.org
38c121c484 Minor modifications to test::RtpFileReader
Adding original_length to the Packet struct. This is populated with
the plen value from the RTP dump file. In the case of reading a
pcap file, original_length will be equal to length.

Also increasing the maximum packet size to 3500 bytes. This is to
accomodate some test files that contain PCM16b audio encoding.

R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7333 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 11:08:44 +00:00
bjornv@webrtc.org
65e56dba53 audio_processing/aecm: Added help function for calculating log of energy
The same operation of calculating log of the energy was executed four times. This CL adds a help function LogOfEnergyInQ8() for that.

BUG=N/A
TESTED=locally on linux and trybots
R=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7331 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 09:31:28 +00:00
bjornv@webrtc.org
23ec8372a6 audio_processing: Removed usage of macro WEBRTC_SPL_MUL
WEBRTC_SPL_MUL is a trivial multiplication after casting to int32_t. This is already taken care of by the compiler which makes the macro unnecessary.

Affected components:
* AGC
* NSx

BUG=3348,3353
TESTED=locally on linux and trybots
R=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7330 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 09:29:28 +00:00
bjornv@webrtc.org
750423c722 audio_processing: Replaced trivial macro WEBRTC_SPL_LSHIFT_W32 with <<
Affected components:
* AECM
* AGC
* HPF
* NSx

BUG=3348,3353
TESTED=locally on linux and trybots
R=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7329 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 09:26:36 +00:00
kjellander@webrtc.org
8cad9432d5 Revert 7327 "Update isolate.gypi files + link to isolate_driver.py"
Breaks debug compilation (didn't run all trybots when testing this).

> Update isolate.gypi files + link to isolate_driver.py
> 
> This updates the isolate.gypi copies we're forced to
> maintain in our code repo to Chromium revision c264a05.
> 
> Since isolated testing is now using a new launch script
> in tools: isolate_driver.py, that is added to our links
> script.
> 
> BUG=395700
> TESTED=Ran one of our tests with:
> ninja -C out/Release tools_unittests_run
> tools/isolate_driver.py run --isolated out/Release/tools_unittests.isolated --isolate webrtc/tools/tools_unittests.isolate
> 
> R=henrika@webrtc.org, jam@chromium.org
> 
> Review URL: https://webrtc-codereview.appspot.com/26649004

TBR=kjellander@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7328 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 08:44:00 +00:00
kjellander@webrtc.org
02cd3067d2 Update isolate.gypi files + link to isolate_driver.py
This updates the isolate.gypi copies we're forced to
maintain in our code repo to Chromium revision c264a05.

Since isolated testing is now using a new launch script
in tools: isolate_driver.py, that is added to our links
script.

BUG=395700
TESTED=Ran one of our tests with:
ninja -C out/Release tools_unittests_run
tools/isolate_driver.py run --isolated out/Release/tools_unittests.isolated --isolate webrtc/tools/tools_unittests.isolate

R=henrika@webrtc.org, jam@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7327 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 08:34:57 +00:00
jiayl@webrtc.org
7dfb7fa189 Reland disallowing blocking calls on the worker thread.
This fixed the issue that invoking the call when the thread is not started.

BUG=3559
R=juberti@webrtc.org, thorcarpenter@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7325 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-29 22:45:55 +00:00
henrike@webrtc.org
ea6c12e59f Set thread scheduling parameters inside the new thread.
This makes it possible to restrict threads from modifying scheduling
parameters of another thread in the Chrome Linux sandbox.

BUG=
R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7324 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-29 18:25:27 +00:00
kjellander@webrtc.org
e794c36637 Fix parallel test execution for tools, testsupport and metrics tests.
BUG=2600
TESTED=Passing tests using:
python third_party/gtest-parallel/gtest-parallel -w 10 -r 20 out/Release/test_support_unittests
python third_party/gtest-parallel/gtest-parallel -w 10 -r 20 out/Release/tools_unittests
python third_party/gtest-parallel/gtest-parallel -w 10 -r 20 out/Release/video_engine_tests

R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7322 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-29 11:47:28 +00:00
bjornv@webrtc.org
d71118194f audio_processing: Replaced macro WEBRTC_SPL_LSHIFT_W16 with <<
A trivial macro that serves no purpose. Affected components are:
* audio_processing/nsx
* audio_processing/agc
* audio_processing/aecm
* common_audio/LpcToReflCoef

BUG=3348,3353
TESTED=locally on linux
R=kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7321 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-29 10:56:27 +00:00
bjornv@webrtc.org
7c15510f38 common_audio refactoring: Removed macro WEBRTC_SPL_LSHIFT_U32
The macro is a trivial shift operator including a cast before shift. There is no guard against negative shifts. Replaced with << at place and added casts when necessary.

Affects both fixed and float point versions of iSAC

BUG=3348,3353
TESTED=locally on linux and trybots
R=kwiberg@webrtc.org, tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7320 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-29 09:40:38 +00:00
houssainy@google.com
24f62e1a28 Adding getStats function to the exposed PeerConnection in RtcBot
Exposed Peerconnection object has new function "getStats". This function
returns the stats as array of reports, and each report is RTCStatReport
with additional attributes names and stats.

names: array of all the stat names in current report.
Stats: dictionary and the key is the stat name, and value is the value
of this stat.

R=andresp@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7319 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-29 09:36:28 +00:00
pbos@webrtc.org
730d270771 Remove callback from RtpDepacketizer::Parse().
BUG=
R=pbos@webrtc.org, stefan@webrtc.org

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

Patch from Changbin Shao <changbin.shao@intel.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7318 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-29 08:00:22 +00:00
kjellander@webrtc.org
f21ea918ad GN: Add common configs to all targets.
This is needed to ensure we have the same build with GN
as with GYP, since GYP includes the common.gypi on a global level.
Several fixes has been needed in the past because some code have
been built without the right defines.

BUG=3441
R=brettw@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7317 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-28 17:37:22 +00:00
pbos@webrtc.org
34f2a9ea72 Initialize SSL in unittest_main.cc.
Instead of having each test individually initialize and tear down SSL
move this to unittest_main.cc so that all tests are properly
initialized and new tests "don't have to think about it".

R=pthatcher@webrtc.org
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7316 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-28 11:36:45 +00:00
kjellander@webrtc.org
3902054b58 Roll chromium_revision 6455c69..deaf2f7 (293954:295079)
Mainly to pick up recent yasm changes needed for
turning on libvpx in GN.

Summary of changes (git diff 6455c69..deaf2f7 DEPS):
* third_party/boringssl 7bdec13..a70c75c
* third_party/libjpeg_turbo 3963fbc..034e9a9
* third_party/libvpx d95585f..4947d55
* tools/gyp 1972:1977

I had to add src/third_party/junit/src to be ignored
due to http://crbug.com/417292.

BUG=3855, chromium:417292
TBR=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7313 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-27 18:10:30 +00:00
braveyao@webrtc.org
0a256acb67 Getting orientation is not working properly. VideoCaptureImpl::RotationFromDegrees returns -1 in case fails not 0. So we need to change the if statement.
BUG=3869
TEST=Manual
R=glaznev@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7311 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-26 22:50:06 +00:00
pthatcher@webrtc.org
5d0071fb1f Build one of NSS or BoringSSL but not both.
The libraries have some common symbols. When both are linked I observed NSS
SHA1_Update called followed by BoringSSL SHA1_Final, which results in a
segfault. We should only link one of these.

Based off of https://review.webrtc.org/25689004/

BUG=3855
R=pthatcher@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7310 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-26 18:53:40 +00:00
jiayl@webrtc.org
1fd362c31e Do not assert for blocking call allowed in Thread::Join.
We do not allow blocking call from the worker thread, but on Android the worker thread may stop/join a SignalThread, which hits the assert.
AssertBlockingIsAllowedOnCurrentThread is used to make sure a thread does not do Invoke, so check that in Thread::Join does not seem to add much value.

BUG=3857
R=juberti@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7308 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-26 16:57:07 +00:00
aluebs@webrtc.org
384d05f362 Remove the different block lengths in ns_core
Relanding the CL: https://webrtc-codereview.appspot.com/30539004/
It had to be reverted because some development code was uploaded by mistake.

TBR=bjornv@webrtc.org

BUG=webrtc:3811

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7307 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-26 14:41:19 +00:00
aluebs@webrtc.org
5088377d70 Revert 7297 "Remove the different block lengths in ns_core"
> Remove the different block lengths in ns_core
> 
> This CL has bit-exact output.
> 
> What it does:
>   * Remove the blockLen10Ms, as it is hardcoded to be equal to blockLen.
>   * This makes outLen to be always zero, so it can be removed too.
>   * It also avoids the need to have an outBuf, because it is not used, so it is also removed
>   * Replaced blockLen10Ms by blockLen everywhere, since they were hardcoded to be equal.
>   * We don't need to check if outLen is zero, because it always is, so it was removed.
>   * Of course, the outBuf needs no initial set or copying around, because it is not used.
> 
> BUG=webrtc:3811
> R=bjornv@webrtc.org, kwiberg@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/30539004

TBR=aluebs@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7306 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-26 14:33:08 +00:00
henrikg@webrtc.org
ca110b808f Mark virtual overrides of ViENetwork and VoENetwork as such.
This will make further changes to these classes safer by ensuring that the
compile breaks if the base class changes and not all overrides are fixed.

BUG=none
TEST=none
R=henrikg@webrtc.org, mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7305 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-26 11:09:08 +00:00
claguna@google.com
bfacaabfce Add accessors for array of channel pointers in AudioBuffer. They are
needed as arguments to any multichannel audio processing unit.

R=andrew@webrtc.org, kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7303 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-25 20:52:08 +00:00
jiayl@webrtc.org
f1d751c7de Call SSL_shutdown in OpenSSLStreamAdapter::Cleanup.
BUG=crbug/414211
R=juberti@webrtc.org

Committed: https://code.google.com/p/webrtc/source/detail?r=7293

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7301 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-25 16:38:46 +00:00
tnakamura@webrtc.org
61e811faa0 Bump to version 39
TBR=niklas.enbom

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7299 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-25 15:28:20 +00:00
minyue@webrtc.org
60fbd65482 Removing error triggered for disabling FEC on non-opus
A failure was triggered when one sets FEC status on a codec that does not support FEC. While it is definitely logical when one wants to enable it, it makes no good sense if one tries to disable it.

BUG=
R=tina.legrand@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7298 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-25 14:36:30 +00:00
aluebs@webrtc.org
5f3965783b Remove the different block lengths in ns_core
This CL has bit-exact output.

What it does:
  * Remove the blockLen10Ms, as it is hardcoded to be equal to blockLen.
  * This makes outLen to be always zero, so it can be removed too.
  * It also avoids the need to have an outBuf, because it is not used, so it is also removed
  * Replaced blockLen10Ms by blockLen everywhere, since they were hardcoded to be equal.
  * We don't need to check if outLen is zero, because it always is, so it was removed.
  * Of course, the outBuf needs no initial set or copying around, because it is not used.

BUG=webrtc:3811
R=bjornv@webrtc.org, kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7297 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-25 13:53:43 +00:00
henrik.lundin@webrtc.org
741711a861 Revert r7049/r7123, which added unnecessary "u"s to "return 0"s.
r7049 added some unnecessary casts ("return 0" -> "return static_cast<uint16_t>(0)").  r7123 converted these to "return 0u".  The original impetus for this was to eliminate type conversion warnings.  However, the 'u's are unnecessary; Visual Studio can return "0" from a function returning an unsigned value without producing a warning.  The real reason for the original warnings was that the code was returning -1 from a function returning an unsigned value, which does need a cast; the -1s were eliminated before the above two revisions landed.

Also reverse the order of some conditionals to prevent possible underflow.
While the underflow wouldn't have changed the behavior of the code, it's easier
to reason about the code when such underflow can't happen, and possibly safer
against future modifications as well.

BUG=3663
TEST=none
R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7296 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-25 07:38:14 +00:00
pbos@webrtc.org
315669939a Fix typo from RtpPacketizerH264.
BUG=
R=pbos@webrtc.org

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

Patch from Changbin Shao <changbin.shao@intel.com>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7295 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-25 07:31:42 +00:00
andresp@webrtc.org
37e1846d73 Revert "Call SSL_shutdown in OpenSSLStreamAdapter::Cleanup." (rev 7293).
Breaks windows bot as it was already showing on the try jobs on the

BUG=crbug/414211
R=jiayl@webrtc.org,juberti@webrtc.org
TBR=jiayl@webrtc.org,juberti@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7294 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-25 07:30:14 +00:00
jiayl@webrtc.org
fe1eafb71a Call SSL_shutdown in OpenSSLStreamAdapter::Cleanup.
BUG=crbug/414211
R=juberti@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7293 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-24 21:13:39 +00:00
andrew@webrtc.org
30be827e6a Enable render downmixing to mono in AudioProcessing.
In practice, we have been doing this since time immemorial, but have
relied on the user to do the downmixing (first voice engine then
Chromium). It's more logical for this burden to fall on AudioProcessing,
however, who can be expected to know that this is a reasonable approach
for AEC. Permitting two render channels results in running two AECs
serially.

Critically, in my recent change to have Chromium adopt the float
interface:
https://codereview.chromium.org/420603004
I removed the downmixing by Chromium, forgetting that we hadn't yet
enabled this feature in AudioProcessing. This corrects that oversight.

The change in paths hit by production users is very minor. As commented
it required adding downmixing to the int16_t path to satisfy
bit-exactness tests.

For reference, find the ApmTest.Process errors here:
https://paste.googleplex.com/6372007910309888

BUG=webrtc:3853
TESTED=listened to the files output from the Process test, and verified
that they sound as expected: higher echo while the AEC is adapting, but
afterwards very close.

R=aluebs@webrtc.org, bjornv@webrtc.org, kwiberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7292 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-24 20:06:23 +00:00
jiayl@webrtc.org
e1bba60792 Add missing DesktopConfigurationMonitor Unlock in webrtc::ScreenCapturerMac
BUG=3837
R=jiayl@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7291 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-24 17:23:46 +00:00
jiayl@webrtc.org
3987b6de50 Fix a problem in Thread::Send.
Previously if thread A->Send is called on thread B, B->ReceiveSends will be called, which enables an arbitrary thread to invoke calls on B while B is wait for A->Send to return. This caused mutliple problems like issue 3559, 3579.
The fix is to limit B->ReceiveSends to only process requests from A.
Also disallow the worker thread invoking other threads.

BUG=3559
R=juberti@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7290 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-24 17:14:05 +00:00
aluebs@webrtc.org
a0ce9fa2a6 Call NS AnalyzeCaptureAudio before AEC
This attenuates the noise pumping generated from the NS adapting to the AEC comfort noise.

When there is echo present the AEC suppresses it and adds comfort noise. This is underestimated on purpose to avoid adding more than the original background noise. The NS has to be called after the AEC, because every non-linear processing before it can ruin its performance. Therefore the noise estimation can adapt to this comfort noise, making it less aggressive and generating noise pumping.

By putting the noise estimation analysis stage from the NS before the AEC, this effect can be avoided. This has been tested manually on recordings where noise pumping was present: Two long recordings done in our team by bjornv and kwiberg plus the most noisy (5) recordings in the QA set.

On the other hand, one risk of doing this is to not adapt to the comfort noise and therefore suppress too much. As verified in the tested files, this is not a problem in practice.

BUG=webrtc:3763
R=andrew@webrtc.org, bjornv@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7289 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-24 14:18:03 +00:00
sprang@webrtc.org
70e2d11ea8 Reduce jitter delay for low fps streams.
Enabled by finch flag.

BUG=
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7288 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-24 14:06:56 +00:00