Commit Graph

6971 Commits

Author SHA1 Message Date
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
pbos@webrtc.org
1795c358fc Add default implementation of Add/RemoveObserver.
Needed to remove Add/RemoveObserver from RTCVideoEncoderFactory in
Chromium before removing these completely. This is done to keep the
chromium.webrtc.fyi bots happy and to make rolling webrtc revisions
easier.

R=stefan@webrtc.org
BUG=3876

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7332 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-30 09:45:25 +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
glaznev@webrtc.org
359d720004 Allow Android apps to set video renderer scaling type.
Also add type check for EGL context object received from apps and
switch to byte buffer video decoding if EGL context is incorrect

BUG=3851
R=tkchin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7326 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-29 23:07:08 +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
asapersson@webrtc.org
626624061e Disable flaky tests:
JsepPeerConnectionP2PTestClient.ReceivedBweStatsCombined
JsepPeerConnectionP2PTestClient.ReceivedBweStatsNotCombined

BUG=3871
R=henrike@webrtc.org, kjellander@webrtc.org, pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7323 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-29 14:30:07 +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
3a10d2f64f Roll chromium_revision deaf2f7e..c264a056 (295079:297113)
Summary of changes (git diff deaf2f7e..c264a056 DEPS):
* buildtools ea4dc0e..56bc51a
* third_party/android_tools 7fc902d..bbafe51
* third_party/boringssl a70c75c..01fe820
* third_party/icu 8983113..d2abf6c1
* third_party/libsrtp dcc1fc62..98284c8
* third_party/libvpx 4947d55..efe9712d
* third_party/nss 7b5b6ec4..87b96db
* tools/swarming_client 14b5fd8..79940aee

BUG=
TBR=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7315 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-28 10:33:45 +00:00
kjellander@webrtc.org
6c6680a9d4 Cleanup .gclient.bot_entries to avoid sync problems on bots.
In https://webrtc-codereview.appspot.com/28509004 the buildbot
case was missed since they get a gclient entries file named
.gclient.bot_entries instead of the regular .gclient_entries
file due to the way the sync was implemented for buildbots.

This change makes the right file get wiped in the two cases.

BUG=
TBR=agable@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7314 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-27 18:41:03 +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
jiayl@webrtc.org
bebc75e8bd Fix the duplicated candidate problem when using multiple STUN servers.
BUG=3723
R=pthatcher@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7312 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-26 23:01:11 +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
thorcarpenter@google.com
a21d071607 Reverting part of
https://webrtc-codereview.appspot.com/15089004/diff/140001/talk/session/media/channelmanager.cc?context=10&column_width=80
because of a major regression hanging the executable on start.

R=jiayl@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7309 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-26 17:19:14 +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
marpan@webrtc.org
8b2e50cf83 Revert 7302 "Roll chromium revision: 6455c69:2687a76"
> Roll chromium revision: 6455c69:2687a76
> 
> Pick up the libvpx roll: https://codereview.chromium.org/597703004/
> 
> R=johannkoenig@google.com
> TBR=ajm@google.com
> 
> Review URL: https://webrtc-codereview.appspot.com/23789004

TBR=marpan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7304 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-25 22:20:11 +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
marpan@webrtc.org
b38959ee0c Roll chromium revision: 6455c69:2687a76
Pick up the libvpx roll: https://codereview.chromium.org/597703004/

R=johannkoenig@google.com
TBR=ajm@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7302 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-25 20:28: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
pbos@webrtc.org
05305116d6 Explicitly initialize SSL for tests.
Adding missing SSL initialization/cleanups in
TransportDescriptionFactoryTest and MediaSessionTest.

These being missing prevent these tests from being run individually
without other tests preceding them that initialize SSL.

BUG=3860
R=pthatcher@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7300 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-25 15:50:26 +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