Commit Graph

4337 Commits

Author SHA1 Message Date
andrew@webrtc.org
20078e2f9b Support video constraints and use key/value pairs.
- Remove the minre and maxre parameters in favour of setting video
constraints directly.
- In order to support non-boolean values, have constraints passed as
key/value pairs, rather than the leading "-" syntax used earlier to
specify false.

TESTED=Verified that setting various audio and video constraints has
the desired effect, including "true" and "false". Verified that the "hd"
parameter still works.

R=fischman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4931 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-05 02:26:50 +00:00
mikhal@webrtc.org
35e4dd3067 VPM: Fixing namespace
R=marpan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4930 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-04 20:21:30 +00:00
fischman@webrtc.org
4598380860 Android: enable camera video stabilization when available.
R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4929 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-04 20:14:19 +00:00
kjellander@webrtc.org
7fca2ce097 Add owners to [webrtc,talk]/build and *.isolate (take 2)
After fischman@'s comments in http://review.webrtc.org/2347006/ here's another CL to clean up the redundancies and add wu@ to webrtc/build/

TEST=none
BUG=none
R=andrew@webrtc.org, fischman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4928 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-04 19:36:45 +00:00
kjellander@webrtc.org
495f29ef94 Remove unused Android dummy APK
This is a leftover from our initial Android efforts.
It is not used anywhere and is only confusing to keep around.

The Android precompiled tools in http://review.webrtc.org/2353004/
still have some use when testing Android devices on Mac, so we'll
keep them around by request from henrike@

TEST=none
BUG=none
R=andrew@webrtc.org, henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4927 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-04 19:33:48 +00:00
kjellander@webrtc.org
e6938185a5 Add isolate targets for libjingle
Add .isolate file for libjingle tests and and the necessary isolate.gypi file, similar to the change in
http://review.webrtc.org/2338004/

TEST=trybots passing.
I also ran build/gyp_chromium in a Chromium checkout
with third_party/libjingle/source/talk having this patch
applied to ensure GYP processing was still working.

BUG=1916
R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4926 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-04 19:31:27 +00:00
kjellander@webrtc.org
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
andrew@webrtc.org
6c264cc92e Clean up AudioProcessing defaults and errors.
- Remove unneeded #defines and switch the remainder to consts.
- All AudioProcessing components are disabled by default, so remove
explicit disables.
- AudioProcessing uses a rational 16 kHz mono default, so no need to
explictly initialize.
- Add assert(false) to real-time errors which should not occur.

TESTED=trybots
R=bjornv@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4924 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-04 17:54:09 +00:00
kjellander@webrtc.org
83b9e5b328 Add owners to [webrtc,talk]/build and *.isolate
BUG=none
R=andrew@webrtc.org, wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4923 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-04 17:35:26 +00:00
andrew@webrtc.org
acb00505b6 Only declare kDelayDiffOffset when used.
And remove the redundant Windows block.

R=hans@chromium.org, niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4922 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-04 16:59:17 +00:00
henrike@webrtc.org
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
andresp@webrtc.org
be9c560aab Revert r4913 that reverts r4911. Original CL description:
"Adding temporal layer strategy that keeps base layer framerate at an acceptable value."

R=holmer@google.com, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4920 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-04 13:11:31 +00:00
andrew@webrtc.org
bab2aa5113 Add audio and video parameters for setting media constraints.
- These replace the media parameter, now removed.
- Organize the parameter getting a bit.

To describe the new parameters, I'll just copy the code comments here:
Use "audio" and "video" to set the media stream constraints. "true" and
"false" are recognized and interpreted as bools, for example:
  "?audio=true&video=false" (start an audio-only call).
  "?audio=false" (start a video-only call)
If unspecified, the constraint defaults to True.

audio-specific parsing:
To set certain constraints, pass in a comma-separated list of audio
constraint strings. If preceded by a "-", the constraint will be set to
False, and otherwise to True. There is no validation of constraint
strings. Examples:
  "?audio=googEchoCancellation" (enables echo cancellation)
  "?audio=-googEchoCancellation,googAutoGainControl" (disables echo
      cancellation and enables gain control)

TESTED=Verified that passing true, false and various audio constraints
has the desired effect in apprtc.

R=vikasmarwaha@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4919 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-03 22:37:29 +00:00
fischman@webrtc.org
4446134757 AppRTCDemo(android): support boolean value for MediaStreamConstraints.{audio,video}.
Previously it was assumed that these values were always MediaTrackConstraints but
http://dev.w3.org/2011/webrtc/editor/getusermedia.html#idl-def-MediaStreamConstraints
allows them to be boolean, too.

R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4918 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-03 22:34:10 +00:00
fischman@webrtc.org
a7266ca134 Fix clang build break
TBR=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4917 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-03 19:04:18 +00:00
fischman@webrtc.org
6c82e04cee Android standalone: remove some usages of deprecated APIs and prevent further regressions.
Also:
- Fixed WebRTCDemo UI to say "SwitchToBack" at startup since default camera is front
- Rebuild WebRTCDemo APK when resources/layout/strings change

R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4916 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-03 18:57:48 +00:00
fischman@webrtc.org
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
fischman@webrtc.org
ddc5a19ce9 AppRTCDemo(android): uncaught exceptions now display a modal dialog box before killing the app.
BUG=2458
R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4914 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-03 18:09:40 +00:00
turaj@webrtc.org
44db9d1a57 Revert 4911 "Adding temporal layer strategy that keeps base laye..."
> Adding temporal layer strategy that keeps base layer framerate at an acceptable value.
> 
> R=stefan@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/2272005

TBR=andresp@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4913 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-03 17:42:07 +00:00
mikhal@webrtc.org
b43d8078a1 Reformatting VPM: First step - No functional changes.
R=marpan@google.com, marpan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4912 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-03 16:42:41 +00:00
andresp@webrtc.org
26f78f7ecb Adding temporal layer strategy that keeps base layer framerate at an acceptable value.
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4911 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-03 14:06:14 +00:00
henrik.lundin@webrtc.org
70df305760 Minor fix to avoid breakage
Related to AutoMute feature. Fixed a lint nit, too.

TBR=mflodman@webrtc.org
BUG=2436

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4910 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-03 13:38:59 +00:00
turaj@webrtc.org
7ee3efb0d8 Disable Receiver unittests on Android.
BUG=
TBR=minyue@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4909 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-03 00:05:15 +00:00
turaj@webrtc.org
6ea3d1cc9e ACM test are modified to run with both ACM1 and ACM2.
Beside the changes in test files. acm2/acm_generic_codec.cc and acm2/audio_coding_module_impl.cc are modified to fix a bug.

Also, nack{.cc, .h, _unittest.cc} are removed form main/sourc as nack files in both ACM1 and ACM2 are essentially identical.

R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4908 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-02 21:44:33 +00:00
kjellander@webrtc.org
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
henrike@webrtc.org
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
pbos@webrtc.org
9b5c807272 Remove ReturnTrace from DeregisterCallback().
Should fix deadlock on build bots. Before, TraceImpl called
TraceDispatcher::Print, while TraceDispatcher::Deregister called
TraceImpl through VideoEngine::SetTraceCallback. This violates locking
order as both take their own locks.

BUG=2421
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4905 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-02 16:22:18 +00:00
henrik.lundin@webrtc.org
4887114af7 Remove templatization of the AudioVector test
This CL converts the unit tests for AudioVector from typed tests to
regular tests. It is in preparation for removing templatization for
AudioVector in an upcoming CL.

BUG=1363
R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4903 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-02 15:07:28 +00:00
kjellander@webrtc.org
c0b4c4a3c4 Workaround issue with stdin on Windows.
On Windows, sometimes the compare_videos.py script fails because
the inherited stdin handle from the parent process fails.
It seems we can work around this by passing null to stdin to
the subprocesses, since we're not using it anyway.

The errors looked like this:
Traceback (most recent call last):
  File "C:\b\build\slave\Win7_Tester\build\src\third_party/webrtc/tools/compare_videos.py", line 116, in <module>
    sys.exit(main())
  File "C:\b\build\slave\Win7_Tester\build\src\third_party/webrtc/tools/compare_videos.py", line 91, in main
    barcode_decoder = subprocess.Popen(cmd, stdout=sys.stdout, stderr=sys.stderr)
  File "C:\b\depot_tools\python_bin\lib\subprocess.py", line 588, in __init__
    errread, errwrite) = self._get_handles(stdin, stdout, stderr)
  File "C:\b\depot_tools\python_bin\lib\subprocess.py", line 686, in _get_handles
    p2cread = GetStdHandle(STD_INPUT_HANDLE)
WindowsError: [Error 6] The handle is invalid

Example from http://build.chromium.org/p/chromium.webrtc/builders/Win7%20Tester/builds/4498/steps/webrtc_manual_browser_tests_test/logs/stdio

BUG=302915
TEST=successful runs on Windows and Linux.
R=phoglund@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4902 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-02 15:04:45 +00:00
henrike@webrtc.org
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
pbos@webrtc.org
de74b64184 Implement TraceCallbacks in Call.
Uses a global TraceDispatcher in Call. Lazy initialization of it misses
an atomic compare and exchange to be correct. This is expected to work
fine so long as no Calls are created concurrently.

BUG=2421
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4900 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-02 13:36:09 +00:00
henrik.lundin@webrtc.org
7ea4f24ea5 Piping AutoMuter interface through to ViE API
This is a piece of the AutoMuter effort. A second CL will follow containing modifications to the new API, and tests.

BUG=2436
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4899 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-02 13:34:26 +00:00
asapersson@webrtc.org
8469f7b328 Added support for sending and receiving RTCP XR packets:
- Receiver reference time report block
- DLRR report block (RFC3611).

BUG=1613
R=mflodman@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4898 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-02 13:15:34 +00:00
pbos@webrtc.org
c0167702d3 Stop timer in ~EventWindows().
Running out of handles seems to have been an issue when adding another
test target, this should solve it.

BUG=
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4897 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-02 13:11:15 +00:00
turaj@webrtc.org
a6101d76f4 Update sampling rate and number of channels of NetEq4 if decoder is changed.
We encounter a sample-underrun if NetEq is initialized with a sampling rate fs =16000 and receive Opus packets with frame-size less than 5 ms. The reason is as follows.

Let say NetEq buffer has 4 packets of Opus each of size 2.5ms this means that internally timestamp of packets incremented by 80 (internally Opus treated as 32 kHz codec). Given the initial sampling rate of NetEq, at the first time that it wants to fetch packets, it targets to fetch 160 samples. Therefore, it will only extracts 2 packets. Decoding these packets give us exactly 160 samples (5 ms at 32 kHz), however, upon decoding the first packet the internal sampling rate will be updated to 32 kHz. So it is expected that sync buffer to deliver 320 samples while it does only have 160 samples (or maybe few more as it starts with some zeros). And we encounter and under-run.

Even if we ignore the under-run  "assert(sync_buffer_->FutureLength() >= expand_->overlap_length())" (neteq_impl.cc::811) is trigered. I'm not sure what happens if we remove this assert perhaps NetEq will work fine in subsequent calls. However the first under-run is blocking ACM2 test to pass.

Here I have a solution to update sample rate as soon as a packet is inserted, if required. It not a very efficient approach as we do the same reset in NetEqImpl::Decode().

It is a bit tricky to reproduce this because the TOT ACM tests do not run ACM2. In https://webrtc-codereview.appspot.com/2192005/ I have a patch to run both ACMs. To reproduce the problem, one can patch that CL and run

$ out/Debug/modules_tests --gtest_filter=AudioCodingModuleTest.TestOpus

Note that we would not encounter any problem if NetEq4 is initiated with 32000 Hz sampling rate. You can test this by setting |kNeteqInitSampleRateHz| to 32000 in webrtc/modules/audio_coding/main/acm2/acm_receiver.cc

BUG=
R=andrew@webrtc.org, henrik.lundin@webrtc.org, kjellander@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4896 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-01 22:01:09 +00:00
vikasmarwaha@webrtc.org
ee6d0ddbe6 Upload Demo page to allow edit offer & Answer sdp in pc1 demo.
R=dutton@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4895 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-01 18:43:07 +00:00
fischman@webrtc.org
1d731e498e Roll chromium_revision 224141:226099 to pick up jsoncpp fix for ARM
BUG=1777
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4893 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-01 17:29:42 +00:00
vikasmarwaha@webrtc.org
19134bae95 Updated device-switch demo page to work with Chrome M30.
BUG=2218
R=braveyao@webrtc.org, dutton@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4892 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-01 17:02:32 +00:00
pbos@webrtc.org
b74b96f487 Test multiple send/receive streams in Call.
Removes renderer in VideoReceiveStream as it wasn't properly
deregistered before. Makes sure that send/receive streams are properly
wired so that receive streams receive the expected stream.

BUG=2423
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4891 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-01 11:33:24 +00:00
pbos@webrtc.org
e546f02c84 Remove include_dirs from utility.
BUG=1662
TEST=compile on trybots
R=asapersson@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4890 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-01 09:29:09 +00:00
fischman@webrtc.org
7e4d0df8ee PeerConnection(Android): enable tracing to logcat.
BUG=1295
R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4888 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-01 02:40:43 +00:00
turaj@webrtc.org
522227012d Reset audio bufer if codec changes, b/10835525.
If there is audio in a codec's audio buffer and sample-rate or number of channels change the audio buffer has to reset. Otherwise, the amount of audio in the buffer is misinterpreted any syncronization between 10ms audio blocks and their associated timestamps is lost.

For instance, assume changing from stereo to mono when there is 10ms stereo in the buffer. The "new" codec will interpret this as 20 ms audio, therefore, 2 blocks of 10 ms, but there is only one timestamp. This will results in  ACMGenericCodec::in_timestamp_ix_write_ updated to a negative number after an encode is performed.

The drawback with this solution is that if packet-size of the codec is changed then audio buffer is reset wich is not necessary. We accept this as it is a rare case in practice that clients of ACM re-register send codecs to change packet-size.

R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4887 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-01 01:17:37 +00:00
andrew@webrtc.org
8e2f9bce71 Ensure adjusted "known delay" doesn't drop below zero.
The untrusted delay mode provides an option to reduce the "known delay"
parameter passed down to the core AEC. This is necessary to handle the
very low latencies observed with the Chromium audio backend on Mac.

Prior to this change, it was possible to pass a negative value. The AEC
produced good output in practice, but it turned out this tripped a
heretofore unnoticed assert in ProcessBlock().

This change avoids the assert, and maintains the good output across a
set of Mac recordings. Bit-exact in some cases, and in the remaining,
quickly converging to identical output.

The assert was hit on the last webrtc roll in Chromium in
content_browsertests on Mac.

Corresponds to:
https://chromereviews.googleplex.com/9960013

TBR=bjornv
TESTED=Verified locally that "content_browsertests
--gtest_filter=WebrtcBrowserTest.*"" passes.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4886 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-01 01:12:25 +00:00
henrik.lundin@webrtc.org
fd11bbfb56 NetEq4: Removing templatization for AudioMultiVector
This saves approx 6% runtime for neteq4_speed_test.
$ time out/Release/neteq4_speed_test --runtime_ms=50000000

BUG=1363
R=minyue@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4885 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-30 20:38:44 +00:00
turaj@webrtc.org
6ad6a07fd3 Support for CELT in NetEq4.
BUG=1359
R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4884 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-30 20:07:39 +00:00
mallinath@webrtc.org
7e809c323a Update libjingle to CL 53496343.
Review URL: https://webrtc-codereview.appspot.com/2323005

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4882 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-30 18:59:08 +00:00
pbos@webrtc.org
9532fa53ed Remove include_dirs from video_render.
BUG=1662
TEST=compile on trybots
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4881 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-30 15:32:44 +00:00
pbos@webrtc.org
1c974ef5e3 Remove include_dirs from video_capture.
BUG=1662
TEST=compile on trybots
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4880 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-30 15:32:10 +00:00
tina.legrand@webrtc.org
4cd76221dc Revert 4876 "Support for CELT in NetEq4."
> Support for CELT in NetEq4.
> 
> BUG=1359
> R=henrik.lundin@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/2291004

TBR=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4879 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-30 12:25:45 +00:00
henrik.lundin@webrtc.org
572699d3eb Propagate AutoMuter interface out to VideoCodingModule
BUG=2436
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4878 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-30 12:16:08 +00:00