Commit Graph

1507 Commits

Author SHA1 Message Date
Bjorn Volcker
4e7aa43ea0 audio_processing: Adds two UMA histograms logging delay jumps in AEC
We have two histograms today that trigger on large jumps in either platform reported stream delays (WebRTC.Audio.PlatformReportedStreamDelayJump) or the system delay in the AEC (WebRTC.Audio.AecSystemDelayJump). The latter is the internal buffer size in the AEC.
The sizes of such jumps are of relevance since it can harm the AEC and even put it in a complete failure state. It is hard, not to say impossible, to tell how frequent it is.
Therefore, two complementary histograms are added; number of jumps in each metric.
This way we get a quick way to determine how often a jump occurs in general and also how frequent it is within a call.

This is solved by adding a counter for each metric.
The counter is activated either upon an event trigger or if we know for sure when the AEC is running.
Unfortunately, we can't rely on the destructor at the end of a call so we add a public API for the user to take on the action of calling it at the end of a call.

Tested locally by building ToT chromium including changes and three triggered jumps (200, 50 and 60 ms).
The stats picked up the 60 and 200 ms jumps as expected.

BUG=488124
R=asapersson@webrtc.org, pbos@webrtc.org

Review URL: https://codereview.webrtc.org/1229443003.

Cr-Commit-Position: refs/heads/master@{#9544}
2015-07-07 09:50:16 +00:00
jbauch
ac8869ec5a Report metrics about negotiated ciphers.
This CL adds an API to the metrics observer interface to report negotiated
ciphers for WebRTC sessions. This can be used from Chromium for UMA metrics
later to get an idea which cipher suites are used by clients (e.g. compare
the use of DTLS 1.0 / 1.2).

BUG=428343

Review URL: https://codereview.webrtc.org/1156143005

Cr-Commit-Position: refs/heads/master@{#9537}
2015-07-03 08:36:22 +00:00
henrik.lundin
0f133b99c6 Rename APM Config ReportedDelay to DelayAgnostic
We use this Config struct for enabling/disabling the delay agnostic
AEC. This change renames it to DelayAgnostic for readability reasons.

NOTE: The logic is reversed in this CL. The old ReportedDelay config
turned DA-AEC off, while the new DelayAgnostic turns it on.

The old Config is kept in parallel with the new during a transition
period. This is to avoid problems with API breakages. During this
period, ReportedDelay is disabled or DelayAgnostic is enabled, DA-AEC
is engaged in APM.

BUG=webrtc:4651
R=bjornv@webrtc.org, tommi@webrtc.org

Review URL: https://codereview.webrtc.org/1211053006

Cr-Commit-Position: refs/heads/master@{#9531}
2015-07-02 07:17:59 +00:00
tkchin
0d7dbde8cf Update AppRTCDemo resolution for iPhone6/6+
BUG=

Review URL: https://codereview.webrtc.org/1214113015

Cr-Commit-Position: refs/heads/master@{#9530}
2015-07-02 01:26:40 +00:00
bemasc
0edd50ccb3 Support for onbufferedamountlow
Original review at https://webrtc-codereview.appspot.com/54679004/

BUG=https://code.google.com/p/chromium/issues/detail?id=496700

Review URL: https://codereview.webrtc.org/1207613006

Cr-Commit-Position: refs/heads/master@{#9527}
2015-07-01 20:34:42 +00:00
Zeke Chin
71f6f4405c iOS HW H264 support.
First step towards supporting H264 on iOS. More tuning/experimentation
required in future CLs. Tested using AppRTCDemo on iPhone6 + iPad Mini.
Future work to get it working on OS/X, simulator (renders black screen
currently) and with the Android AppRTCDemo. Currently protected with a
compile time guard.

BUG=4081
R=andrew@webrtc.org, haysc@webrtc.org, holmer@google.com, jiayl@webrtc.org, kjellander@webrtc.org, pbos@webrtc.org, phoglund@webrtc.org, stefan@webrtc.org

Review URL: https://codereview.webrtc.org/1187573004.

Cr-Commit-Position: refs/heads/master@{#9515}
2015-06-29 21:35:08 +00:00
Peter Boström
4b91bd0897 Move frame input (ViECapturer) to webrtc/video/.
Renames ViECapturer to VideoCaptureInput and initializes several
parameters on construction instead of setters.

Also removes an old deadlock suppression.

BUG=1695, 2999
R=asapersson@webrtc.org, mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9508}
2015-06-26 04:58:23 +00:00
Peter Thatcher
c0c3a865f4 Prevent JS from bypassing RTP data channel bandwidth limitation.
Normally the RTP data channel is capped at 30kbps, but by mangling the
SDP string, one could get around this limitation. With this fix,
SdpDeserialize will return an error if it detects this condition.

BUG=280726
R=pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1196403004.

Cr-Commit-Position: refs/heads/master@{#9499}
2015-06-24 22:31:35 +00:00
Andrew MacDonald
8d3e489d01 Update deeper codereview.settings files to match the root.
R=kjellander@webrtc.org

Review URL: https://codereview.webrtc.org/1190883002.

Cr-Commit-Position: refs/heads/master@{#9498}
2015-06-24 19:40:39 +00:00
magjed
59a677ada2 Android VideoRendererGui: Refactor GLES rendering
This CL should not change any visible behaviour. It does the following:
 * Extract GLES rendering into separate class GlRectDrawer. This class is also needed for future video encode with OES texture input.
 * Clean up current ScalingType -> display size calculation and introduce new SCALE_ASPECT_BALANCED (b/21735609) and remove unused SCALE_FILL.
 * Replace current mirror/rotation index juggling with android.opengl.Matrix operations instead.

Review URL: https://codereview.webrtc.org/1191243005

Cr-Commit-Position: refs/heads/master@{#9496}
2015-06-24 10:59:43 +00:00
Erik Språng
2c4c914819 In screenshare mode, suppress VP8 bitrate overshoot and increase quality
This change includes several improvements:

* VP8 configured with new rate control
* Detection of frame dropping, with qp bump for next frame
* Increased target and TL0 bitrates
* Reworked rate control (TL allocation) in screenshare_layers

A note on performance: PSNR and SSIM is expected to get slightly worse with this cl. Frame drops and delays should however improve.

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

Review URL: https://codereview.webrtc.org/1193513006.

Cr-Commit-Position: refs/heads/master@{#9495}
2015-06-24 09:24:50 +00:00
phoglund
7ab5f801dd Adding an equals method for KeyValuePair for easier testing.
With this we can write stuff like

assertThat(result.mandatory,
    hasItem(new KeyValuePair("minWidth", "1280")));

The above will currently fail because the object falls back to ==.

BUG=None

Review URL: https://codereview.webrtc.org/1193883006

Cr-Commit-Position: refs/heads/master@{#9494}
2015-06-24 08:11:51 +00:00
Joachim Bauch
66f920ea57 Remove definition of non-existent method.
The private method "CreateDefaultLocalDescription" is defined in the
class, but not implemented or used anywhere.

R=juberti@webrtc.org

Review URL: https://codereview.webrtc.org/1182793004.

Cr-Commit-Position: refs/heads/master@{#9493}
2015-06-24 07:34:41 +00:00
tommi
39b31001d2 Change kEchoCancellation to be 'echoCancellation'.
This is the second cl in WebRTC for this change and will be landed after Chromium has been updated to use kGooglEchoCancellation where that variant is required. See also the first part: https://codereview.webrtc.org/1179233003

BUG=webrtc:4747
R=andrew@webrtc.org

Review URL: https://codereview.webrtc.org/1185963003

Cr-Commit-Position: refs/heads/master@{#9490}
2015-06-23 16:50:50 +00:00
jbauch
be24c94c95 Set / verify stats report timestamps.
This CL updates the track report timestamps which were fixed at "0" before
and updates the timestamps in reports for local audio tracks.

Also the timestamps are checked in various tests to make sure no "0" is
returned.

Original CL is at https://webrtc-codereview.appspot.com/51829004/

BUG=webrtc:4316
TBR=hta@webrtc.org, pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1204493002

Cr-Commit-Position: refs/heads/master@{#9485}
2015-06-22 22:06:50 +00:00
henrika
1d34fe979c Adds support for webrtc::test::ResourcePath on iOS
BUG=webrtc:4752
R=tkchin@webrtc.org

Review URL: https://codereview.webrtc.org/1178843002.

Cr-Commit-Position: refs/heads/master@{#9445}
2015-06-16 08:04:24 +00:00
Henrik Lundin
b02af18c5c Follow-up: Remove old DelayCorrection AEC config
This is a follow-up to r9401, where the configuration DelayCorrection
was replaced by ExtendedFilter.

This change also removes the media constraint
kExperimentalEchoCancellation which was replaced by
kExtendedFilterEchoCancellation in the same CL.

Both settings that are now being removed were kept in the code to avoid
API breakages. In https://codereview.chromium.org/1167343004,
depending code has been updated to avoid breakages.

BUG=webrtc:4696
R=bjornv@webrtc.org, tommi@webrtc.org

Review URL: https://codereview.webrtc.org/1181413004.

Cr-Commit-Position: refs/heads/master@{#9444}
2015-06-16 07:53:32 +00:00
Henrik Kjellander
05ce5dd0f1 Roll chromium_revision e937e5f..c2239a8 (333350:334133)
Removed no longer used test_isolation_outdir variable as in
https://codereview.chromium.org/1176463003

The move of a DEPS in https://codereview.chromium.org/1155743013
is causing problems on some trybots. It shouldn't affect developers.

Relevant changes:
* src/third_party/android_tools: a3afc68..ed3dde6
* src/third_party/icu: 9939a5d..a05f412
* src/third_party/libjpeg_turbo: 8ee9bdd..f4631b6
* src/third_party/libyuv: 632c50f..632c50f
Details: e937e5f..c2239a8/DEPS

Clang version was not updated in this roll.

BUG=
R=pbos@webrtc.org

Review URL: https://codereview.webrtc.org/1182043002.

Cr-Commit-Position: refs/heads/master@{#9435}
2015-06-15 09:10:25 +00:00
Åsa Persson
2b679250fb VideoCapturerAndroid: Add possibility to request a new resolution from the video adapter.
BUG=
R=glaznev@webrtc.org

Review URL: https://codereview.webrtc.org/1178643006.

Cr-Commit-Position: refs/heads/master@{#9434}
2015-06-15 07:53:16 +00:00
Tommi
70c7fe14ac Add kGoogEchoCancellation to MediaConstraintsInterface.
This constraint will be equal to kEchoCancellation until we've updated Chromium to use kGoogEchoCancellation where that constraint is needed.  Once that's done, I'll change kEchoCancellation to be 'echoCancellation'.

BUG=webrtc:4747
R=andrew@webrtc.org

Review URL: https://codereview.webrtc.org/1179233003.

Cr-Commit-Position: refs/heads/master@{#9433}
2015-06-15 07:14:15 +00:00
Alex Glaznev
782671f798 Improve Android HW decoder error handling.
- Remove an option to use MediaCodec SW decoder from Java layer.
- Better handling Java exceptions in JNI - detect exceptions
and either try to reset the codec or fallback to SW decoder.
- If any error is reported by codec try to fallback to SW
codec for VP8 or reset decoder and continue decoding for H.264.
- Add more logging for error conditions.

R=wzh@webrtc.org

Review URL: https://codereview.webrtc.org/1178943007.

Cr-Commit-Position: refs/heads/master@{#9431}
2015-06-12 23:40:51 +00:00
Jon Hjelle
2f65ac1437 Fix crash and warning in AppRTCDemo
Don't dismiss the presented view controller if it's already being dismissed to clear a warning about dismissing from a view controller while a dismiss is in progress.

Remove the sample buffer delegate when capture is being stopped to avoid a crash when a delegate method is sent to a deallocated object.

BUG=webrtc:4734
R=jiayl@webrtc.org, tkchin@webrtc.org

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

Patch from Jon Hjelle <hjon@andyet.net>.

Cr-Commit-Position: refs/heads/master@{#9430}
2015-06-12 18:33:51 +00:00
Peter Kasting
728d9037c0 Reformat existing code. There should be no functional effects.
This includes changes like:
* Attempt to break lines at better positions
* Use "override" in more places, don't use "virtual" with it
* Use {} where the body is more than one line
* Make declaration and definition arg names match
* Eliminate unused code
* EXPECT_EQ(expected, actual) (but use (actual, expected) for e.g. _GT)
* Correct #include order
* Use anonymous namespaces in preference to "static" for file-scoping
* Eliminate unnecessary casts
* Update reference code in comments of ARM assembly sources to match actual current C code
* Fix indenting to be more style-guide compliant
* Use arraysize() in more places
* Use bool instead of int for "boolean" values (0/1)
* Shorten and simplify code
* Spaces around operators
* 80 column limit
* Use const more consistently
* Space goes after '*' in type name, not before
* Remove unnecessary return values
* Use "(var == const)", not "(const == var)"
* Spelling
* Prefer true, typed constants to "enum hack" constants
* Avoid "virtual" on non-overridden functions
* ASSERT(x == y) -> ASSERT_EQ(y, x)

BUG=none
R=andrew@webrtc.org, asapersson@webrtc.org, henrika@webrtc.org, juberti@webrtc.org, kjellander@webrtc.org, kwiberg@webrtc.org

Review URL: https://codereview.webrtc.org/1172163004

Cr-Commit-Position: refs/heads/master@{#9420}
2015-06-11 21:31:48 +00:00
Peter Kasting
b7e5054414 Match existing type usage better.
This makes a variety of small changes to synchronize bits of code using different types, remove useless code or casts, and add explicit casts in some places previously doing implicit ones.  For example:

* Change a few type declarations to better match how the majority of code uses those objects.
* Eliminate "< 0" check for unsigned values.
* Replace "(float)sin(x)", where |x| is also a float, with "sinf(x)", and similar.
* Add casts to uint32_t in many places timestamps were used and the existing code stored signed values into the unsigned objects.
* Remove downcasts when the results would be passed to a larger type, e.g. calling "foo((int16_t)x)" with an int |x| when foo() takes an int instead of an int16_t.
* Similarly, add casts when passing a larger type to a function taking a smaller one.
* Add casts to int16_t when doing something like "int16_t = int16_t + int16_t" as the "+" operation would implicitly upconvert to int, and similar.
* Use "false" instead of "0" for setting a bool.
* Shift a few temp types when doing a multi-stage calculation involving typecasts, so as to put the most logical/semantically correct type possible into the temps.  For example, when doing "int foo = int + int; size_t bar = (size_t)foo + size_t;", we might change |foo| to a size_t and move the cast if it makes more sense for |foo| to be represented as a size_t.

BUG=none
R=andrew@webrtc.org, asapersson@webrtc.org, henrika@webrtc.org, juberti@webrtc.org, kwiberg@webrtc.org
TBR=andrew, asapersson, henrika

Review URL: https://codereview.webrtc.org/1168753002

Cr-Commit-Position: refs/heads/master@{#9419}
2015-06-11 19:56:03 +00:00
Peter Boström
eb82309d06 Remove FileMediaEngine.
This is currently only used in libjingle/examples/call which is
deprecated and not currently building.

BUG=
R=juberti@webrtc.org, pthatcher@webrtc.org

Review URL: https://codereview.webrtc.org/1169833004.

Cr-Commit-Position: refs/heads/master@{#9415}
2015-06-11 08:27:36 +00:00
Magnus Jedvert
80cf97cddd Android rendering: Move common EGL and GL functions to separate classes
This CL does not make any functional changes. The purpose is to extract some common code that is needed for texture capture and texture encode.

This CL does the following changes:
* Move common EGL functions from org.webrtc.MediaCodecVideoDecoder to org.webrtc.EglBase.
* Move common GL functions from org.webrtc.VideoRendererGui to org.webrtc.GlUtil and org.webrtc.GlShader.
* Remove unused call to surfaceTexture.getTransformMatrix in YuvImageRenderer.
* Add helper functions rotatedWidth()/rotatedHeight() in VideoRenderer.I420Frame.

R=glaznev@webrtc.org, hbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9414}
2015-06-11 08:09:15 +00:00
Peter Kasting
f045e4da43 Prepare to convert various types to size_t.
This makes some behaviorally-invariant changes to make certain code that
currently only works correctly with signed types work safely regardless of the
signedness of the types in question.  This is preparation for a future change
that will convert a variety of types to size_t.

There are also some formatting changes (e.g. converting "enum hack" usage to real consts) to make it simpler to just change "int" to "size_t" in the future to change the types of those constants.

BUG=none
R=andrew@webrtc.org, juberti@webrtc.org, kwiberg@webrtc.org
TBR=ajm

Review URL: https://codereview.webrtc.org/1174813003

Cr-Commit-Position: refs/heads/master@{#9413}
2015-06-11 04:15:51 +00:00
Niklas Enbom
8a19f3dc62 Relanding https://webrtc-codereview.appspot.com/56589004
BUG=
TBR=cpaulin@chromium.org

Review URL: https://codereview.webrtc.org/1176023002.

Cr-Commit-Position: refs/heads/master@{#9410}
2015-06-10 18:39:34 +00:00
Niklas Enbom
54b0ca553f Revert "Landing https://webrtc-codereview.appspot.com/53669004/"
This reverts commit 2aef19cbde.

BUG=

TBR=cpaulin@chromium.org

Review URL: https://codereview.webrtc.org/1168313003.

Cr-Commit-Position: refs/heads/master@{#9404}
2015-06-09 23:21:29 +00:00
Niklas Enbom
2aef19cbde Landing https://webrtc-codereview.appspot.com/53669004/
BUG=

Review URL: https://codereview.webrtc.org/1169123003.

Cr-Commit-Position: refs/heads/master@{#9403}
2015-06-09 22:38:28 +00:00
Tommi
532caeae2d Adding DCHECKs and constness to DtlsIdentityStore.
R=hbos@webrtc.org, hbos
BUG=

Review URL: https://codereview.webrtc.org/1171893003.

Cr-Commit-Position: refs/heads/master@{#9402}
2015-06-09 15:33:17 +00:00
Henrik Lundin
441f634731 Re-land r9378 "Rename APM Config DelayCorrection to ExtendedFilter"
(This reverts commit 3fbf3f8841b5460503fb646eaedcb063620434a8.)

The original submission was reverted because it broke the Chrome build. This is fixed in patch set 2 of this change by keeping the old MediaConstraintsInterface string kExperimentalEchoCancellation. It will be removed once the Chrome code has been updated.

Original description:
"We use this Config struct for enabling/disabling Extended filter mode in AEC. This change renames it to ExtendedFilter for readability reasons. The corresponding media constraint is also renamed to kExtendedFilterEchoCancellation.

The old Config is kept in parallel with the new during a transition period. This is to avoid problems with API breakages. During this period, if any of the two Configs are enabled, the extended filter mode is engaged in APM. That is, the two Configs are combined with an "OR" operation.

This change also renames experimental_aec in AudioOptions to extended_filter_aec."

BUG=webrtc:4696
R=bjornv@webrtc.org, tommi@webrtc.org

Review URL: https://codereview.webrtc.org/1151573021.

Cr-Commit-Position: refs/heads/master@{#9401}
2015-06-09 14:03:23 +00:00
Fredrik Solenberg
04f4931ef0 VoE2 API draft
BUG=4690
R=jmarusic@webrtc.org, kwiberg@webrtc.org, mflodman@webrtc.org, pbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9392}
2015-06-08 11:05:07 +00:00
Peter Boström
d7da120b40 Disable reduced-size RTCP in default config.
Verifies that reduced-size isn't configured in WebRtcVideoEngine2
without explicit configuration (which doesn't exist). Also disables REMB
in the default config because it requires reconfiguration.

Adds default-config tests to make sure that they don't contain
parameters that need to be negotiated between clients.

BUG=chromium:497103, webrtc:4745
R=mflodman@webrtc.org, stefan@webrtc.org

Review URL: https://codereview.webrtc.org/1171533002

Cr-Commit-Position: refs/heads/master@{#9384}
2015-06-05 12:09:48 +00:00
henrika
fe55c38eff Removes automatic setting of COMM mode in WebRTC.
It is now up to the application to ensure that it is in COMM mode before any audio streaming is started.

BUG=b/21571563
R=glaznev@webrtc.org

Review URL: https://codereview.webrtc.org/1165923002

Cr-Commit-Position: refs/heads/master@{#9383}
2015-06-05 09:46:02 +00:00
Peter Boström
eb66e800d1 Re-land "Convert native handles to buffers before encoding."
This reverts commit a67675506c9057bd9ffd4d76aae8b743343d434d.

BUG=webrtc:4081
TBR=magjed@webrtc.org

Review URL: https://codereview.webrtc.org/1158273010

Cr-Commit-Position: refs/heads/master@{#9381}
2015-06-05 09:08:12 +00:00
Henrik Lundin
3fbf3f8841 Revert r9378 "Rename APM Config DelayCorrection to ExtendedFilter"
This reverts commit 5f4b7e2873, since it
broke some of the build bots.

BUG=4696
TBR=bjornv@webrtc.org

Review URL: https://codereview.webrtc.org/1166463006

Cr-Commit-Position: refs/heads/master@{#9380}
2015-06-05 09:04:20 +00:00
Henrik Lundin
5f4b7e2873 Rename APM Config DelayCorrection to ExtendedFilter
We use this Config struct for enabling/disabling Extended filter mode
in AEC. This change renames it to ExtendedFilter for readability
reasons. The corresponding media constraint is also renamed to
kExtendedFilterEchoCancellation.

The old Config is kept in parallel with the new during a transition
period. This is to avoid problems with API breakages. During this
period, if any of the two Configs are enabled, the extended filter
mode is engaged in APM. That is, the two Configs are combined with an
"OR" operation.

This change also renames experimental_aec in AudioOptions to extended_filter_aec.

BUG=4696
R=bjornv@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9378}
2015-06-05 07:55:40 +00:00
Tommi
a9952cdd0e Remove CHECK from GetThreadName.
It's safe for prctl() to fail, so we fall back on <noname> for thread names if we can't get one, instead of crashing.

BUG=
R=henrika@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9363}
2015-06-03 16:59:24 +00:00
Bjorn Volcker
73f72105c4 Actively turns off platform-AEC when DA-AEC is used
When initiating a call default audio options are applied, which turns on platform-AEC if such exists. Then, if delay agnostic AEC (DA-AEC) is enabled through a media constraint no action with respect to platform-AEC is taken (a bug) and turning on SW AEC. Hence, we run both AECs.

This CL makes sure the platform-AEC is disabled if we want to run DA-AEC.

BUG=
TESTED=locally on Nexus 4 and Nexus 6.
R=henrika@webrtc.org, tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9361}
2015-06-03 12:50:21 +00:00
Wan-Teh Chang
6b990744d9 Revert "Import org.junit.Assert instead of junit.framework.Assert."
This reverts commit a88470964c.

It broke Android builds:
app/webrtc/java/testcommon/src/org/webrtc/PeerConnectionTest.java:46: error: package org.junit does not exist
import static org.junit.Assert.*;
                       ^
TBR=glaznev@webrtc.org,pthatcher@webrtc.org
BUG=none

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

Cr-Commit-Position: refs/heads/master@{#9357}
2015-06-02 21:36:32 +00:00
Wan-Teh Chang
a88470964c Import org.junit.Assert instead of junit.framework.Assert.
This fixed the warning:
app/webrtc/java/testcommon/src/org/webrtc/PeerConnectionTest.java:46: warning: [deprecation] Assert in junit.framework has been deprecated
import static junit.framework.Assert.*;

R=glaznev@webrtc.org, pthatcher@webrtc.org
BUG=none

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

Cr-Commit-Position: refs/heads/master@{#9356}
2015-06-02 21:26:48 +00:00
Peter Boström
308d163c71 Revert "Convert native handles to buffers before encoding."
This reverts commit a831dc3a7d to unblock
rolling into Chromium.

BUG=4081
TBR=magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9354}
2015-06-02 13:04:31 +00:00
Henrik Lundin
8e6fd46cc3 Route time-stretching metrics through libjingle
This change connects currentAccelerateRate and currentPreemptiveRate
in webrtc::NetworkStatistics, through corresponding variables in
VoiceReceiverInfo, to googAccelerateRate and googPreemptiveExpandRate.

R=tommi@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9350}
2015-06-02 07:25:03 +00:00
Peter Boström
a831dc3a7d Convert native handles to buffers before encoding.
Required to permit conversion of NV12 handles on iOS to I420 for VP8
software encoding, which blocks texture-based capture. This change
enforces that all texture-based input provides a method for converting
native handles to I420 if they are ever used with software encoders that
do not understand the native handles.

BUG=4081
R=emircan@chromium.org, glaznev@webrtc.org, hbos@webrtc.org, magjed@webrtc.org, mflodman@webrtc.org, stefan@webrtc.org, tkchin@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9347}
2015-06-01 18:06:52 +00:00
Henrik Lundin
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
Miguel Casas-Sanchez
4765070b8d Rename I420VideoFrame to VideoFrame.
This is a mechanical change since it affects so many
files.
I420VideoFrame -> VideoFrame
and reformatted.

Rationale: in the next CL I420VideoFrame will
get an indication of Pixel Format (I420 for
starters) and of storage type: usually
UNOWNED, could be SHMEM, and in the near
future will be possibly TEXTURE. See
https://codereview.chromium.org/1154153003
for the change that happened in Cr.

BUG=4730, chromium:440843
R=jiayl@webrtc.org, niklas.enbom@webrtc.org, pthatcher@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#9339}
2015-05-30 00:21:56 +00:00
Jon Hjelle
c2cb266c93 Match video orientation with device orientation for portrait and portrait upside down
BUG=
R=tkchin@webrtc.org

Committed: https://crrev.com/14c2695f2968d6e8546545a9b62940563073b4b6
Patch from Jon Hjelle <hjon@andynet.net>.

Cr-Commit-Position: refs/heads/master@{#9336}

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

Patch from Jon Hjelle <hjon@andyet.net>.

Cr-Commit-Position: refs/heads/master@{#9338}
2015-05-29 23:38:31 +00:00
Zeke Chin
7be99bdea1 Revert "Match video orientation with device orientation for portrait and portrait upside down"
Misspelt contributor's email address. Easier to revert and reland.
TBR=hjon@andyet.net

This reverts commit 14c2695f29.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#9337}
2015-05-29 23:34:43 +00:00
Jon Hjelle
14c2695f29 Match video orientation with device orientation for portrait and portrait upside down
BUG=
R=tkchin@webrtc.org

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

Patch from Jon Hjelle <hjon@andynet.net>.

Cr-Commit-Position: refs/heads/master@{#9336}
2015-05-29 22:25:00 +00:00