Commit Graph

9743 Commits

Author SHA1 Message Date
38778b046f Add unit test for nack bandwidth constraint.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#10111}
2015-09-29 16:48:30 +00:00
98db68fdaa If gather_continually is set to true, keep the last port allocator session running while stopping all existing process of getting ports (when p2ptransportchannel first becomes writable).
BUG=5034

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

Cr-Commit-Position: refs/heads/master@{#10110}
2015-09-29 14:58:26 +00:00
24b52f8322 Android GlRectDrawer: Add test for OES texture rendering
BUG=webrtc:4742
R=hbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10109}
2015-09-29 14:40:11 +00:00
1d640e53bd JavaVideoRendererWrapper: Use jlongFromPointer() to convert frame pointer to jlong
The purpose of this CL is to use jlongFromPointer() for converting frame pointers to jlong instead of implicit casts which is not safe.

In order to respect constness, I had to make a small helper function for this.

BUG=webrtc:4993
R=perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10108}
2015-09-29 14:33:27 +00:00
63b345441a Simplify handling of options in WebRtcVoiceMediaEngine.
Also removes unnecessary typedef ChannelList.

BUG=webrtc:4690

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

Cr-Commit-Position: refs/heads/master@{#10107}
2015-09-29 13:06:36 +00:00
86fd9ed6f9 Set RtcpSender transport at construction.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#10106}
2015-09-29 11:45:51 +00:00
38502a7be4 Remove isolate_deps_dir from .gitignore
It turns out that if a bot is interrupted during test execution,
the existence of this directory causes the next build to fail.
This usually happens when the Buildbot master is restarted.

TBR=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10105}
2015-09-29 10:34:52 +00:00
092508a5c5 Fix bug in ramp-up tests stats where rtx was accounted for in the media ssrc.
BUG=chromium:536941

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

Cr-Commit-Position: refs/heads/master@{#10104}
2015-09-29 09:26:50 +00:00
b5815c8013 Revert of Android VideoCapturer: Send ByteBuffer instead of byte[] (patchset #1 id:1 of https://codereview.webrtc.org/1372813002/ )
Reason for revert:
The top row in the video stream from the camera is messed up. The byte[] pointer is not the same as GetDirectBufferAddress() apparently.

Original issue's description:
> Android VideoCapturer: Send ByteBuffer instead of byte[]
>
> The purpose with this CL is to replace GetByteArrayElements() and ReleaseByteArrayElements() with GetDirectBufferAddress().
>
> R=hbos@webrtc.org
>
> Committed: https://crrev.com/cb3649b40b3fd6d5bbb0a92003b717e46ce90924
> Cr-Commit-Position: refs/heads/master@{#10091}

TBR=hbos@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#10103}
2015-09-29 08:13:47 +00:00
fb9e76369d Remove last use of ACMAMRPackingFormat
It was no-op used in FileRecorder.

BUG=webrtc:3520

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

Cr-Commit-Position: refs/heads/master@{#10102}
2015-09-29 06:30:31 +00:00
d6024e3c34 Roll chromium_revision 310ea93..8cf53d6 (349094:351112)
Our perf test suite webrtc_perf_tests timed out, which caused most
of the delay landing this (https://crbug.comn/535973 and
https://codereview.chromium.org/1370133004).

Other problems with executing Android tests also needed to be
resolved in order to land this (http://crbug.com/534849).

Libvpx has moved from third_party/libvpx to third_party/libvpx_new
as of https://codereview.chromium.org/1323333002/

Android GN was blocking this roll due to a problem that ended up
being caused by a bug (http://crbug.com/534849).

Relevant changes:
* src/buildtools: f7310ee..8d89c1b
* src/third_party/boringssl/src: 1d128f3..4c60d35
* src/third_party/icu: 6b3ce81..423fc7e
* src/third_party/libjpeg_turbo: 631e2dd..e4e7503
* src/third_party/libvpx: ac1772e..70db223
* src/third_party/libyuv: fcacbfb..62c49dc
* src/tools/gyp: 5d01a8c..01528c7
* src/tools/swarming_client: 77f720b..6e5d2b2
Details: 310ea93..8cf53d6/DEPS

Clang version changed 245965:247874
Details: 310ea93..8cf53d6/tools/clang/scripts/update.sh

BUG=481034, 535973
TBR=marpan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10101}
2015-09-29 04:16:53 +00:00
70ab1a1ca8 Exposing RtpSenders and RtpReceivers from PeerConnection.
This CL essentially converts [Local|Remote]TrackHandler to
Rtp[Sender|Receiver], and adds a "SetTrack" method for RtpSender.

It also gets rid of MediaStreamHandler and MediaStreamHandlerContainer,
since these classes weren't really anything more than containers.
PeerConnection now manages the RtpSenders and RtpReceivers directly.

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

Cr-Commit-Position: refs/heads/master@{#10100}
2015-09-28 23:54:02 +00:00
8e9cb09506 Android: Add unittests for SurfaceTextureHelper
BUG=webrtc:4993
R=hbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10099}
2015-09-28 21:15:23 +00:00
4fa648be68 Adding 20-second timeout to Java and Objective-C tests.
This is the same sort of thing we do in C++ end-to-end PeerConnection
tests.

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

Cr-Commit-Position: refs/heads/master@{#10098}
2015-09-28 21:09:00 +00:00
8108764552 Analyze support in gyp_webrtc
BUG=chromium:482463
TESTED=Manually tested using the JSON files attached to https://code.google.com/p/chromium/issues/detail?id=482463#c2 and:
webrtc/build/gyp_webrtc --analyzer nothing-files.json nothing-files-RESULT.json
webrtc/build/gyp_webrtc --analyzer everything-files.json everything-files-RESULT.json
webrtc/build/gyp_webrtc --analyzer test_support_unittests-files.json test_support_unittests-files-RESULT.json
Then I verified the result-json contained the expected output.

R=phoglund@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10097}
2015-09-28 19:56:50 +00:00
2d566686a2 Unify Transport and newapi::Transport interfaces.
BUG=webrtc:1695
R=stefan@webrtc.org
TBR=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10096}
2015-09-28 16:59:36 +00:00
8387c5f449 Remove AMR format parameter from AudioCoder in utility
The parameter was never used.

BUG=webrtc:3520

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

Cr-Commit-Position: refs/heads/master@{#10095}
2015-09-28 16:24:56 +00:00
1968d3f357 Simplify VCMTimestampMap.
Fixes code formatting and uses size_t properly. Also makes use of
IsNewerTimestamp instead of a simple > check, which should fix an
edge-case bug.

BUG=
R=stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10094}
2015-09-28 15:55:52 +00:00
8c404fab8d When doing DisableEquivalentPhases, exclude those AllocationSequences
whose network has ever been removed. It is unlikely the sockets/ports/candidates created from
those AllocationSequences will still be valid.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#10093}
2015-09-28 14:59:50 +00:00
1f429e3418 Passing the new policy from PeerConnection RTCConfiguration to
p2ptransportchannel.  This CL does not use the new policy yet.
BUG=

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

Cr-Commit-Position: refs/heads/master@{#10092}
2015-09-28 14:57:39 +00:00
cb3649b40b Android VideoCapturer: Send ByteBuffer instead of byte[]
The purpose with this CL is to replace GetByteArrayElements() and ReleaseByteArrayElements() with GetDirectBufferAddress().

R=hbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10091}
2015-09-28 14:42:12 +00:00
4b808eee85 ACM: Remove unused and deprecated types
None of these were used.

BUG=webrtc:3520
R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10090}
2015-09-28 13:52:56 +00:00
1bd0e03ce5 ACM: Removing runtime APIs related to playout mode
The playout mode in NetEq can still be set through the constructor
configuration.

BUG=webrtc:3520

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

Cr-Commit-Position: refs/heads/master@{#10089}
2015-09-28 13:12:21 +00:00
d417523194 Minor fix for debug logging on Android
BUG=NONE

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

Cr-Commit-Position: refs/heads/master@{#10088}
2015-09-28 11:50:18 +00:00
4fbd145dce Fix suspend below min bitrate in new API by making it possible to set min bitrate at the receive-side.
In addition to this the ramp-up tests are refactored to use a receive call instead of only a remote bitrate estimator, and to make use of BaseTest.

BUG=webrtc:4836

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

Cr-Commit-Position: refs/heads/master@{#10087}
2015-09-28 10:57:23 +00:00
Per
d2413e514a Fix the C++ SurfaceTextureHolder
This cl moves back loading java SurfaceTextureHolder to the ClassReferenceHolder and use FindClass through ClassReferenceHolder. Without this, jni->FindClass returns nullptr in surfacetexturehelper_jni.cc.

BUG=webrtc:4993
R=magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10086}
2015-09-28 09:48:23 +00:00
1ab271c1c4 Android SurfaceTextureHelper: Don't wait for pending frames in disconnect()
This CL also makes some small non-functional changes in ThreadUtils and EglBase to support SurfaceTextures and SurfaceTextureHelper.

BUG=webrtc:4993
R=hbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10085}
2015-09-28 09:06:33 +00:00
Per
3e9eb4ba01 Add C++ SurfaceTextureHandler
This cl adds a C++ counterpart of the Java SurfaceTextureHandler. It can be used for creating a webrtc::VideoFrames from a native handle and also guarantee that the Java SurfaceTexture is notified when the VideoFrame is no longer in use.

BUG=webrtc:4993
R=magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10084}
2015-09-28 08:52:36 +00:00
82d6f2a3f7 ACM: Remove ACMVQMonCallback object
It was never used, and the underlying functionality was removed long
ago.

BUG=3520
R=kwiberg@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10083}
2015-09-28 08:25:33 +00:00
69984f0533 Fixes logging levels in WebRtcAudioXXX.java classes
BUG=NONE
R=magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10082}
2015-09-28 07:24:16 +00:00
d6d27e7340 Update isolate.gypi to support Swarming + move .isolate files
This updates the isolate.gypi copies we have to maintain in our
code repo to Chromium's revision 310ea93.
The changes about generating .isolated.gen.json files are needed
to support running with Swarming (https://www.chromium.org/developers/testing/isolated-testing)

Since isolated testing is now using a new launch script
in tools: isolate_driver.py, that's added to our links
script.

In order to use isolate_driver.py, the .isolate files must be in the
same directory as the test_name_run target is defined, which meant
I had to move around some of the isolate files and targets below
webrtc/modules.

BUG=497757
R=maruel@chromium.org
TBR=henrik.lundin@webrtc.org, mflodman@webrtc.org, niklas.enbom@webrtc.org
TESTED=Clobbered trybots:
git cl try -c --bot=linux_compile_rel --bot=mac_compile_rel --bot=win_compile_rel --bot=android_compile_rel --bot=ios_rel -m tryserver.webrtc

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

Cr-Commit-Position: refs/heads/master@{#10081}
2015-09-25 20:19:21 +00:00
c97be6a741 Disable TestUdpReadyToSendIPv4 under MSan.
It has become extra flaky lately, and is preventing people from
using the CQ.

BUG=webrtc:4958

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

Cr-Commit-Position: refs/heads/master@{#10080}
2015-09-25 18:00:54 +00:00
4d47aa335c Fallback to system log when webrtc tracing not enabled.
BUG=
R=glaznev@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10079}
2015-09-25 17:04:36 +00:00
1741770742 Implement a high-QP threshold for Android H.264.
Android hardware H.264 seems to keep a steady high-QP flow instead of
dropping frames, so framedrops aren't sufficient to detect a bad state
where downscaling would be beneficial.

BUG=webrtc:4968
R=magjed@webrtc.org, stefan@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10078}
2015-09-25 15:03:37 +00:00
a323fd66de Removes Nexus 6 from OpenSL ES blacklist.
BUG=b/1370703002
R=magjed@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10077}
2015-09-25 14:25:40 +00:00
88799d9c1f RTCEAGLVideoView: Fix GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT error.
Fix an issue where using setNeedsDisplay on a GLKView which has a frame
with size zero will make GLKView/iOS output the following error:

  Failed to bind EAGLDrawable: <CAEAGLLayer: 0x1742282e0> to
    GL_RENDERBUFFER 1 Failed to make complete framebuffer object 8cd6

(The error code 8cd6 corresponds to
GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT.)

GLKView will internally setup it's render buffer when the delegate is
about to draw into it. Previously when enableSetNeedsDisplay was set to
YES (default), then GLKView would still attempt to setup it's internal
buffer even if it's frame size is zero and that would cause
GL_FRAMEBUFFER_INCOMPLETE_ATTACHMENT.

By using enableSetNeedsDisplay = NO, RTCEAGLVideoView can guard against
calling -[GLKView display] if it's current frame size is empty.

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

Cr-Commit-Position: refs/heads/master@{#10076}
2015-09-25 13:57:54 +00:00
94c01051a8 Added peah@ to the watch lists
Review URL: https://codereview.webrtc.org/1372543002

Cr-Commit-Position: refs/heads/master@{#10075}
2015-09-25 13:16:38 +00:00
702f39726b GN: Do not use forward_dependent_configs_from variable.
It is deprecated and public_deps should be used instead, which will have
the
same effect.

BUG=None
R=brettw@chromium.org,kjellander@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10074}
2015-09-25 12:57:47 +00:00
5c389d3e09 Split webrtc/video into webrtc/{audio,call,video}.
Moves audio_receive_stream.{h,cc} into webrtc/audio, and common parts
into webrtc/call, splitting out audio/shared components with separate
OWNERS files.

BUG=webrtc:4690
R=solenberg@webrtc.org, tina.legrand@webrtc.org
TBR=mflodman@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10073}
2015-09-25 11:58:39 +00:00
82e20554cb Modifies invalid DCHECK in AudioRecordJni::OnCacheDirectBufferAddress()
Ensures that we can restart audio recording on Android without hitting
a DCHECK. Also adds a symmetric design for the playout side.

BUG=webrtc:5000
TEST=modules_unittests --gtest_filter=AudioDevice*

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

Cr-Commit-Position: refs/heads/master@{#10072}
2015-09-25 11:26:19 +00:00
44d5d7ba42 Autoroll: Update checkout before reading chromium_revision.
Ensure the checkout is updated _before_ reading the current
revision from the DEPS file. This will avoid errors when a checkout
is not up to date, as updating happened after reading the revision
before this change.

BUG=webrtc:4688
R=phoglund@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10071}
2015-09-25 11:21:55 +00:00
495d2fdd65 Reland of "Android GlRectDrawer: Add test for RGB rendering"
Reland of https://codereview.webrtc.org/1367923002/.

The bug was that not all platforms support glReadPixels() with GL_RGB. This CL uses GL_RGBA instead.

BUG=webrtc:4742
R=hbos@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10070}
2015-09-25 08:55:42 +00:00
3fd7be4cb1 Revert of Don't link with audio codecs that we don't use (patchset #4 id:60001 of https://codereview.webrtc.org/1349393003/ )
Reason for revert:
Breaking Chromium FYI bots.

Original issue's description:
> Don't link with audio codecs that we don't use
>
> We used to link with all audio codecs unconditionally (except Opus);
> this patch makes gyp and gn only link to the ones that are used.
>
> (This unfortunately fails to have a measurable impact on Chromium
> binary size, at least on x86_64 Linux; it turns out that iLBC and iSAC
> fix were already being excluded from Chromium by some other means
> (likely just the linker omitting compilation units with no incoming
> references).)
>
> BUG=webrtc:4557
>
> Committed: https://crrev.com/f66a9251424351ea6d631c54dd1feb64cc13d809
> Cr-Commit-Position: refs/heads/master@{#10046}

TBR=henrik.lundin@webrtc.org,tina.legrand@webrtc.org,kjellander@webrtc.org,kwiberg@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:4557

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

Cr-Commit-Position: refs/heads/master@{#10069}
2015-09-25 08:36:11 +00:00
a53e383d7d Revert of CodecOwner: Don't look at definitions for classes we don't link with (patchset #1 id:1 of https://codereview.webrtc.org/1364233002/ )
Reason for revert:
Breaking Chromium FYI bots.

Original issue's description:
> CodecOwner: Don't look at definitions for classes we don't link with
>
> It's good hygiene and just generally the right thing to do. And
> apparently at least sometimes required by Microsoft's compiler.
>
> Committed: https://crrev.com/f4d38ea57aa739b525066b095468cb4af1d2799b
> Cr-Commit-Position: refs/heads/master@{#10060}

TBR=henrik.lundin@webrtc.org,tommi@webrtc.org,kwiberg@webrtc.org
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true

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

Cr-Commit-Position: refs/heads/master@{#10068}
2015-09-25 08:31:01 +00:00
67e0cf15d3 Android AppRTCDemo: Add slider for changing camera capture quality during call
This CL adds a slider that can change capture resolution and fps during a call. The camera will no be reconfigured, but the frames will be downscaled/dropped in software by cricket::VideoAdapter in the cricket::VideoCapturer. This is controlled with VideoCapturerAndroid.onOutputFormatRequest(). The slider is turned off by default and can be enabled with a checkbox under 'WebRTC Video Settings'.

R=glaznev@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10067}
2015-09-25 06:23:49 +00:00
574d5daa6d CodecOwner::SetEncoders: Return error code when given bad arguments
Instead of FATAL on a bad codec specification, log and return an error
code. This is a band-aid until callers are taught to only give it good
specifications.

BUG=webrtc:5033, chromium:526478

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

Cr-Commit-Position: refs/heads/master@{#10066}
2015-09-25 05:54:00 +00:00
6979b024d7 Adding stub files for RtpSender/RtpReceiver.
This will allow Chromium's build files to be updated, so that when the
real RtpSender CL is submitted, it doesn't break the FYI bots.

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

Cr-Commit-Position: refs/heads/master@{#10065}
2015-09-24 23:47:59 +00:00
4ba059d218 Remove custom handler since the logger already logs to console by default.
BUG=
R=glaznev@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10064}
2015-09-24 21:36:17 +00:00
8937437872 Do not prune if the current best connection is weak.
Otherwise, we may delete a useful connection because the current best connection may be failing.

BUG=

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

Cr-Commit-Position: refs/heads/master@{#10063}
2015-09-24 20:14:51 +00:00
ea70d77fd5 VideoCapturerAndroid: Add test for making calls on stopped camera
BUG=webrtc:4978
R=perkj@webrtc.org

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

Cr-Commit-Position: refs/heads/master@{#10062}
2015-09-24 19:41:08 +00:00