Commit Graph

485 Commits

Author SHA1 Message Date
901ae77618 Android: Fixes WebRTCDemo build (missing Java code).
TBR=ajm@webrtc.org

BUG=N/A

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4961 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-14 21:46:53 +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
11e9cbc399 Updated WebRTC version to 3.44
TBR=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4937 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-07 16:18:35 +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
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
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
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
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
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
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
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
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
2e246b4e78 Remove test parameters from CallTest.
Since the test parameters weren't used, it made no sense to have a
parameterized test.

BUG=
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4862 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-27 10:54:10 +00:00
3e7703640f Remove unused constants, so chrome can enable a warning for that. Patch from thakis@
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4844 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-25 22:05:05 +00:00
cecaae2e4c Updated WebRTC version to 3.43
TBR=mallinath@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4842 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-25 21:45:23 +00:00
b0e6eb50b5 Revert r4823 "Reenable test and remove flaky expects."
TBR=mflodman@webrtc.org

BUG=2415

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4824 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-24 10:38:57 +00:00
01aad09a01 Reenable test and remove flaky expects.
BUG=2415
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4823 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-24 10:16:52 +00:00
6ffc74ee0e Disable flaky RunsRtpRtcpTestWithoutErrors.
TBR=mflodman
BUG=2415

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4821 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-23 23:25:39 +00:00
e2af622edf - Reset capture deltas at resolution change.
- Applied smoothing of capture jitter.
- Adjusted thresholds.

R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4817 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-23 20:05:39 +00:00
038e8e64ef Updated WebRTC version to 3.42
R=mallinath@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4811 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-23 16:45:25 +00:00
cdd3d4d139 Revert test change in r4808.
This was supposed to be an EXPECT_GT, I just misunderstood it in the previous CL. Added a sleep after the EXPECT_GT and before bytes_received_after = bytes_received_before.

BUG=1790
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4809 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-23 09:43:07 +00:00
269dd4264f Reduce flakiness in network down test.
The encoder is in the process of encoding when the network goes down, so we need to wait until it has finished before we expect no more packets to be sent.

Also fixed a test which was testing the wrong thing.

R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4808 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-23 08:42:39 +00:00
0e63e76781 Enable FEC for VideoSendStream.
Test only checks for FEC without NACK. Test for FEC with NACK postponed
until later.

BUG=2230
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4802 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-20 11:56:26 +00:00
6917e19ad4 Rename EngineTest to CallTest.
There's no real notion of VideoEngine left in these classes. They're
end-to-end tests built on Call, so CallTest makes more sense.

This also contains a modification to RtpRtcpObserver moving the
responsibility of creating the event that signals when the observation
is complete to RtpRtcpObserver. New tests are about to be introduced and
this will reduce code duplication.

BUG=
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4793 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-19 14:22:12 +00:00
ab6549562b Refactor frame generation code so it can be used by multiple modules.
R=pbos@webrtc.org, stefan@webrtc.org, pbos, stefan
BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4791 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-19 12:14:03 +00:00
7a30dfdc69 Disable NACK bandwidth statistics test due to being too flaky.
Tests for new API currently provide partial coverage, and will soon
provide full coverage.

TBR=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4789 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-19 12:08:55 +00:00
b5a191bfe7 Fixes a flake in network down tests.
And reduces the flakiness in NACK tests.

TESTS=trybots
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4788 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-19 11:14:35 +00:00
e75a1bf45f Break out glue for old->new Transport.
Reduces multiple inheritance and code duplication.

BUG=
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4774 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-18 11:52:42 +00:00
5860de02aa Implement NACK over RTX for VideoSendStream.
BUG=2231
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4751 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-16 13:01:47 +00:00
5c678eabd9 Implement 'abs-send-time' extension in VideoSendStream.
BUG=2229
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4727 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-11 19:00:39 +00:00
2902328cce Implement 'toffset' extension in VideoSendStream.
BUG=2229
R=holmer@google.com, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4722 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-11 10:14:56 +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
df531a2eee Test that VideoSendStream responds to NACK.
BUG=2228
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4715 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-10 14:56:33 +00:00
744fbc7fe4 Split up EngineTests and RampupTests.
This allows having one group of tests per file, the test files are
long enough as they are.

BUG=
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4712 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-10 09:26:25 +00:00
a19c9f4173 Updated WebRTC version to 3.41
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4709 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-09 17:23:44 +00:00
7ebf0e7f44 Remove include_dirs from video_engine_core.gypi.
BUG=1662
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4707 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-09 16:56:31 +00:00
841c8a44bb Rename VideoCall to Call.
Call should encompass more than video, there's no point in calling it
VideoCall.

BUG=
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4704 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-09 15:04:25 +00:00
0181b5f8dd ExternalVideoDecoder for new VideoEngine API.
Implements the ExternalVideoDecoder interface for VideoReceiveStream.
Also adds a FakeDecoder used in tests, removing the overhead of running
the EngineTest tests with VP8 under Memcheck/TSan, allowing us to enable
them under Memcheck/TSan as well.

BUG=2346,2312
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4702 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-09 08:26:30 +00:00
c7f708679d Clamp camera id to legal values.
R=henrike@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4694 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-06 18:17:45 +00:00
b2c8a952a7 Improving padding rules and breaking out bw allocation to ViEEncoder.
BUG=1837
TESTS=vie_auto_test --automated, trybots
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4693 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-06 13:58:01 +00:00
7bb8f02274 Adds support for combining RTX and FEC/RED.
This is accomplished by breaking out RTX and FEC/RED functionality from the RTP module and keeping track of the base payload type, that is the payload type received when not receiving RTX.

Enables retransmissions over RTX by default in the loopback test.

BUG=1811
TESTS=voe/vie_auto_test --automated and trybots.
R=mflodman@webrtc.org, pbos@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4692 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-06 13:40:11 +00:00
f1e807c0e5 Removing FrameForStorage
R=pwestin@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4688 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-05 22:34:41 +00:00
9080518a39 Restore severity precondition to logging.h.
I mistakenly ommitted the checks when logging.h was ported from
libjingle to webrtc. This caused a significant CPU cost for logs which
were later filtered out anyway.

Verified with LS_VERBOSE logging in neteq4, running:
$ out/Release/modules_unittests \
--gtest_filter=NetEqDecodingTest.TestBitExactness \
--gtest_repeat=50 > time.txt
$ grep "case ran" time.txt | grep "[0-9]* ms" -o | sort

Results on a MacBook Retina, averaged over 5 runs:
Verbose logs disabled:                          666 ms
Exisiting implementation, verbose logs enabled: 944 ms (1.42x)
New implementation, verbose logs enabled:       673 ms (1.01x)

BUG=2314
R=henrik.lundin@webrtc.org, henrike@webrtc.org, kjellander@webrtc.org, turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4682 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-05 16:40:43 +00:00
95e51f509c Remove send and receive streams when destroyed.
Fixes crash where packets were sent to a receive stream that had been
destroyed but not removed from the ssrc mapping from call to receiver.
Added a repro case that reliably crashed before the fix.

BUG=
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4681 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-05 12:38:54 +00:00
7e1bf318bf Allow unknown flags in test_main.cc.
Adds AllowCommandLineParsing to allow us to ignore "--no-sandbox" given
by new TSanV2 bots. Not ignoring this flag prevents the test from
running on this machine. Also removing unnecessary asserts that clutter
code.

BUG=
TEST=Locally running video_engine_tests with --no-sandbox.
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4679 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-05 10:27:46 +00:00
e2d4da6586 Enable EngineTest.ReceivesPliAndRecoversWithNack and fix memcheck suppression filter.
BUG=2346
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4677 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-04 14:21:57 +00:00
06f1f74331 Disable EngineTest.ReceivesPliAndRecoversWithNack.
The test times out on Linux memcheck bot at times.

BUG=2348

TBR=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4674 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-04 11:00:07 +00:00
cb5118c14c Add FakeEncoder to VideoSendStream tests.
Breaks out config part of FakeEncoder from VideoSendStream tests to
FakeEncoder. Also sets FakeEncoder as encoder for VideoSendStream tests.
Anticipated speedup didn't happen as VP8 is still initialized by default
when creating channels in the old API. This will be sped up when moving
off the old API as VP8 won't be enabled by default.

BUG=2312
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4659 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-03 09:10:37 +00:00
8d32066073 Changed method name.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4657 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-02 12:45:30 +00:00
814d5e9133 Renamed method.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4656 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-02 12:45:18 +00:00