18491 Commits

Author SHA1 Message Date
deadbeef
6327b6491e Adding deadbeef@ as owner of Objc-C PeerConnection-related headers.
deadbeef@'s team in Kirkland works on the C++ PeerConnection
implementation, and often makes changes to the Java/Obj-C binding code
as new features are added. But the general Obj-C/Android owners are in
Stockholm. So adding deadbeef@ as an owner of this code should help
expedite code reviews for simple API changes.

BUG=None
NOTRY=True

Review-Url: https://codereview.webrtc.org/2998443002
Cr-Commit-Position: refs/heads/master@{#19259}
2017-08-07 17:00:42 +00:00
ehmaldonado
62ad60561b Whitespace change.
NOTRY=True
TBR=kjelander@webrtc.org
BUG=None

Review-Url: https://codereview.webrtc.org/2994703002
Cr-Commit-Position: refs/heads/master@{#19258}
2017-08-07 15:52:12 +00:00
brandtr
c287c80781 Remove source file writer from VideoProcessor.
It serves a very limited purpose: converting from the input YUV
file to an output Y4M file. The experimenter can do this manually,
if this is of interest. (It is generally not.)

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/2993063002
Cr-Commit-Position: refs/heads/master@{#19257}
2017-08-07 15:30:43 +00:00
brandtr
c409552052 Remove VideoProcessor interface.
BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/2994613002
Cr-Commit-Position: refs/heads/master@{#19256}
2017-08-07 15:12:33 +00:00
magjed
73c0eb5014 ObjC: Implement HW codecs in ObjC instead of C++
The current ObjC HW encoder is implemented as a C++
webrtc::VideoEncoder. We then wrap it two times in the following way:
webrtc::VideoEncoder -> RTCVideoEncoder -> webrtc::VideoEncoder.
This was originally done to minimize the code diff when landing the
injectable encoder.

This CL removes the first wrapping and implements the ObjC HW encoder
as a RTCVideoEncoder directly. Similarly, the decoder is implemented
as a RTCVideoDecoder directly.

Based on andersc@ CL: https://codereview.webrtc.org/2978623002/.

BUG=webrtc:7924

Review-Url: https://codereview.webrtc.org/2987413002
Cr-Commit-Position: refs/heads/master@{#19255}
2017-08-07 13:55:28 +00:00
brandtr
bea36fdee8 Minor improvements to VideoProcessor and corresponding test.
- Make all overridden methods of VideoProcessorImpl public,
  in preparation of the removal of the VideoProcessor interface.
- Place corresponding method definitions in correct order
  in .cc file.
- Harmonize the stdout printing.
- Make timestamp calculations adhere to set frame rate.

Except for the last bullet, these changes should not lead to
different functionality.

BUG=webrtc:6634

Review-Url: https://codereview.webrtc.org/2995513002
Cr-Commit-Position: refs/heads/master@{#19254}
2017-08-07 10:36:54 +00:00
brandtr
669ea1917e Rename WEBRTC_VIDEOPROCESSOR_H264_TESTS define to WEBRTC_USE_H264.
This is the name used in other parts of the code.

BUG=none

Review-Url: https://codereview.webrtc.org/2996463003
Cr-Commit-Position: refs/heads/master@{#19253}
2017-08-07 10:35:13 +00:00
asapersson
60dfbdbf75 Remove unused members in MediaOptimization.
BUG=none

Review-Url: https://codereview.webrtc.org/2993703002
Cr-Commit-Position: refs/heads/master@{#19252}
2017-08-07 07:03:03 +00:00
deadbeef
5c3c104ba0 Make Port (and subclasses) fully "Network"-based, instead of IP-based.
For ICE, we want sockets that are bound to specific network interfaces,
rather than to specific IP addresses. So, a while ago, we added a
"Network" class that gets passed into the Port constructor, in
addition to the IP address as before.

But we never finished the job of removing the IP address field, such that
a Port only guarantees something about the network interface it's
associated with, and not the specific IP address it ends up with.

This CL does that, and as a consequence, if a port ends up bound to
an IP address other than the "best" one (returned by Network::GetBestIP),
this *won't* be treated as an error.

This is relevant to Android, where even though we pass an IP address
into "Bind" as a way of identifying the network, the socket actually
gets bound using "android_setsocknetwork", which doesn't provide any
guarantees about the IP address. So, if a network interface has multiple
IPv6 addresses (for instance), we may not correctly predict the one
the OS will choose, and that's ok.

This CL also moves "SetAlternateLocalAddress" from VirtualSocket to
VirtualSocketServer, which makes for much more readable test code.

The next step, if there is one, is to pass along the Network class all
the way to SocketServer::Bind. Then the socket server could do smart
things with the network information. We could even stick a platform-
specific network handle in the Network object, such that the socket
server could use it for the binding, or for "sendmsg", for example.
See bug 7026 for more context about the sendmsg idea.

BUG=webrtc:7715

Review-Url: https://codereview.webrtc.org/2989303002
Cr-Commit-Position: refs/heads/master@{#19251}
2017-08-04 22:01:57 +00:00
kthelgason
d48f56de1f Destroy compression session instead of reset it on release.
This will prevent one extra initialization of the encoder each time
it's recreated.

BUG=None

Review-Url: https://codereview.webrtc.org/2992233002
Cr-Commit-Position: refs/heads/master@{#19250}
2017-08-04 17:18:43 +00:00
philipel
227f8b9be8 Reland of Fix off-by-one bugs in video_coding::PacketBuffer when the buffer is filled with a single frame. (patchset #1 id:1 of https://codereview.chromium.org/2990183002/ )
Reason for revert:
Revert to create fix CL.

Original issue's description:
> Revert of Fix off-by-one bugs in video_coding::PacketBuffer when the buffer is filled with a single frame. (patchset #5 id:80001 of https://codereview.chromium.org/2993513002/ )
>
> Reason for revert:
> Break performance bots.
>
> Original issue's description:
> > Fix off-by-one bugs in video_coding::PacketBuffer when the buffer is filled with a single frame.
> >
> > BUG=webrtc:8028
> >
> > Review-Url: https://codereview.webrtc.org/2993513002
> > Cr-Commit-Position: refs/heads/master@{#19209}
> > Committed: ee13e8919c
>
> TBR=stefan@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:8028
>
> Review-Url: https://codereview.webrtc.org/2990183002
> Cr-Commit-Position: refs/heads/master@{#19211}
> Committed: c18f1d7c94

TBR=stefan@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:8028
TBR=stefan@webrtc.org

Review-Url: https://codereview.webrtc.org/2989313003
Cr-Commit-Position: refs/heads/master@{#19249}
2017-08-04 13:39:31 +00:00
eladalon
5daecca41b Reland of SSRC and RSID may only refer to one sink each in RtpDemuxer (patchset #1 id:1 of https://codereview.webrtc.org/2993633002/ )
Reason for revert:
Relanding

Original issue's description:
> Revert of SSRC and RSID may only refer to one sink each in RtpDemuxer (patchset #15 id:280001 of https://codereview.webrtc.org/2968693002/ )
>
> Reason for revert:
> Some internal tests keep failing after this change. Try to fix it by reverting it. Will reland it if this isn't the root cause.
>
> Original issue's description:
> > SSRC and RSID may only refer to one sink each in RtpDemuxer
> >
> > RTP demuxing should only match RTP packets with one sink.
> >
> > BUG=webrtc:7135
> >
> > Review-Url: https://codereview.webrtc.org/2968693002
> > Cr-Commit-Position: refs/heads/master@{#19233}
> > Committed: 7b7e06fd23
>
> TBR=nisse@webrtc.org,danilchap@webrtc.org,perkj@webrtc.org,stefan@webrtc.org,holmer@google.com,deadbeef@webrtc.org,pthatcher@webrtc.org,steveanton@webrtc.org,eladalon@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7135
>
> Review-Url: https://codereview.webrtc.org/2993633002
> Cr-Commit-Position: refs/heads/master@{#19239}
> Committed: 59b603fbed

TBR=nisse@webrtc.org,danilchap@webrtc.org,perkj@webrtc.org,stefan@webrtc.org,holmer@google.com,deadbeef@webrtc.org,pthatcher@webrtc.org,steveanton@webrtc.org,zhihuang@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2993053002
Cr-Commit-Position: refs/heads/master@{#19248}
2017-08-04 13:34:54 +00:00
srte
186d9c3873 Renamed fields in common_types.h/RtcpStatistics.
BUG=webrtc:8033

Review-Url: https://codereview.webrtc.org/2992043002
Cr-Commit-Position: refs/heads/master@{#19247}
2017-08-04 12:03:53 +00:00
mflodman
463d7ccb36 Remove video_coding/codecs/OWNERS.
video_coding/OWNERS/ should be enough.

BUG=webrtc:8064
R=stefan@webrtc.org

Review-Url: https://codereview.webrtc.org/2992283002 .
Cr-Commit-Position: refs/heads/master@{#19246}
2017-08-04 10:58:25 +00:00
magjed
512bee3dee ObjC: Support non-native frames in encoder
Frames might be non-native, i.e. normal I420 frames, and we should
handle that in the encoder.

BUG=webrtc:7785,webrtc:7924

Review-Url: https://codereview.webrtc.org/2992943002
Cr-Commit-Position: refs/heads/master@{#19245}
2017-08-04 09:05:32 +00:00
deadbeef
3e8016e1d5 Ignore "b=AS:-1" instead of treating as a hard error.
Follow up to https://codereview.webrtc.org/2989243002/.

It turns out that "b=AS:-1" was being used to mean "no bandwidth limit",
even though just omitting "b=AS" completely will do that. So we should
treat this as a soft error for now, and give applications time to
transition to doing the standard thing.

BUG=chromium:675361

Review-Url: https://codereview.webrtc.org/2995463002
Cr-Commit-Position: refs/heads/master@{#19244}
2017-08-04 00:49:30 +00:00
zstein
d89b0bcc8a JNI wrapper for PeerConnection::SetBitrate.
BUG=webrtc:7395

Review-Url: https://codereview.webrtc.org/2868413004
Cr-Commit-Position: refs/heads/master@{#19243}
2017-08-03 18:11:40 +00:00
mbonadei
552ba37dac Removing unused declared arg
rtc_build_libjpeg is never used in the build process.

BUG=webrtc:7906
TBR=kjellander@webrtc.org

Review-Url: https://codereview.webrtc.org/2979013002
Cr-Commit-Position: refs/heads/master@{#19242}
2017-08-03 17:45:31 +00:00
deadbeef
0d48c69331 Relanding: Break peerconnection_jni.cc into multiple files, in "pc" directory.
Relanding after adding "androidnetworkmonitor_jni.h" header to jni/
directory, since some clients were including it directly.

This CL breaks peerconnection_jni.cc apart, into one file for each
class. It also moves the methods for converting between C++/Java
structs into "java_native_conversion.cc", and uses a consistent naming
scheme ("JavaToNativeX, NativeToJavaX"). These files go into a new
"pc" directory, of which deadbeef@ is added as an owner.

It also moves some relevant files to the "pc" directory that belong
there: ownedfactoryandthreads, androidnetworkmonitor_jni, and
rtcstatscollectorcallbackwrapper. This directory is intended to hold
all the files that deal with the PeerConnection API specifically, or
related classes (like DataChannel, RtpSender, MediaStreamTrack) that
are tied to it closely.

BUG=webrtc:8055

Review-Url: https://codereview.webrtc.org/2992103002
Cr-Commit-Position: refs/heads/master@{#19241}
2017-08-03 17:20:17 +00:00
ehmaldonado
367aaa7ca5 Revert of Remove linux_internal from the autoroller CQ. (patchset #1 id:1 of https://codereview.webrtc.org/2985933002/ )
Reason for revert:
linux_internal now checks that the CL is authored by a googler before executing the tests

Original issue's description:
> Remove linux_internal from the autoroller CQ.
>
> The CQ no longer has permission to schedule builds in linux_internal.
>
> NOTRY=True
> TBR=kjellander@webrtc.org
> BUG=None
>
> Review-Url: https://codereview.webrtc.org/2985933002
> Cr-Commit-Position: refs/heads/master@{#19178}
> Committed: 5ba9730265

TBR=mbonadei@webrtc.org,kjellander@webrtc.org,nodir@chromium.org
BUG=None
NOTRY=True

Review-Url: https://codereview.webrtc.org/2990233002
Cr-Commit-Position: refs/heads/master@{#19240}
2017-08-03 17:15:18 +00:00
zhihuang
59b603fbed Revert of SSRC and RSID may only refer to one sink each in RtpDemuxer (patchset #15 id:280001 of https://codereview.webrtc.org/2968693002/ )
Reason for revert:
Some internal tests keep failing after this change. Try to fix it by reverting it. Will reland it if this isn't the root cause.

Original issue's description:
> SSRC and RSID may only refer to one sink each in RtpDemuxer
>
> RTP demuxing should only match RTP packets with one sink.
>
> BUG=webrtc:7135
>
> Review-Url: https://codereview.webrtc.org/2968693002
> Cr-Commit-Position: refs/heads/master@{#19233}
> Committed: 7b7e06fd23

TBR=nisse@webrtc.org,danilchap@webrtc.org,perkj@webrtc.org,stefan@webrtc.org,holmer@google.com,deadbeef@webrtc.org,pthatcher@webrtc.org,steveanton@webrtc.org,eladalon@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2993633002
Cr-Commit-Position: refs/heads/master@{#19239}
2017-08-03 17:09:44 +00:00
buildbot
7eaa62bc48 Roll chromium_revision 14fd36f446..90a73c37c4 (491713:491751)
Change log: 14fd36f446..90a73c37c4
Full diff: 14fd36f446..90a73c37c4

Changed dependencies:
* src/base: b71b363443..2d35e4db33
* src/ios: 6d66fd40de..0b47b862b0
* src/third_party: c476acba4a..080716c2d3
* src/tools: 5d122879d7..e511107f86
DEPS diff: 14fd36f446..90a73c37c4/DEPS

No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2991353002
Cr-Commit-Position: refs/heads/master@{#19238}
2017-08-03 16:46:37 +00:00
mflodman
cc3d442469 Rename ViEEncoder to VideoStreamEncoder
This CL:
- Renames the ViEEncoder class to VideoStreamEncoder, according to discussions.
- Renames variables 'vie_encode' to 'video_stream_encoder'.
- Formatting to match style guide.
- No other changes.

BUG=webrtc:8064

Review-Url: https://codereview.webrtc.org/2995433002
Cr-Commit-Position: refs/heads/master@{#19237}
2017-08-03 15:27:51 +00:00
eladalon
8435e5518d Mark ~DirectTransport with "override."
The destructor was not explicitly marked as "virtual" nor as "override".

BUG=None

Review-Url: https://codereview.webrtc.org/2986363002
Cr-Commit-Position: refs/heads/master@{#19236}
2017-08-03 14:44:08 +00:00
buildbot
3c6d610841 Roll chromium_revision 3d47c219a8..14fd36f446 (491687:491713)
Change log: 3d47c219a8..14fd36f446
Full diff: 3d47c219a8..14fd36f446

Changed dependencies:
* src/base: 0653801eec..b71b363443
* src/ios: 88529f82f4..6d66fd40de
* src/testing: 20c775b39f..d53e1530b7
* src/third_party: 795fd21612..c476acba4a
* src/tools: 36f69c04aa..5d122879d7
DEPS diff: 3d47c219a8..14fd36f446/DEPS

No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2987423002
Cr-Commit-Position: refs/heads/master@{#19235}
2017-08-03 13:45:38 +00:00
mbonadei
5166e54a3d Tracking mock_process_thread with a GN target
include/mock/mock_process_thread.h was not tracked by GN.

This cl creates a target for it. The target is testonly because it
depends on "webrtc/test:rtp_test_utils".

This means that dependencies to this header cannot fly under the
GN radar anymore. :)

BUG=webrtc:7652
NOTRY=True

Review-Url: https://codereview.webrtc.org/2881343003
Cr-Commit-Position: refs/heads/master@{#19234}
2017-08-03 12:57:11 +00:00
eladalon
7b7e06fd23 SSRC and RSID may only refer to one sink each in RtpDemuxer
RTP demuxing should only match RTP packets with one sink.

BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2968693002
Cr-Commit-Position: refs/heads/master@{#19233}
2017-08-03 12:13:48 +00:00
Mirko Bonadei
1d0bdc296b Revert "Track recreation of DxgiTextureStaging"
This reverts commit ae1532a214bb949b3e2b0659293b5f6bab104598.

Reason for revert: It is blocking the WebRTC roll into Chromium (see: https://chromium-review.googlesource.com/c/599707).

Affected build:
https://build.chromium.org/p/tryserver.chromium.win/builders/win_chromium_compile_dbg_ng/builds/469708

Original change's description:
> Track recreation of DxgiTextureStaging
> 
> I am not sure memcmp is the right tool to compare two D3D11_TEXTURE2D_DESC
> instances. So the staging texture may be recreated for each frame, which hurts
> the performance.
> 
> Bug: webrtc:8046
> Change-Id: I60a94f468599b23dec168de55c9bc8c787ab9b7d
> Reviewed-on: https://chromium-review.googlesource.com/592088
> Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
> Commit-Queue: Zijie He <zijiehe@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#19193}

TBR=jamiewalch@chromium.org,zijiehe@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: webrtc:8046
Change-Id: I57951e22be6926bcde81cdac3ca64cab9fb43338
Reviewed-on: https://chromium-review.googlesource.com/599867
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19232}
2017-08-03 10:39:49 +00:00
buildbot
22ab393668 Roll chromium_revision dbca6182ee..3d47c219a8 (491664:491687)
Change log: dbca6182ee..3d47c219a8
Full diff: dbca6182ee..3d47c219a8

Changed dependencies:
* src/ios: 6f3c47aeac..88529f82f4
* src/testing: c1335e52f2..20c775b39f
* src/third_party: 0a90bd8528..795fd21612
* src/tools: a886cbedc6..36f69c04aa
DEPS diff: dbca6182ee..3d47c219a8/DEPS

No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2988313003
Cr-Commit-Position: refs/heads/master@{#19231}
2017-08-03 10:35:17 +00:00
Mirko Bonadei
9b1b4105a4 Revert "Add histogram for FallbackDesktopCapturerWrapper and BlankDetectorDesktopCapturerWrapper"
This reverts commit ecf3d53088c5a0a4bf3753608537f9fe7e905f98.

Reason for revert: It is blocking the WebRTC roll into Chromium (see: https://chromium-review.googlesource.com/c/599707).

Affected builds are:
https://build.chromium.org/p/tryserver.chromium.android/builders/android_arm64_dbg_recipe/builds/321334
https://build.chromium.org/p/tryserver.chromium.android/builders/android_clang_dbg_recipe/builds/322156
https://build.chromium.org/p/tryserver.chromium.android/builders/android_compile_dbg/builds/323005


Original change's description:
> Add histogram for FallbackDesktopCapturerWrapper and BlankDetectorDesktopCapturerWrapper
> 
> We should record the number of fallbacks and blank frames.
> 
> Bug: webrtc:8040
> Change-Id: I92e7b7d7b4664fee6d6bd636609e80e532aa4bd4
> Reviewed-on: https://chromium-review.googlesource.com/587688
> Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
> Commit-Queue: Zijie He <zijiehe@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#19161}

TBR=jamiewalch@chromium.org,zijiehe@chromium.org

# Not skipping CQ checks because original CL landed > 1 day ago.

Bug: webrtc:8040
Change-Id: I0d1f881e86bf437854dd265c119b0dc9c7b11ecf
Reviewed-on: https://chromium-review.googlesource.com/599847
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19230}
2017-08-03 10:19:50 +00:00
buildbot
85375d9d34 Roll chromium_revision f019957f6f..dbca6182ee (491639:491664)
Change log: f019957f6f..dbca6182ee
Full diff: f019957f6f..dbca6182ee

Changed dependencies:
* src/ios: 91d7459f42..6f3c47aeac
* src/third_party: 12c8f2df42..0a90bd8528
* src/tools: 3afca43d4d..a886cbedc6
DEPS diff: f019957f6f..dbca6182ee/DEPS

No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2991283002
Cr-Commit-Position: refs/heads/master@{#19229}
2017-08-03 07:23:46 +00:00
buildbot
bab0300a9e Roll chromium_revision 2865df694d..f019957f6f (491580:491639)
Change log: 2865df694d..f019957f6f
Full diff: 2865df694d..f019957f6f

Changed dependencies:
* src/ios: 279d315d1a..91d7459f42
* src/testing: 23fdb23e64..c1335e52f2
* src/third_party: d5d5202f77..12c8f2df42
* src/third_party/catapult: 65e2bf2345..2857b6b6c8
* src/third_party/usrsctp/usrsctplib: 76bea922c3..2f6478eb8d
* src/tools: 2d8edbbc65..3afca43d4d
DEPS diff: 2865df694d..f019957f6f/DEPS

No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2992933002
Cr-Commit-Position: refs/heads/master@{#19228}
2017-08-03 04:22:06 +00:00
buildbot
5cde747c10 Roll chromium_revision d4d3ca91d8..2865df694d (491517:491580)
Change log: d4d3ca91d8..2865df694d
Full diff: d4d3ca91d8..2865df694d

Changed dependencies:
* src/base: 23f1967080..0653801eec
* src/build: 0e4dc72f14..6a89d4e8a6
* src/ios: 234cffdb22..279d315d1a
* src/testing: ea1debe91c..23fdb23e64
* src/third_party: b3011bd18b..d5d5202f77
* src/tools: ccd8e40942..2d8edbbc65
DEPS diff: d4d3ca91d8..2865df694d/DEPS

No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2992223002
Cr-Commit-Position: refs/heads/master@{#19227}
2017-08-03 01:32:37 +00:00
zhihuang
1b1daec013 Revert of Break peerconnection_jni.cc into multiple files, in "pc" directory. (patchset #6 id:100001 of https://codereview.webrtc.org/2992103002/ )
Reason for revert:
Borken in the internal projects.

Original issue's description:
> Break peerconnection_jni.cc into multiple files, in "pc" directory.
>
> This CL breaks peerconnection_jni.cc apart, into one file for each
> class. It also moves the methods for converting between C++/Java
> structs into "java_native_conversion.cc", and uses a consistent naming
> scheme ("JavaToNativeX, NativeToJavaX"). These files go into a new
> "pc" directory, of which deadbeef@ is added as an owner.
>
> It also moves some relevant files to the "pc" directory that belong
> there: ownedfactoryandthreads, androidnetworkmonitor_jni, and
> rtcstatscollectorcallbackwrapper. This directory is intended to hold
> all the files that deal with the PeerConnection API specifically, or
> related classes (like DataChannel, RtpSender, MediaStreamTrack) that
> are tied to it closely.
>
> deadbeef@webrtc.org is added as an owner of the new "pc" subdirectory.
>
> BUG=webrtc:8055
>
> Review-Url: https://codereview.webrtc.org/2992103002
> Cr-Commit-Position: refs/heads/master@{#19223}
> Committed: dd7d8f1b60

TBR=magjed@webrtc.org,sakal@webrtc.org,deadbeef@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:8055

Review-Url: https://codereview.webrtc.org/2989323002
Cr-Commit-Position: refs/heads/master@{#19226}
2017-08-03 01:01:05 +00:00
buildbot
70336d357e Roll chromium_revision 2f85dee9d1..d4d3ca91d8 (491455:491517)
Change log: 2f85dee9d1..d4d3ca91d8
Full diff: 2f85dee9d1..d4d3ca91d8

Changed dependencies:
* src/base: 064189b42b..23f1967080
* src/build: 5b394253d7..0e4dc72f14
* src/ios: 8f3eba9aad..234cffdb22
* src/testing: 02c1795d73..ea1debe91c
* src/third_party: e624d38895..b3011bd18b
* src/tools: d6c874fcd0..ccd8e40942
DEPS diff: 2f85dee9d1..d4d3ca91d8/DEPS

No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2992913002
Cr-Commit-Position: refs/heads/master@{#19225}
2017-08-02 22:40:59 +00:00
braveyao
adb161fecc windowCapture: return 1x1 frame to minimized winodw on Linux.
During window capturing, if the target window is minimized, OSX/Windows
will return a 1x1 frame and then webrtc knows to replace it with a black
frame. Let's do same on Linux too.

BUG=568840

Review-Url: https://codereview.webrtc.org/2989233002
Cr-Commit-Position: refs/heads/master@{#19224}
2017-08-02 22:37:29 +00:00
deadbeef
dd7d8f1b60 Break peerconnection_jni.cc into multiple files, in "pc" directory.
This CL breaks peerconnection_jni.cc apart, into one file for each
class. It also moves the methods for converting between C++/Java
structs into "java_native_conversion.cc", and uses a consistent naming
scheme ("JavaToNativeX, NativeToJavaX"). These files go into a new
"pc" directory, of which deadbeef@ is added as an owner.

It also moves some relevant files to the "pc" directory that belong
there: ownedfactoryandthreads, androidnetworkmonitor_jni, and
rtcstatscollectorcallbackwrapper. This directory is intended to hold
all the files that deal with the PeerConnection API specifically, or
related classes (like DataChannel, RtpSender, MediaStreamTrack) that
are tied to it closely.

deadbeef@webrtc.org is added as an owner of the new "pc" subdirectory.

BUG=webrtc:8055

Review-Url: https://codereview.webrtc.org/2992103002
Cr-Commit-Position: refs/heads/master@{#19223}
2017-08-02 22:05:10 +00:00
buildbot
5db765792e Roll chromium_revision bac0f1afc8..2f85dee9d1 (491386:491455)
Change log: bac0f1afc8..2f85dee9d1
Full diff: bac0f1afc8..2f85dee9d1

Changed dependencies:
* src/base: d0b6b16d42..064189b42b
* src/build: c15e74686d..5b394253d7
* src/ios: 71d12fef6d..8f3eba9aad
* src/third_party: d99010fe32..e624d38895
* src/third_party/catapult: 0327c967ed..65e2bf2345
* src/tools: ed59da6f50..d6c874fcd0
DEPS diff: bac0f1afc8..2f85dee9d1/DEPS

No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2992173003
Cr-Commit-Position: refs/heads/master@{#19222}
2017-08-02 19:50:25 +00:00
deadbeef
bc88c6ba98 Reject negative values for "b=AS".
It doesn't make sense to have a negative RTP session bandwidth; RFC3550
doesn't define any meaning for this. So just treat it as invalid SDP.

BUG=chromium:675361

Review-Url: https://codereview.webrtc.org/2989243002
Cr-Commit-Position: refs/heads/master@{#19221}
2017-08-02 18:26:34 +00:00
buildbot
288392a5ab Roll chromium_revision 38e8c8f8d0..bac0f1afc8 (491349:491386)
Change log: 38e8c8f8d0..bac0f1afc8
Full diff: 38e8c8f8d0..bac0f1afc8

Changed dependencies:
* src/ios: 128c53aa8a..71d12fef6d
* src/testing: 6569db801d..02c1795d73
* src/third_party: b826bdac3d..d99010fe32
* src/tools: ea23202502..ed59da6f50
DEPS diff: 38e8c8f8d0..bac0f1afc8/DEPS

No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2986323002
Cr-Commit-Position: refs/heads/master@{#19220}
2017-08-02 16:25:57 +00:00
eladalon
c0d481a4a6 Protected streams report RTP messages directly to the FlexFec streams
In preparation of making RTP packet demuxing many-to-one (one SSRC goes to one sink, but one sink may have multiple SSRCs), we need to remove FlexFEC's dependence on being able to register itself with the demuxer. Instead, we register FlexFEC streams with the streams they protect; when those streams get packets, they'll forward them to their associated FlexFEC streams, too.

BUG=webrtc:7135

Review-Url: https://codereview.webrtc.org/2974453002
Cr-Commit-Position: refs/heads/master@{#19219}
2017-08-02 14:39:07 +00:00
magjed
a67bd9d641 Add denicija@ and kthelgason@ as owners of webrtc/sdk/objc
It's time.

TBR=denicija@webrtc.org,kthelgason@webrtc.org
NOTRY=TRUE
BUG=NONE

Review-Url: https://codereview.webrtc.org/2994493002
Cr-Commit-Position: refs/heads/master@{#19218}
2017-08-02 14:27:13 +00:00
eladalon
3d4c28778e Make FlexfecReceiveStreamImpl::started_ into std::atomic<bool>
FlexfecReceiveStreamImpl::crit_ was only protecting one boolean, so it's probably better to just make sure that boolean is atomic.

BUG=None

Review-Url: https://codereview.webrtc.org/2991533002
Cr-Commit-Position: refs/heads/master@{#19217}
2017-08-02 14:17:04 +00:00
buildbot
a1eef11516 Roll chromium_revision ad18a3e1e9..38e8c8f8d0 (491326:491349)
Change log: ad18a3e1e9..38e8c8f8d0
Full diff: ad18a3e1e9..38e8c8f8d0

Changed dependencies:
* src/ios: ea7c04df19..128c53aa8a
* src/third_party: e4a3785178..b826bdac3d
* src/third_party/catapult: 95988f7874..0327c967ed
* src/tools: e2a32a060d..ea23202502
DEPS diff: ad18a3e1e9..38e8c8f8d0/DEPS

No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2988323002
Cr-Commit-Position: refs/heads/master@{#19216}
2017-08-02 13:37:30 +00:00
eladalon
32040efc61 Add PacketRouterTest.Sanity_NoModuleRegistered_*
Add some sanity tests for PacketRouter when no modules are registered.

BUG=None

Review-Url: https://codereview.webrtc.org/2986093003
Cr-Commit-Position: refs/heads/master@{#19215}
2017-08-02 13:29:00 +00:00
eladalon
88df90b1fd Don't use the Force(Demuxer), Luke.
Remove deprecated ctros of DirectTransport.

BUG=None

Review-Url: https://codereview.webrtc.org/2985413002
Cr-Commit-Position: refs/heads/master@{#19214}
2017-08-02 13:18:41 +00:00
magjed
5805c9dbda ObjC: Add implementationName for injectable codecs
BUG=webrtc:7924

Review-Url: https://codereview.webrtc.org/2987253003
Cr-Commit-Position: refs/heads/master@{#19213}
2017-08-02 12:26:28 +00:00
philipel
c5fb4683e5 Don't clear newer packets from the video_coding::PacketBuffer when calling ClearTo.
BUG=webrtc:8060

Review-Url: https://codereview.webrtc.org/2987013002
Cr-Commit-Position: refs/heads/master@{#19212}
2017-08-02 11:28:57 +00:00
philipel
c18f1d7c94 Revert of Fix off-by-one bugs in video_coding::PacketBuffer when the buffer is filled with a single frame. (patchset #5 id:80001 of https://codereview.chromium.org/2993513002/ )
Reason for revert:
Break performance bots.

Original issue's description:
> Fix off-by-one bugs in video_coding::PacketBuffer when the buffer is filled with a single frame.
>
> BUG=webrtc:8028
>
> Review-Url: https://codereview.webrtc.org/2993513002
> Cr-Commit-Position: refs/heads/master@{#19209}
> Committed: ee13e8919c

TBR=stefan@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:8028

Review-Url: https://codereview.webrtc.org/2990183002
Cr-Commit-Position: refs/heads/master@{#19211}
2017-08-02 11:18:02 +00:00
buildbot
605da2fed1 Roll chromium_revision b0cc459877..ad18a3e1e9 (491287:491326)
Change log: b0cc459877..ad18a3e1e9
Full diff: b0cc459877..ad18a3e1e9

Changed dependencies:
* src/ios: d5ab1ff88b..ea7c04df19
* src/third_party: f55ea9fc8b..e4a3785178
* src/tools: 094dcc4b33..e2a32a060d
DEPS diff: b0cc459877..ad18a3e1e9/DEPS

No update to Clang.

TBR=
BUG=None

Review-Url: https://codereview.webrtc.org/2992193002
Cr-Commit-Position: refs/heads/master@{#19210}
2017-08-02 10:19:57 +00:00