8673 Commits

Author SHA1 Message Date
andresp@webrtc.org
44caf01c34 Re-submit: rev5775
Modify bitrate controller to update bitrate based on process call and not
only whenever a RTCP receiver block is received.

Additionally:
 Add condition to only start rampup after a receiver block is received. This was same as old behaviour but now an explicit check is needed to verify process does not ramps up before the first block.

 Fix logic around capping max bitrate increase at 8% per second. Before it was only increasing once every 1 second and each increase would be as high as 8%. If receiver blocks had a different interval before it would lose an update or waste an update slot and not ramp up as much as a 8% (e.g. if RTCP received < 1 second).

 Did not touch decrease logic, however since it can be triggered more often it
 may decrease much faster and closer to the original written cap of once every
 300ms + rtt.

Note:
 rampup_tests.cc don't seem to be affected by this since there is no packet loss or REMB that go higher than expected cap.
 bitrate_controller_unittests.cc are don't really simulate a clock and the process thread, but trigger update by inserting an rtcp block.

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5794 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-26 21:00:21 +00:00
jiayl@webrtc.org
7ee0c16edd Makes ScreenCapturerMac exclude the window specified in DesktopCapturer::SetExcludedWindow.
No behavior change for now since Chromium has not been updated to call SetExcludedWindow.

BUG=2789
R=sergeyu@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5792 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-26 15:57:43 +00:00
solenberg@webrtc.org
4e65602886 Add API to allow deducting bitrate from incoming estimates before the capacity is distributed among outgoing video streams. For example, this can be used to reserve space for audio streams.
BUG=
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5791 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-26 14:32:47 +00:00
andresp@webrtc.org
d09d074827 Protect write of send_target_bitrate.
This issue was catch by tsan bot.

BUG=3065
R=stefan@webrtc.org, andrew

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5790 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-26 14:27:34 +00:00
solenberg@webrtc.org
440fa23553 Make RTPHeaderParser skip over unknown RTP header extensions rather than bail out.
BUG=2954
R=mflodman@webrtc.org, stefan@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5786 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-25 19:57:07 +00:00
andrew@webrtc.org
6cd201cf31 Revert 5775 "Modify bitrate controller to update bitrate based o..."
This triggered an occasional TSAN failure in
CallTest.ReceivesPliAndRecoversWithNack e.g.:
http://build.chromium.org/p/client.webrtc/builders/Linux%20Tsan/builds/1444/steps/memory%20test%3A%20video_engine_tests/logs/stdio

I managed to reproduce this locally and verified that reverting this CL
corrected it.

> Modify bitrate controller to update bitrate based on process call and not
> only whenever a RTCP receiver block is received.
> 
> Additionally:
>  Add condition to only start rampup after a receiver block is received. This was same as old behaviour but now an explicit check is needed to verify process does not ramps up before the first block.
> 
>  Fix logic around capping max bitrate increase at 8% per second. Before it was only increasing once every 1 second and each increase would be as high as 8%. If receiver blocks had a different interval before it would lose an update or waste an update slot and not ramp up as much as a 8% (e.g. if RTCP received < 1 second).
> 
>  Did not touch decrease logic, however since it can be triggered more often it
>  may decrease much faster and closer to the original written cap of once every
>  300ms + rtt.
> 
> Note:
>  rampup_tests.cc don't seem to be affected by this since there is no packet loss or REMB that go higher than expected cap.
>  bitrate_controller_unittests.cc are don't really simulate a clock and the process thread, but trigger update by inserting an rtcp block.
> 
> BUG=3065
> R=stefan@webrtc.org, mflodman@webrtc.org
> 
> Review URL: https://webrtc-codereview.appspot.com/10529004

TBR=andresp@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5785 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-25 19:42:39 +00:00
mallinath@webrtc.org
681d448d88 Removing VideoCodecDerived and moving methods inside VideoCodec.
VideoCodecDerived added to handle changes to talk (fakewebrtcvideoengine.h).

R=mflodman@webrtc.org
TBR=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5784 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-25 18:44:58 +00:00
elham@webrtc.org
39f8ddae70 Updated WebRTC version to 3.51
TBR=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5783 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-25 18:41:14 +00:00
fischman@webrtc.org
e52b3b9c95 iOS video_capture: move @private vars to impl.
Promised change from https://webrtc-codereview.appspot.com/10539005/ that got
dropped accidentally.

R=noahric@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5781 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-25 18:15:07 +00:00
sprang@webrtc.org
efcad39f77 Fix race condition in RTPSEnder.
In RTPSender::SendPayloadType(), payload_type_ should not be read
without owning send_critsect_.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5778 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-25 16:51:35 +00:00
henrik.lundin@webrtc.org
02e749f848 Change sprintf format string from %zu to %i
The resulting string became wrong on Windows. Instead of printing
the numerical value in number_of_streams_, the string "zu" got
printed. (Linux and Mac worked fine already.)

This will result in a change of statistics name in the performance
graphs.

R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5776 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-25 13:39:11 +00:00
andresp@webrtc.org
da07737e68 Modify bitrate controller to update bitrate based on process call and not
only whenever a RTCP receiver block is received.

Additionally:
 Add condition to only start rampup after a receiver block is received. This was same as old behaviour but now an explicit check is needed to verify process does not ramps up before the first block.

 Fix logic around capping max bitrate increase at 8% per second. Before it was only increasing once every 1 second and each increase would be as high as 8%. If receiver blocks had a different interval before it would lose an update or waste an update slot and not ramp up as much as a 8% (e.g. if RTCP received < 1 second).

 Did not touch decrease logic, however since it can be triggered more often it
 may decrease much faster and closer to the original written cap of once every
 300ms + rtt.

Note:
 rampup_tests.cc don't seem to be affected by this since there is no packet loss or REMB that go higher than expected cap.
 bitrate_controller_unittests.cc are don't really simulate a clock and the process thread, but trigger update by inserting an rtcp block.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5775 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-25 12:48:42 +00:00
stefan@webrtc.org
a16147c037 Adding API for setting bandwidth estimation configurations.
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5773 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-25 10:37:31 +00:00
fischman@webrtc.org
b64d52c292 iOS video_capture: start camera in the background.
Camera start is a blocking operation so never a good idea to do on a main
thread, but worse than that is that the guts of WebView appear to be
interacting with capture start in a bad way causing startup to pause for 10s
while a timeout expires.  This change eliminates that 10s delay.

R=noahric@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5772 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-25 05:23:32 +00:00
fischman@webrtc.org
e68102e046 iOS VideoEngine: move video_{capture,render} to ARC.
Replaces ye olde timey explicit release with teh hotness of automatic
reference counting.

This is the webrtc/ half; the talk/ half is in https://webrtc-codereview.appspot.com/10499005/

BUG=3054,3055
R=noahric@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5770 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-25 05:15:44 +00:00
asapersson@webrtc.org
ce12f1fd32 Add configuration for ability to use the encode usage measure for triggering overuse/underuse.
BUG=1577
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5767 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-24 21:59:16 +00:00
solenberg@webrtc.org
3fb8f7bbb0 Implement ViE forwarding to RBE of packets for BWE coming in through the ViENetwork::ReceivedBWEPacket API.
BUG=
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5765 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-24 20:28:11 +00:00
stefan@webrtc.org
9d4762e8b6 Have changes to REMB trigger RTCP to be sent immediately.
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5763 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-24 17:13:00 +00:00
bjornv@webrtc.org
28e83d1a56 DelayEstimator: Updates delay_quality and adds soft reset.
These changes are currently not used in webrtc/ but helps in using the delay estimator.
* The last_delay_quality() is updated with respect to robust_validation and changed to return float.
* Tests are updated wtih respect to above.
* Adds the possibility to make a soft reset based on external circumstances like a known delay shift has been made.
* The soft reset change the lookahead dynamically. An API to ask for current lookahead has been added as well.

BUG=N/A
TESTED=trybots, modules_unittest
R=aluebs@webrtc.org, andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5761 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-24 15:26:52 +00:00
tina.legrand@webrtc.org
92c0e29963 Run Opus with lower complexity setting on Android, iOS and/or ARM
This CL includes a call to Opus to set a lower complexity figure, if we are compiling for Android, iOS, or ARM (e.g. ChromeOS on ARM), where we know the devices are not powerful enough to run on higher complexity setting.

BUG=3093
R=minyue@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5760 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-24 14:38:36 +00:00
pbos@webrtc.org
3c412b24d9 Add targetBitrate to VideoCodec struct.
To be used by a codec implementation. Could for instance be interpreted
as trying to fit as much as possible on one temporal layer and send
everything that doesn't fit within target bitrate on another one.

Prevents an existing hack where startBitrate is used by a codec
implementation to signify target bitrate. This hack forces a reset of
bitrate estimation to target bitrate which creates bitrate dips.

BUG=
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5759 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-24 12:36:52 +00:00
stefan@webrtc.org
7e3ee8362b Disabled some of the remote bitrate estimator baseline tests.
These are disabled temporarily until updated.

R=solenberg@webrtc.org
TBR=solenberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5758 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-24 10:45:13 +00:00
solenberg@webrtc.org
b1f5010075 VoE changes to allow forwarding of packets from VoE to ViE BWE.
BUG=
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5757 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-24 10:38:25 +00:00
aluebs@webrtc.org
37ca765650 Add fir_filter to common_audio
It has 3 implementation:
* fir_filter_c with no optimization
* fir_filter_sse which outperforms the C version by a factor of 3x
* fir_filter_neon which outperforms the C version by a factor of 2x

R=andrew@webrtc.org, bjornv@webrtc.org, johannkoenig@google.com

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5756 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-24 10:16:11 +00:00
stefan@webrtc.org
af839b28b0 Add AIMD option to BWE API.
TEST=trybots
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5755 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-24 09:42:08 +00:00
tina.legrand@webrtc.org
ba5a6c3d89 ACM2/NetEq4 did not decode Opus in stereo
Two problems fixed in this CL:
- setting Opus decoder to stereo had no effect, and decoding always generated mono audio
- changing decoding setting from mono to stereo, or stereo to mono, for OPUS also had no effect (but required another change than the first one).

BUG=3082
R=henrik.lundin@webrtc.org, turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5754 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-23 09:58:48 +00:00
andresp@webrtc.org
07bc734459 Refactor in BitrateController module.
- Move condition of 0 bps as max meaning 1gbps from SendSideBandwidthEstimation to BitrateController.
 - Remove condition on bitrate=0 meaning bandwidth estimation off as that could only happen when no observers existed
   and in which case the estimation would be ignored.
 - Add MaybeTriggerOnNetworkChanged which only runs rate allocation if any of the dependent variables has changed
   thus allowing to remove many of the bool returns that try to indicate if the estimation has changed which would not
   be aware if the observers have changed.
 - SendSideBandwidthEstimation now has a UpdateBitrate and has clear code paths to which calls update bitrate.
 - Changes in enforce_min_bitrate so the 10kbps min is set from the BitrateController and not from the outside this keep valid as observers are changed.

R=henrik.lundin@webrtc.org, stefan@webrtc.org
BUG=3065

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5752 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-21 16:51:01 +00:00
henrikg@webrtc.org
6f9c48348b Fixing crash in video_render_tests in release mode.
This is a test bug. Fixed usage of assert.

BUG=1917
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5750 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-21 14:41:27 +00:00
andresp@webrtc.org
16b75c2c7a Remove locks in SendSideBandwidthEstimation since those are only accessed while owning locks in
BitrateControllerImpl (excluding AvailableBandwidth).

 + Refactor BitrateController logic around LowRate allocation so access to SendSideBandwidthEstimation
is clear.
 + Refactor NormalRateAllocation away from OnNetworkChange.
 + Annotate BitrateController locks.

R=henrik.lundin@webrtc.org, stefan@webrtc.org
BUG=3065

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5749 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-21 14:00:51 +00:00
minyue@webrtc.org
b28bfa7efc Adding FEC support in NetEq 4.
R=henrik.lundin@webrtc.org, turaj@webrtc.org

TEST=passes all trybots

BUG=

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5748 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-21 12:07:40 +00:00
pbos@webrtc.org
0e65fdaa3b Fix "unreachable code" warnings (MSVC warning 4702) in webrtc.
BUG=chromium:346399
TEST=none
R=tommi@webrtc.org

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

Patch from Peter Kasting <pkasting@chromium.org>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5747 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-21 10:26:42 +00:00
mallinath@webrtc.org
0209e565de Adding operator== and != methods for CodecInst and VideoCodec structures.
R=juberti@google.com, mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5746 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-21 00:41:28 +00:00
wu@webrtc.org
1faef7d084 Use codec width/height as the encoded_image width/height.
The raw_->w and raw_->h which are the stored image width/height may not be the encoded image size in the case when the incoming frame has a odd size.

R=marpan@google.com, marpan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5739 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-20 17:00:46 +00:00
henrik.lundin@webrtc.org
3ab57c514c Changing the buffer size (slots) to 1.5 seconds @ 30 ms packets
This is a relanding of r5725, now with a fix for the failing tests.

BUG=2935
R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5738 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-20 15:09:38 +00:00
asapersson@webrtc.org
8a8c3ef2ae Add ability to configure cpu overuse options via an API.
BUG=1577
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5736 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-20 13:15:01 +00:00
henrik.lundin@webrtc.org
d66929995f Prevent playout delay wrap-around in VoiceEngine
In the case where a network glitch causes a packet to arrive so late
that the jitter buffer has gone into expand mode, the playout timestamp
could have been increased to a value that is larger than the RTP
timestamp of the late packet when it finally arrives. This causes
the difference to be negative, and would make the value wrap (unsigned).

With this fix, the difference is set to zero when the playout
timestamp is ahead of the incoming RTP timestamp. Further down in the
method, a zero-value will lead to the averaging filter not being updated.

BUG=3080
R=henrika@webrtc.org, tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5735 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-20 12:04:09 +00:00
henrika@webrtc.org
800b8dbda6 Removes error printout in voe_cmd_test which was caused by attempts to transmit RTCP packets even if a transport object was not registered.
BUG=none
R=xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5734 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-20 08:07:41 +00:00
andresp@webrtc.org
c14807959b Extend perf tests to perform rampup on single stream.
R=kjellander@webrtc.org, stefan@webrtc.org
BUG=3065

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5733 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-20 03:23:55 +00:00
jiayl@webrtc.org
c8ac17ca04 Adjust the captured window rect when the window is maximized.
GetWindowRect includes the window frames for maximized window even they are off screen, causing content outside the window being captured falsely. The fix is to remove the left/right/bottom window frame from the captured rect. Mouse capturing is adjusted accordingly as well.

BUG=3076
R=sergeyu@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5732 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-20 00:06:41 +00:00
stefan@webrtc.org
16395228f5 Properly account for retransmitted packets when not using the pacer.
This regression was introduced in r5728.

TBR=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5729 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-19 19:34:07 +00:00
stefan@webrtc.org
7c6ff2da26 Fixes RTX related bugs.
- An RTX packet with no payload should be dropped prior to parsing RTX header since it doesn't have an RTX header. This can for example happen when sending padding-only packets over the RTX stream.
- The retransmit code path when the pacer is disabled doesn't properly update the abs-send-time and ts-offset header extensions.

TEST=trybots
R=mflodman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5728 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-19 18:14:52 +00:00
pbos@webrtc.org
9af85c4ac2 Disabling SendsSetSimulcastSsrcs.
Disabling as bots are turning red. This should be because
VideoSendStream::ReconfigureVideoCodec caps video_codec.startBitrate to
max bitrates and as the start bitrate is just enough to transmit there
might be some rounding errors here causing the top stream not to be
sent. Since no REMB is received (send-side test) this remains as the
transmit bitrate.

I need some more time to figure out if this is the case so I'm disabling
these for now to avoid reverting the big CL. VideoSendStreams aren't
used in production yet.

TBR=mflodman@webrtc.org
BUG=3078

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5727 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-19 15:49:18 +00:00
henrik.lundin@webrtc.org
1e98a15adb Revert "Changing the buffer size (in packets) to 1.5 seconds @ 30 ms packets"
Build bots turned red.

TBR=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5726 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-19 14:16:52 +00:00
henrik.lundin@webrtc.org
e5be877476 Changing the buffer size (in packets) to 1.5 seconds @ 30 ms packets
BUG=2935
R=tina.legrand@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5725 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-19 13:36:58 +00:00
pbos@webrtc.org
add4073593 Disable flaky CanSwitchToUseAllSsrcs.
Test flakes on bots, disabling while investigating.

R=minyue@webrtc.org
TBR=mflodman@webrtc.org
BUG=3078

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5724 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-19 12:57:35 +00:00
pbos@webrtc.org
709e29742e Simplify pacer interface.
New interface uses two bitrates (max/min). The pace multiplier is also
removed from the interface and instead utilized outside. Min bitrate
will be filled with padding if there's not enough media to transmit.

Also fixes a bug in minimum transmission bitrate that made it ignore
REMBs. A regression test has been added to catch it.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5723 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-19 10:59:52 +00:00
pbos@webrtc.org
f577ae9eac Remove internal codecs from VideoSendStream.
Replaces VideoCodec in VideoSendStream::Config with an EncoderSettings
struct. The EncoderSettings struct uses an external encoder for all
codecs. This means that external users, such as libjingle, will provide
the encoders themselves, removing the previous distinction of internal
and external codecs.

For now VideoSendStream translates to VideoCodec internally. In the
interrim (before the corresponding change is implemented in
VideoReceiveStream) tests convert EncoderSettings to VideoCodecs.

Removes Call::GetVideoCodecs().

Disables RampUpTest.WithPacingAndRtx as its further exposed with changes
to bitrates used in tests.

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

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5722 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-19 08:43:57 +00:00
wuchengli@chromium.org
ac4b87c258 Fix a deadlock in ViEEncoder::DeliverFrame.
The deadlock can happen when using HW encoder. HW encoder calls
the encode complete callback on libjingle worker thread instead
of ViECaptureThread. The capture thread can hold VieEncoder::|data_cs_|
and wait for ModuleRtpRtcpImpl::|critical_section_module_ptrs_|.
When libjingle worker thread runs encode complete callback, it
can hold ModuleRtpRtcpImpl::|critical_section_module_ptrs_| and
wait for VieEncoder::|data_cs_|.

|default_rtp_rtcp_| is not guarded by |data_cs|. So move it out of
the critical section to avoid the deadlock.

BUG=chromium:352567
TEST=Run apprtc loopback on CrOS.
Run apprtc between CrOS and Linux.
Run vie_auto_test.

R=henrik.lundin@webrtc.org, pbos@webrtc.org, stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5721 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-19 03:44:20 +00:00
jiayl@webrtc.org
886c94f07c Adds a method to WindowCapturer to bring a window to the front.
BUG=3071
R=sergeyu@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5718 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-18 17:10:36 +00:00
henrik.lundin@webrtc.org
dcc301be07 Adding thread annotations to NetEq4
R=pbos@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5716 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-18 11:49:22 +00:00