222 Commits

Author SHA1 Message Date
marpan@webrtc.org
573c78e31c Add VP9 codec to VCM and vie_auto_test.
Include VP9 tests in videoprocessor_integrationtests.
Include end-to-end send/receiveVP9 test.
Passes trybots.

R=kjellander@webrtc.org, mflodman@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7422 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-10 16:44:47 +00:00
pbos@webrtc.org
bbe0a8517d Config struct for VideoEncoder.
Used for config parameters in common between multiple codecs as well as
the encoder-specific pointer. In particular this contains content mode
(realtime video vs. screenshare).

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7239 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-19 12:30:25 +00:00
andresp@webrtc.org
02686115cc Re-enable missing android tests disabled due to issue 3770.
BUG=3770
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7238 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-19 08:24:19 +00:00
andresp@webrtc.org
ab071daab8 Split video_render_module implementation into default and internal implementation.
Targets must now link with implementation of their choice instead of at "gyp"-time.

Targets linking with libjingle_media:
- internal implementation when build_with_chromium=0, default otherwise.

Targets linking with default render implementation:
- video_engine_tests
- video_loopback
- video_replay
- anything dependent on webrtc_test_common

Targets linking with internal render implementation:
- vie_auto_test
- video_render_tests
- libwebrtcdemo-jni
- video_engine_core_unittests

GN changes:
- Not many since there is almost no test definitions.

Work-around for chromium:
- Until chromium has updated libpeerconnection to link with video_capture_impl and video_render_impl, webrtc target automatically depends on it. This should fix the FYI bots and not require a webrtc roll to fix.

Re-enable android tests by reverting 7026 (some tests left disabled).

TESTED: passes all the bots. If this inadvertently breaks a target please fix the linking rules so the target has the desired implementation linked in.
BUG=3770
R=kjellander@webrtc.org, pbos@webrtc.org
TBR=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7217 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-18 08:58:15 +00:00
pbos@webrtc.org
ab990ae43a Revert 7151 "Revert 7114 "Expose VideoEncoders with webrtc/video_encoder.h.""
Re-lands r7114 after landing r7204 to adress the compile error causing
the rollback in r7151.

BUG=3070
TBR=henrikg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7207 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-17 09:02:25 +00:00
henrikg@webrtc.org
307d3dbdee Revert 7114 "Expose VideoEncoders with webrtc/video_encoder.h."
Speculative revert, seems to be reason for flaky Win FYI bot compile break.

> Expose VideoEncoders with webrtc/video_encoder.h.
> 
> Exposes VideoEncoders as part of the public API and provides a factory
> method for creating them.
> 
> BUG=3070
> R=mflodman@webrtc.org, stefan@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/21929004

TBR=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7151 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-11 09:48:30 +00:00
pbos@webrtc.org
b420191743 Expose VideoEncoders with webrtc/video_encoder.h.
Exposes VideoEncoders as part of the public API and provides a factory
method for creating them.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7114 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-09 10:40:56 +00:00
stefan@webrtc.org
01581da711 Fix audio/video sync when FEC is enabled.
Also improves the tests by adding a test case for FEC, and running the a/v sync
tests with NACK and simulated packet loss.

BUG=crbug/374104
R=mflodman@webrtc.org, pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7053 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-04 06:48:14 +00:00
pbos@webrtc.org
26c0c41a06 Network up/down signaling in Call.
BUG=2429
R=mflodman@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7044 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-03 16:17:12 +00:00
kjellander@webrtc.org
6f729e8a74 Disable video_engine_tests and webrtc_perf_tests on Android.
BUG=3770
TESTED=Running the tests locally on an Android device.
R=phoglund@webrtc.org
TBR=henrik.lundin@webrtc.org, pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@7026 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-02 15:13:55 +00:00
aluebs@webrtc.org
b623c5c251 Disable EndToEndTest.RestartingSendStreamPreservesRtpState in video_engine_tests because it is flaky
BUG=webrtc:3745
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6981 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-26 14:22:51 +00:00
stefan@webrtc.org
79c3359e67 Add end-to-end H.264 packetization test.
Also correctly wires up H.264 packetization in the new Call api.

R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6835 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-06 09:24:53 +00:00
pbos@webrtc.org
dde16f19e3 Fix some code styles.
BUG=
R=pbos@webrtc.org

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6830 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-05 23:35:43 +00:00
mflodman@webrtc.org
f9460688a6 Make sure padding is sent on the first sending RTP module.
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6774 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-24 16:41:25 +00:00
stefan@webrtc.org
168f23faa5 Move pacer to fully use webrtc::Clock instead of webrtc::TickTime.
This required rewriting the send-side delay stats api to be callback based, as otherwise the SuspendBelowMinBitrate test started flaking much more frequently since it had lock order inversion problems.

R=pbos@webrtc.org, tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6664 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11 13:44:02 +00:00
stefan@webrtc.org
4ef438e2de Remove the send-side cname getter APIs from voice and video engine.
These APIs aren't being used, and introduces deadlocks when using GetStats() in the new Call api. Having getters for cname at the send-side is pointless, as it's always the user who sets the cname.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6659 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11 09:55:30 +00:00
pbos@webrtc.org
62bafae661 Some refactoring inside rtp_rtcp/.
Renaming ModuleRTPUtility -> RtpUtility.
Renaming RTPHeaderParser -> RtpHeaderParser.
Making RtpHeaderParser accept size_t instead of int for packet length.
Making RtpUtility::RtpHeaderParser accept size_t for packet length.

BUG=
R=stefan@webrtc.org, tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6623 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-08 12:10:51 +00:00
pbos@webrtc.org
2bb1bdab8d Preserve RTP states for restarted VideoSendStreams.
A restarted VideoSendStream would previously be completely reset,
causing gaps in sequence numbers and potentially RTP timestamps as well.
This broke SRTP which requires fairly sequential sequence numbers.
Presumably, were this sent without SRTP, we'd still have problems on the
receiving end as the corresponding receiver is unaware of this reset.

Also adding annotation to RTPSender and addressing some unlocked
access to ssrc_, ssrc_rtx_ and rtx_.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6612 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-07 13:06:48 +00:00
pbos@webrtc.org
bd249bc711 Remove GetDefaultConfigs() from Call.
Defaults for configs are instead placed in the Config constructors.

BUG=
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6608 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-07 04:45:15 +00:00
pbos@webrtc.org
20c1f56992 Configure RTX send status on new modules.
Fixes bug where newly-allocated modules wouldn't send payload-based
padding (or probably not send over RTX at all).

As the newly-added test exposed lock-inversions shown on tsan in
VideoReceiver, VideoReceiver was thread-annotated and locks taken less.
BUG=chromium:391085
R=mflodman@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6601 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-04 10:58:12 +00:00
pbos@webrtc.org
be9d2a4549 Reserve RTP/RTCP modules in SetSSRC.
Allows setting SSRCs for future simulcast layers even though no set send
codec uses them.

Also re-enabling CanSwitchToUseAllSsrcs as an end-to-end test, required
for bitrate ramp-up, instead of send-side only (resolving issue 3078).
This test was used to verify reserved modules' SSRCs are preserved
correctly.

To enable a multiple-stream end-to-end test test::CallTest was modified
to work on a vector of receive streams instead of just one.

BUG=3078
R=kjellander@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6565 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-30 13:19:09 +00:00
pbos@webrtc.org
994d0b7229 Refactor Call-based tests.
Greatly reduces duplication of constants and setup code for tests based
on the new webrtc::Call APIs. It also makes it significantly easier to
convert sender-only to end-to-end tests as they share more code.

BUG=3035
R=kjellander@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@6551 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-27 08:47:52 +00:00