d819803d45
Wire up DSCP support in WebRtcVideoEngine2.
...
R=stefan@webrtc.org
BUG=1788
Review URL: https://webrtc-codereview.appspot.com/24249004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7669 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-10 14:41:43 +00:00
0bae1fab4a
Wire up bandwidth stats to the new API and webrtcvideoengine2.
...
Adds stats to verify bandwidth and pacer stats.
BUG=1788
R=mflodman@webrtc.org , pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/24969004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7634 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-05 14:05:29 +00:00
88ef632286
Falling back on single-stream on multiple SSRC.
...
Instead of failing, use one stream. Also clamp video min bitrate.
R=stefan@webrtc.org
BUG=1788
Review URL: https://webrtc-codereview.appspot.com/31949004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7615 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-04 15:29:29 +00:00
96a93259b3
Implement external decoder support in WebRtcVideoEngine2.
...
R=stefan@webrtc.org
BUG=1788
Review URL: https://webrtc-codereview.appspot.com/30839004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7594 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-03 14:46:44 +00:00
b7ed7799e7
Implement conference-mode temporal-layer screencast.
...
Renames VideoStream::temporal_layers to temporal_layer_thresholds_bps to
convey that it contains thresholds needed to ramp up between them (1
threshold -> 2 temporal layers, etc.).
R=mflodman@webrtc.org , stefan@webrtc.org
BUG=1788,1667
Review URL: https://webrtc-codereview.appspot.com/23269004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7578 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-31 13:08:10 +00:00
3bf3d238c8
Configure A/V sync in WebRtcVideoEngine2.
...
Sets up A/V sync for the first video receive channel with the default
voice channel. This is only done when conference mode is disabled to
preserve existing behavior. Ideally we'd know which voice channel to
sync with here.
R=mflodman@webrtc.org , stefan@webrtc.org
BUG=1788
Review URL: https://webrtc-codereview.appspot.com/23249004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7577 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-31 12:59:34 +00:00
776e6f289c
Use external VideoDecoders in VideoReceiveStream.
...
Removes direct VideoCodec use from the new API, exposes VideoDecoders
through webrtc/video_decoder.h similar to VideoEncoders.
Also includes some preparation for wiring up external decoders in
WebRtcVideoEngine2 by adding AllocatedDecoders that specify whether they
were allocated internally or externally.
Additionally addresses a data race in VideoReceiver that was exposed with this change.
R=mflodman@webrtc.org , stefan@webrtc.org
TBR=pthatcher@webrtc.org
BUG=2854,1667
Review URL: https://webrtc-codereview.appspot.com/27829004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7560 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-29 15:28:39 +00:00
efc82c2c73
Implement screencast settings for WebRtcVideoEngine2.
...
Adds support for screencast_min_bitrate and sets content type
corresponding to the capture type.
R=stefan@webrtc.org
BUG=1788
Review URL: https://webrtc-codereview.appspot.com/29959004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7529 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-27 13:58:00 +00:00
eacc6e4657
Remove some disabled tests in WebRtcVideoEngine2.
...
Removes some tests that shouldn't have to be implemented or have already
been through other tests.
R=stefan@webrtc.org
BUG=1788
Review URL: https://webrtc-codereview.appspot.com/25929004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7495 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-22 15:36:54 +00:00
fa553ef605
Set up start bitrate in WebRtcVideoEngine2.
...
R=stefan@webrtc.org
BUG=1788
Review URL: https://webrtc-codereview.appspot.com/27789004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7476 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-20 11:07:07 +00:00
1ecbe45c7e
(Auto)update libjingle 77689511-> 77696841
...
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7449 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-14 20:29:28 +00:00
7fe1e03dd6
Wire up external encoders.
...
R=pthatcher@webrtc.org
BUG=1788
Review URL: https://webrtc-codereview.appspot.com/30649005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7440 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-14 04:25:33 +00:00
42684be21b
Wire up CPU adaptation in WebRtcVideoEngine2.
...
Includes clean-up work to be able to use the webrtc::Call::Config that's
set up. This introduced a CallFactory to spawn a FakeCall with the
config used and allowed removal of FakeWebRtcVideoChannel2.
BUG=1788
R=mflodman@webrtc.org , pthatcher@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/24779004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7370 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-03 11:25:45 +00:00
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
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
c4175b9fdf
Set resolution based on incoming VideoFrames.
...
R=pthatcher@webrtc.org
BUG=1788
Review URL: https://webrtc-codereview.appspot.com/17269004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7042 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-09-03 15:25:49 +00:00
b648b9d85c
Remove test constructor in WebRtcVideoEngine2.
...
Removes the need for ::Construct().
BUG=1788
R=pthatcher@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/15279004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6977 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-26 11:08:06 +00:00
a09a99950e
(Auto)update libjingle 73222930-> 73226398
...
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6891 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-13 17:26:08 +00:00
c3d2bd28a3
Fix GetStats() crash.
...
GetStats() can be called before codecs are set and the underlying
webrtc::VideoSendStream is created, leading to a null-pointer
dereference.
BUG=1788
R=pthatcher@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/14099004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6876 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-08-12 20:55:10 +00:00
d4e598d57a
(Auto)update libjingle 72097588-> 72159069
...
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6799 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-29 17:36:52 +00:00
8aed945842
Remove a disabled test.
...
ConstrainsSetCodecsAccordingToEncoderConfig has been removed from
webrtcvideoengine_unittest.cc, removing this one as well.
BUG=1788
R=wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/21949004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6789 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-26 10:16:49 +00:00
257e130a16
Set NACK/REMB when setting receive codecs.
...
Enabling an additional test to ensure that REMB can be both enabled and
disabled by setting VideoCodecs.
BUG=1788
R=wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/15049004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6785 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-25 19:01:32 +00:00
9359cb3e75
Enable SendAndReceive tests.
...
Also fixes a crash in ::SetCapturer which wasn't exposed by tests
before.
BUG=1788
R=wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/18019005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6765 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-23 15:44:48 +00:00
5ff71ab4b3
Revert "(Auto)update libjingle 71675033-> 71726409"
...
This reverts commit r6761 which looks like an accidental auto-revert of
r6760.
BUG=1788
TBR=wu@webrtc.org , henrike@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/18009004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6763 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-23 07:28:56 +00:00
f67f6aa741
(Auto)update libjingle 71675033-> 71726409
...
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6761 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-23 07:04:22 +00:00
8120353342
Implement suspend-below-min-bitrate option.
...
BUG=1788
R=wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/17989004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6760 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-23 07:04:08 +00:00
543e589205
Wire up VideoOptions for payload-based padding.
...
BUG=1788
R=wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/18879004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6759 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-23 07:01:31 +00:00
6f48f1bf68
Implement encoder options in WebRtcVideoEngine2.
...
Implementing default options to enable denoising by default and wiring
up encoder settings to propagate VP8 settings.
BUG=1788
R=wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/19999004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6757 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-22 16:29:54 +00:00
85f42949d6
Enable ReceiveStreamReceivingByDefault test.
...
BUG=1788
R=wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/20019004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6754 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-22 09:14:58 +00:00
3c10758b3b
Check before send/receive rtp header extensions.
...
BUG=1788
R=pbos@webrtc.org , tommi@webrtc.org , wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/13949004
Patch from Changbin Shao <changbin.shao@intel.com >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6744 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-20 15:27:35 +00:00
8fdeee6abf
Implement Base::ConstrainNewCodec2.
...
BUG=1788
R=wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/15009004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6743 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-20 14:40:23 +00:00
e6f84ae8a6
Initial WebRtcVideoEngine2::GetStats().
...
Also forward-declaring and moving WebRtcVideoRenderer out of header.
BUG=1788
R=pthatcher@webrtc.org , wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/13869004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6729 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-18 11:11:55 +00:00
d1ea06b3d5
Restart VideoReceiveStreams in WebRtcVideoEngine2.
...
Puts VideoReceiveStreams in a wrapper, WebRtcVideoReceiveStream that
contain their state (configs). WebRtcVideoRenderer (the wrapper between
webrtc::VideoRenderer and cricket::VideoRenderer) has also been merged
into WebRtcVideoReceiveStream.
Implements and tests setting codecs with new FEC settings as well as RTP
header extensions on already existing receive streams.
BUG=1788
R=pthatcher@webrtc.org , wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/14879004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6727 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-18 09:35:58 +00:00
5301b0f1fc
Move additional state into WebRtcVideoSendStream.
...
Prevents having two places where codecs etc. are set up and allows us to
avoid creating the underlying VideoSendStream before send codecs are
set up.
BUG=1788
R=pthatcher@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/20939004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6716 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-17 08:51:46 +00:00
38ce7d03d8
Implement unittest for SetSendCodecsChangesExistingStreams.
...
BUG=1788
R=pbos@webrtc.org , wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/19869004
Patch from Changbin Shao <changbin.shao@intel.com >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6699 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-16 08:01:38 +00:00
cb859ecd3b
Replace strcpy with talk_base::strcpyn.
...
Cpplint reports error 'Almost always, snprintf is better than strcpy'
when checking code styles. The function talk_base::strcpyn() is a better
option than strcpy().
BUG=1788
R=pbos@webrtc.org , wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/12919004
Patch from Changbin Shao <changbin.shao@intel.com >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6686 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-15 08:28:20 +00:00
ccbed3b3c4
Implement unittest SetRecvCodecsAcceptDefaultCodecs.
...
BUG=1788
R=pbos@webrtc.org , wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/14869004
Patch from Changbin Shao <changbin.shao@intel.com >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6663 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-07-11 13:02:54 +00:00
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
269605ce45
Implement SetSendCodecs() unit tests for WebRtcVideoChannel2.
...
BUG=
R=pbos@webrtc.org , wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/12829004
Patch from Changbin Shao <changbin.shao@intel.com >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6543 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-26 08:49:03 +00:00
587ef60056
Implement RTP extension support in WebRtcVideoEngine2.
...
BUG=1788
R=pthatcher@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/20679004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6453 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-16 17:32:02 +00:00
f99c2f2dbc
Add NACK feedback parameter to WebRtcVideoEngine2.
...
Also fixing enabling/disabling of NACK. Previous implementation was made
under the assumption that NACK should always be enabled which caused
both missing NACK settings in SDP as well as broken interop between old
and new WebRtcVideoEngines.
BUG=1788
R=pthatcher@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/16689004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6431 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-13 12:27:38 +00:00
e322a175f6
Implement RTX tests+fixes in WebRtcVideoEngine2.
...
BUG=1788
R=pthatcher@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/15759004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6430 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-13 11:47:28 +00:00
9fbb717aca
Remove engine_codecs_ cache from unittests.
...
Used interchangably with engine_.codecs() becomes confusing and it's not
really used that much.
BUG=1788
R=pthatcher@google.com , pthatcher@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/17689005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6429 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-13 09:34:13 +00:00
86f613d6b8
Move WebRtcVideoEngine2 fakes to unittest header.
...
BUG=1788
R=wu@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/18509004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6382 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-10 08:53:05 +00:00
6ae48c6609
Make VideoSendStream/VideoReceiveStream configs const.
...
Benefits of this is that the send config previously had unclear locking
requirements, a lock was used to lock parts parts of it while
reconfiguring the VideoEncoder. Primary work was splitting out video
streams from config as well as encoder_settings as these change on
ReconfigureVideoEncoder. Now threading requirements for both member
configs are clear (as they are read-only), and encoder_settings doesn't
stay in the config as a stale pointer.
CreateVideoSendStream now takes video streams separately as well as the
encoder_settings pointer, analogous to ReconfigureVideoEncoder.
This change required changing so that pacing is silently enabled when
using suspend_below_min_bitrate rather than silently setting it.
R=henrik.lundin@webrtc.org , mflodman@webrtc.org , pthatcher@webrtc.org , stefan@webrtc.org
BUG=3260
Review URL: https://webrtc-codereview.appspot.com/20409004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6349 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-06 10:49:19 +00:00
0d523eea83
Remove static initializer from WebRtcVideoEngine2.
...
BUG=
R=pliard@google.com , pthatcher@webrtc.org , pliard@chromium.org
Review URL: https://webrtc-codereview.appspot.com/15679005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6338 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-06-05 09:10:55 +00:00
540a2251aa
(Auto)update libjingle 68230011-> 68230113
...
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6281 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-30 07:40:35 +00:00
35efb839ed
Implement new-API test RecvStreamWithoutRtx.
...
R=pthatcher@google.com , pthatcher@webrtc.org
BUG=1788
Review URL: https://webrtc-codereview.appspot.com/20449005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6280 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-30 07:40:04 +00:00
198647473b
Implement and fix new-API NackIsEnabled test.
...
Required enabling NACK on receiver side which was apparently missed.
BUG=1788
R=pthatcher@google.com , pthatcher@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/16499007
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6278 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-30 07:35:47 +00:00
b5a22b1464
Revert r6110 and r6109.
...
Effectively re-landing r6104 as well as r6108 which includes a fix to a
compile error that caused r6104 to be reverted in r6110.
BUG=
TBR=henrike@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/20459004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6119 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-13 11:07:01 +00:00