378 Commits

Author SHA1 Message Date
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
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
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
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
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
niklas.enbom@webrtc.org
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
elham@webrtc.org
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
stefan@webrtc.org
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
stefan@webrtc.org
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
andrew@webrtc.org
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
asapersson@webrtc.org
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
elham@webrtc.org
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
stefan@webrtc.org
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
stefan@webrtc.org
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
pbos@webrtc.org
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
pbos@webrtc.org
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
andresp@webrtc.org
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
stefan@webrtc.org
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
stefan@webrtc.org
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
pbos@webrtc.org
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
pbos@webrtc.org
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
pbos@webrtc.org
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
pbos@webrtc.org
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
henrike@webrtc.org
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
pbos@webrtc.org
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
pbos@webrtc.org
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
elham@webrtc.org
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
pbos@webrtc.org
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
pbos@webrtc.org
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
pbos@webrtc.org
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
fischman@webrtc.org
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
stefan@webrtc.org
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
stefan@webrtc.org
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
mikhal@webrtc.org
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
andrew@webrtc.org
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
pbos@webrtc.org
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
pbos@webrtc.org
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
mflodman@webrtc.org
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
mflodman@webrtc.org
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
pbos@webrtc.org
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
mflodman@webrtc.org
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
mflodman@webrtc.org
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
mflodman@webrtc.org
d51bcffc1e Function name change.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4655 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-02 12:45:09 +00:00
mflodman@webrtc.org
dfbf52baac Fixing capture frame race in ViECapturer.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@4654 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-09-02 12:44:57 +00:00
pbos@webrtc.org
a957570d62 Overuse detection based on capture-input jitter.
This is believed to be more reliable in real-world cases. The camera seems to fall behind sooner than the encoder starts taking too long time encoding, so this is believed to be an earlier trigger.

BUG=2325
R=asapersson@webrtc.org, mflodman@webrtc.org

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

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

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

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

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4627 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-27 12:10:09 +00:00
elham@webrtc.org
814e28413d Revert r4562
R=mallinath@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4623 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-26 23:21:03 +00:00
elham@webrtc.org
6dc45a67ee Updated WebRTC version to 3.40
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4616 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-26 17:30:54 +00:00
mikhal@webrtc.org
b2c28c3699 Relanding 4597 - Don't force key frame when decoding with errors.
Makes sure that incomplete key frame or delta frames will be released from the JB when decoding with errors.
The decoder in turn will trigger a PLI until a complete key frame is received in order to start a session.

TBR=stefan@webrtc.org

BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@4607 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-08-23 21:54:50 +00:00