11193 Commits

Author SHA1 Message Date
michaelbai@google.com
653c325af2 Fix the library path for android 64-bit build
BUG=359687
R=andrew@webrtc.org, fischman@webrtc.org, torne@chromium.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5844 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-04 04:44:19 +00:00
andrew@webrtc.org
40ee3d07ed Consolidate audio conversion from Channel and TransmitMixer.
Replace the two versions with a single DownConvertToCodecFormat. As
mentioned in comments, this could be further consolidated with
RemixAndResample but we should write a full audio converter class in
that case.

Along the way:
- Fix the bug present in Channel::Demultiplex with mono input and a
stereo codec.
- Remove the 32 kHz max from the OnDataAvailable path. This avoids a
48 -> 32 -> 48 conversion when VoE is passed 48 kHz audio; instead we
get a straight pass-through to ACM. The 32 kHz conversion is still
needed in the RecordedDataIsAvailable path until APM natively supports
48 kHz.
- Merge resampler improvements from ACM1 to ACM2. This allows ACM to
handle 44.1 kHz audio passed to VoE and was originally done here:
https://webrtc-codereview.appspot.com/1590004
- Reuse the RemixAndResample unit tests for DownConvertToCodecFormat.
- Remove unused functions from utility.cc.

BUG=3155,3000,b/12867572
TESTED=voe_cmd_test using both the OnDataAvailable and
RecordedDataIsAvailable paths, with a captured audio format of all
combinations of {44.1,48} kHz and {1,2} channels, running through all
codecs, and finally using both ACM1 and ACM2.

R=henrika@webrtc.org, turaj@webrtc.org, xians@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5843 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-03 21:56:01 +00:00
bjornv@webrtc.org
240eec3cd4 Delay Estimator: Minor refactoring and added a setter function.
* Replaced the lookahead input parameter at Create() with a setter. This makes it slightly more user friendly.
* Changed the buffer shifting in SoftReset... to become more readable.

TESTED=trybots, modules_unittests
R=aluebs@webrtc.org, andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5836 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-03 08:11:47 +00:00
henrik.lundin@webrtc.org
184b913eb5 Rename RTPanalyze to rtp_analyze and remove old version
The tool RTPanalyze (used to process an input RTP dump into a
text file of RTP header info) was present in both the neteq and
neteq4 folders. This change pulls in changes from the old to the new
and renames the source file and tool to rtp_analyze.

Removing special code for dummy-rtp files (it is supported without
special code), and making the RED payload type settable using flags.

Moving from test/ to tools/ folder.

BUG=2692
R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5832 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-02 20:56:17 +00:00
andrew@webrtc.org
c7c432aa9b Remove AudioDevice::{Microphone,Speaker}IsAvailable.
This was only used for logging, except on Mac, where the methods are
now private.

BUG=3132
R=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5831 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-02 16:49:26 +00:00
minyue@webrtc.org
7549ff4257 This is to get rid of a bug relating to the return of NULL in calling GetDecoder when there are DTMF packets.
BUG=3140
TEST=trybots
R=henrik.lundin@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5830 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-02 15:03:01 +00:00
henrik.lundin@webrtc.org
1092ea0192 Add format specification to output file names
This change facilitates running ApmTest.VerifyDebugDumpInt and
ApmTest.VerifyDebugDumpFloat in parallel, since they are not writing
to the same files any longer.

R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5829 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-02 07:46:49 +00:00
henrika@webrtc.org
620d444c0b Extends max sample rate from 96kHz to 192kHz on the input side.
TEST=apprtc in Chrome using this WebRTC version and a device on Windows which can capture at 192kHz
BUG=725
R=andrew@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5828 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-02 07:22:34 +00:00
braveyao@webrtc.org
790385fee4 sink_filter_ds.cc: add lock to Receive procedure to Pause().
BUG=2233
TEST=AUTO Test
R=wu@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5827 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-02 02:14:55 +00:00
andrew@webrtc.org
19018ddb17 Make ACM2 the default in voe_cmd_test.
R=turaj@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5826 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-01 20:58:05 +00:00
stefan@webrtc.org
f8f7c8b618 Added simulations of capacity variations and wifi recordings.
Also changes the packet sizes for the video sender and the trace based filter to match.

R=solenberg@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5824 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-01 14:00:05 +00:00
kjellander@webrtc.org
d10bdd3f78 Roll chromium_revision 255773:260462
This disables GN use for the moment (Chromium
has disabled it for now but plan to pick up the
work at a later stage). I'm leaving the rest of
the GN stuff in our DEPS since that's how
the Chromium DEPS currently looks like.

Overview of changes in Chrome DEPS:
$ svn diff http://src.chromium.org/chrome/trunk/src/DEPS -r 255773:260462

which can be compared with the output of:
$ svn cat http://webrtc.googlecode.com/svn/trunk/DEPS | grep chromium_deps | sed 's/^ *//' | sort | uniq

in a WebRTC checkout, gives the following relevant changes:
* third_party/android_tools 0582bd:ca3567
* third_party/icu 249466:259309
* third_party/libjpeg_turbo 251747:259851
* third_party/libyuv 979:986
* third_party/nss 254867:259440
* tools/gyp 1860:1880

The following also shows that Clang is upgraded from r198389 to r202554:
$ svn diff http://src.chromium.org/chrome/trunk/src/tools/clang/scripts/update.sh -r 255773:260462

TEST=trybots
BUG=None
R=tommi@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5822 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-01 10:40:03 +00:00
andrew@webrtc.org
ca9d038ac8 Fix ARM64 detection.
Use only __aarch64__ and don't look for __arm64__ at all.
It turns out that clang defines both and GCC only the former.
Hence, looking only for __aarch64__ should be safe.

BUG=chromium:354405,chromium:358092
R=andrew@webrtc.org

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

Patch from Primiano Tucci <primiano@chromium.org>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5821 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-01 01:19:08 +00:00
fischman@webrtc.org
a789f3720a VoiceEngine(iOS & Android): removed NOT_SUPPORTED
Also:
- removed underflow of a uint32 creating crazy-large delay values
- removed always-fail AudioDeviceIPhone::MicrophoneIsAvailable() impl (see
  bug 3132)
- removed unnecessary exclusion of features from iOS & Android builds

BUG=2050,3132
R=andrew@webrtc.org, niklas.enbom@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5820 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-04-01 00:16:35 +00:00
solenberg@webrtc.org
caeae4680c Add tests for the RBE RemoveStream() API.
BUG=
R=stefan@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5812 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-31 13:33:39 +00:00
henrik.lundin@webrtc.org
d0a81d91ff VoE Channel: Don't register codecs when stopping receiver
VoiceEngine's Channel::StopReceiving() would call
RegisterReceiveCodecsToRTPModule(), which caused some errors
with RED and ULP-FEC. In particular, an error message would be
printed when hanging up a call in voe_cmd_test application.

BUG=3085
R=henrika@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5811 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-31 07:31:53 +00:00
kjellander@webrtc.org
0aa04f9f24 Restore support for code coverage in WebRTC
In https://codereview.chromium.org/68193002
Chromium dropped the support for the coverage=1 flag.
This restores it for WebRTC purposes for the Linux platform.

TEST=Manually ran the coverage steps on my machine, verified
that .gcno files are generated.

BUG=
R=phoglund@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5806 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-28 13:14:00 +00:00
andrew@webrtc.org
fff3fd35a6 Add arm64 to typedefs.h
This is the first step to get a buildable chrome_shell_apk for arm64.

BUG=chromium:354405
R=andrew@webrtc.org

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

Patch from Primiano Tucci <primiano@chromium.org>.

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5802 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-27 19:48:53 +00:00
andresp@webrtc.org
5a0218c794 Allow loopback tests to do TURN when served from webrtc.googlecode.com.
BUG=3037
R=fischman@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5801 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-27 19:24:45 +00:00
andrew@webrtc.org
b13a7d5b1c Don't disable experimental AGC in audioproc.
R=aluebs@webrtc.org

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

git-svn-id: http://webrtc.googlecode.com/svn/trunk@5798 4adac7df-926f-26a2-2b94-8c16560cd09d
2014-03-27 00:11:11 +00:00
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