5263b3c1dd
Add options for NetEq fast accelerate mode through libjingle
...
This CL connects RTCConfiguration::audioJitterBufferFastMode in
PeerConnection.java, through libjingle, down to
NetEq::Config::enable_fast_accelerate in native WebRTC.
When enabled, it will allow NetEq to do faster time-compression when
the buffer level is very high.
BUG=4691
R=henrika@webrtc.org , mflodman@webrtc.org , pthatcher@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/55479004
Cr-Commit-Position: refs/heads/master@{#9344}
2015-06-01 08:29:55 +00:00
64dad838e6
Reland r9159 "Adding a new constraint to set NetEq buffer capacity ..."
...
The original change was reverted due to a breakage in the chrome build.
This change includes a fix for this.
TBR=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/49329004
Cr-Commit-Position: refs/heads/master@{#9169}
2015-05-11 10:44:20 +00:00
1f629232d5
Revert r9164 "Adding a new constraint to set NetEq buffer capacity ..."
...
This reverts commit fd32f35aff8fc28ec084bddc274de284e0422a57.
TBR=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/55369004
Cr-Commit-Position: refs/heads/master@{#9165}
2015-05-10 09:06:20 +00:00
fd32f35aff
Reland r9159 "Adding a new constraint to set NetEq buffer capacity ..."
...
This reverts commit cdb47a4533b7b1e29e803ed6591a68bb1a4f1692.
Contains a tentative fix to the chrome build breakage caused by the
original change.
TBR=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/47139004
Cr-Commit-Position: refs/heads/master@{#9164}
2015-05-10 09:03:00 +00:00
cdb47a4533
Revert r9159 "Adding a new constraint to set NetEq buffer capacity ..."
...
This reverts commit 208a2294cde839025318f1b3d57559cb0611a4e7.
Breaks the Chrome build.
TBR=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/53399004
Cr-Commit-Position: refs/heads/master@{#9161}
2015-05-08 12:03:46 +00:00
208a2294cd
Adding a new constraint to set NetEq buffer capacity from peerconnection
...
This change makes it possible to set a custom value for the maximum
capacity of the packet buffer in NetEq (the audio jitter buffer). The
default value is 50 packets, but any value can be set with the new
functionality.
R=jmarusic@webrtc.org , mflodman@webrtc.org , pthatcher@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/50869004
Cr-Commit-Position: refs/heads/master@{#9159}
2015-05-08 10:58:51 +00:00
23fba1ffa0
Add AudioReceiveStream to Call API.
...
BUG=4574
R=kwiberg@webrtc.org , mflodman@webrtc.org , pbos@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/51749004
Cr-Commit-Position: refs/heads/master@{#9114}
2015-04-29 13:24:10 +00:00
143cec1cc6
Set correct encoder-specific settings for vpx in the new API.
...
Also, make VideoEncoderConfig::ContentType an enum class.
BUG=4569
R=mflodman@webrtc.org , pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/46069004
Cr-Commit-Position: refs/heads/master@{#9093}
2015-04-28 08:01:14 +00:00
e62202fedf
Support handling multiple RTX but only generate SDP with RTX associated with VP8.
...
This implementation registers RTX-APT map inside RTP sender and receiver.
While it only generates SDP with RTX associated with VP8 to make it
compatible with previous Chrome versions.
Should add following changes after reaches stable,
* Use RTX-APT map for building and restoring RTP packets.
* Add RTX support for RED or VP9 in Video engine.
* Set RTX payload type for RED inside FecConfig in EndToEndTest.
BUG=4024
R=mflodman@webrtc.org , pbos@webrtc.org , pthatcher@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/36889004
Cr-Commit-Position: refs/heads/master@{#9040}
2015-04-21 12:25:42 +00:00
fdd1057949
Add CVO support to Vie layer.
...
1. standard plumbing CVO through vie layer.
2. added a rtp_cvo.h which has both conversion functions from rtp header byte to/from VideoRotation.
WebRTCVideoEngine will later pass the rotation info in SendFrame() through VieVideoFrameI420.
BUG=4145
R=mflodman@webrtc.org , tommi@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/46429007
Cr-Commit-Position: refs/heads/master@{#8703}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8703 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-03-12 20:51:50 +00:00
ac2d27d9ae
Fix style violations in common_types.h and config.h
...
Mostly, it's about moving constructors and descructors to the .cc
files, so that they won't be inlined everywhere.
The reason this CL is so big is that a lot of code was using
common_types.h without declaring a dependency on webrtc_common, which
broke the build once common_types.h started to depend on
common_types.cc.
BUG=163
R=kjellander@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/26089004
Cr-Commit-Position: refs/heads/master@{#8516}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8516 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-26 14:01:28 +00:00
09c77b95bb
Add decoder-timing stats to VideoReceiveStream.
...
Also breaks out SsrcStats from VideoReceiveStream::Stats as they don't
have that much overlap.
R=mflodman@webrtc.org , stefan@webrtc.org
BUG=1667, 1788
Review URL: https://webrtc-codereview.appspot.com/40819004
Cr-Commit-Position: refs/heads/master@{#8501}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8501 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-25 10:42:45 +00:00
1d0fa5d352
Add RtcpPacketTypeCounter stats to new API.
...
R=mflodman@webrtc.org , stefan@webrtc.org
BUG=1667,1788
Review URL: https://webrtc-codereview.appspot.com/37489004
Cr-Commit-Position: refs/heads/master@{#8429}
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8429 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-02-19 12:47:45 +00:00
8f27fcce79
Revert 8028 "Support associated payload type when registering Rt..."
...
Reasons for revert:
1. glaznev discovered potentially related problems using the Android AppRTCDemo.
2. We're trying to do an M41 webrtc roll in Chromium, and this CL is risky.
> Support associated payload type when registering Rtx payload type.
>
> Major changes include,
> - Add associated payload type for SetRtxSendPayloadType & SetRtxReceivePayloadType.
> - Receiver: Restore RTP packets by the new RTX-APT map.
> - Sender: Send RTP packets by checking RTX-APT map.
> - Add RTX payload type for RED in the default codec list.
>
> BUG=4024
> R=pbos@webrtc.org , stefan@webrtc.org
> TBR=mflodman@webrtc.org
>
> Review URL: https://webrtc-codereview.appspot.com/26259004
>
> Patch from Changbin Shao <changbin.shao@intel.com >.
TBR=pbos@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/33829004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8033 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-09 20:22:46 +00:00
2a169640a3
Support associated payload type when registering Rtx payload type.
...
Major changes include,
- Add associated payload type for SetRtxSendPayloadType & SetRtxReceivePayloadType.
- Receiver: Restore RTP packets by the new RTX-APT map.
- Sender: Send RTP packets by checking RTX-APT map.
- Add RTX payload type for RED in the default codec list.
BUG=4024
R=pbos@webrtc.org , stefan@webrtc.org
TBR=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/26259004
Patch from Changbin Shao <changbin.shao@intel.com >.
git-svn-id: http://webrtc.googlecode.com/svn/trunk@8028 4adac7df-926f-26a2-2b94-8c16560cd09d
2015-01-09 15:16:10 +00:00
ce4e9a3562
Refactor some receive-side stats.
...
Removes polling of CName as well as receive codec statistics in favor of
internal callbacks keeping a statistics struct up to date.
R=mflodman@webrtc.org , stefan@webrtc.org
BUG=1667
Review URL: https://webrtc-codereview.appspot.com/28259005
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7950 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-18 13:50:16 +00:00
273a414b0e
Report encoded frame size in VideoSendStream.
...
Implements reporting transmitted frame size in WebRtcVideoEngine2.
R=mflodman@webrtc.org , stefan@webrtc.org
BUG=4033
Review URL: https://webrtc-codereview.appspot.com/33399004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7772 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-12-01 15:23:21 +00:00
d87213af49
Remove unused RtpStatistics struct.
...
This unused struct is basically a copy of RtcpStatistics in
webrtc/common_types.h. I expect this wasn't properly removed when that
one was added.
R=tommi@webrtc.org
BUG=
Review URL: https://webrtc-codereview.appspot.com/25239004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7758 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-11-27 13:48:35 +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
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
ad3b5a5c16
Move min transmit bitrate to VideoEncoderConfig.
...
min_transmit_bitrate_bps needs to be reconfigurable during a call (since
this is currently set only for screensharing through libjingle and can't
be set once and for all for the entire Call.
R=mflodman@webrtc.org , stefan@webrtc.org
BUG=1667
Review URL: https://webrtc-codereview.appspot.com/28779004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@7518 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-10-24 09:23:21 +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
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
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
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
1e92b0a93d
Add ToString() to VideoSendStream::Config.
...
Adds ToString() to subsequent parts as well as a common.gyp to define
ToString() methods for config.h. VideoStream is also moved to config.h.
BUG=3171
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/11329004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@6170 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-05-15 09:35:06 +00:00
09315705b9
Wire up statistics in video receive stream of new API
...
This CL includes Call tests that test both send and receive sides.
BUG=2235
R=mflodman@webrtc.org , pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/8049004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5499 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-02-07 12:06:29 +00:00
c279a5d72c
Wire up RTX in VideoReceiveStream.
...
Also adds a test to make sure that a retransmitted frame is actually
received and decoded on the remote side. The previous NACK test checked
retransmission, but not that the receiver actually takes care of the
retransmitted packet.
BUG=2399
R=mflodman@webrtc.org , stefan@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/7469004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5422 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-01-24 09:30:53 +00:00
e02d47515f
Set up receiver RTX config using a std::map.
...
This change removes video_payload_type from RtxConfig as it can be
inferred from the map key or config otherwise. Wiring up this config is
part of issue 2399.
BUG=
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/7349004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5402 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-01-20 14:43:55 +00:00
ccd42840bc
Wire up statistics in video send stream of new video engine api
...
Note, this CL does not contain any tests. Those are implemeted as call
tests and will be submitted when the receive stream is wired up as well.
BUG=2235
R=mflodman@webrtc.org , pbos@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/5559006
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5344 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-01-07 09:54:34 +00:00
ce90eff345
Rename RTP-extension constants.
...
BUG=
R=mflodman@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/3969004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5137 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-11-20 11:48:56 +00:00
16e03b7bd8
Separate Call API/build files from video_engine/.
...
BUG=2535
R=andrew@webrtc.org , mflodman@webrtc.org , niklas.enbom@webrtc.org
Review URL: https://webrtc-codereview.appspot.com/2659004
git-svn-id: http://webrtc.googlecode.com/svn/trunk@5042 4adac7df-926f-26a2-2b94-8c16560cd09d
2013-10-28 16:32:01 +00:00