Commit Graph

510 Commits

Author SHA1 Message Date
6e4a4427dc Revert of Android Logging.java: Load native library only when needed (patchset #3 id:40001 of https://codereview.webrtc.org/2803203002/ )
Reason for revert:
Breaks C++ logs in Java apps.

Original issue's description:
> Android Logging.java: Load native library only when needed
>
> Logging.java currently always tries to load jingle_peerconnection_so in
> the static section, but some clients don't want to use it. This CL loads
> jingle_peerconnection_so only when a client requests it by calling one
> of:
>  * Logging.enableLogThreads
>  * Logging.enableLogTimeStamps
>  * Logging.enableTracing
>  * Logging.enableLogToDebugOutput
>
> BUG=b/36410678
>
> Review-Url: https://codereview.webrtc.org/2803203002
> Cr-Commit-Position: refs/heads/master@{#17647}
> Committed: dee5eb14e1

TBR=sakal@webrtc.org,glaznev@webrtc.org,noahric@chromium.org,magjed@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=b/36410678

Review-Url: https://codereview.webrtc.org/2816753002
Cr-Commit-Position: refs/heads/master@{#17676}
2017-04-12 16:28:24 +00:00
844d2b9670 Reconfigure capture session in a single transaction.
If we don't reconfigure capture session in a single transaction,
RTCCameraPreviewView goes transparent when switching cameras. This is
undesired behavior.

BUG=webrtc:7177

Review-Url: https://codereview.webrtc.org/2811643006
Cr-Commit-Position: refs/heads/master@{#17664}
2017-04-12 08:27:44 +00:00
00d802b6ee Reland of Add content type information to encoded images and corresponding rtp extension header (patchset #1 id:1 of https://codereview.webrtc.org/2809653004/ )
Reason for revert:
Fix failing bots.

BUG=webrtc:7420

Review-Url: https://codereview.webrtc.org/2816493002
Cr-Commit-Position: refs/heads/master@{#17658}
2017-04-11 17:34:31 +00:00
27c46e2872 Revert of Add content type information to encoded images and corresponding rtp extension header (patchset #4 id:400001 of https://codereview.webrtc.org/2812913002/ )
Reason for revert:
Breaks android buildbots.

Original issue's description:
> Reland of Add content type information to encoded images and corresponding rtp extension header (patchset #1 id:1 of https://codereview.webrtc.org/2816463002/ )
>
> Reason for revert:
> Reland with appropriate changes to API to not break depending projects.
>
> Original issue's description:
> > Revert of Add content type information to encoded images and corresponding rtp extension header (patchset #31 id:600001 of https://codereview.webrtc.org/2772033002/ )
> >
> > Reason for revert:
> > Breaks dependent projects.
> >
> > Original issue's description:
> > > Add content type information to Encoded Images and add corresponding RTP extension header.
> > > Use it to separate UMA e2e delay metric between screenshare from video.
> > > Content type extension is set based on encoder settings and processed and decoders.
> > >
> > > Also,
> > > Fix full-stack-tests to calculate RTT correctly, so new metric could be tested.
> > >
> > > BUG=webrtc:7420
> > >
> > > Review-Url: https://codereview.webrtc.org/2772033002
> > > Cr-Commit-Position: refs/heads/master@{#17640}
> > > Committed: 64e739aeae
> >
> > TBR=tommi@webrtc.org,sprang@webrtc.org,stefan@webrtc.org,nisse@webrtc.org,mflodman@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=webrtc:7420
> >
> > Review-Url: https://codereview.webrtc.org/2816463002
> > Cr-Commit-Position: refs/heads/master@{#17644}
> > Committed: 5721866808
>
> TBR=tommi@webrtc.org,sprang@webrtc.org,stefan@webrtc.org,nisse@webrtc.org,mflodman@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7420
>
> Review-Url: https://codereview.webrtc.org/2812913002
> Cr-Commit-Position: refs/heads/master@{#17651}
> Committed: 774f6b4b96

TBR=tommi@webrtc.org,sprang@webrtc.org,stefan@webrtc.org,nisse@webrtc.org,mflodman@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7420

Review-Url: https://codereview.webrtc.org/2809653004
Cr-Commit-Position: refs/heads/master@{#17653}
2017-04-11 13:20:05 +00:00
774f6b4b96 Reland of Add content type information to encoded images and corresponding rtp extension header (patchset #1 id:1 of https://codereview.webrtc.org/2816463002/ )
Reason for revert:
Reland with appropriate changes to API to not break depending projects.

Original issue's description:
> Revert of Add content type information to encoded images and corresponding rtp extension header (patchset #31 id:600001 of https://codereview.webrtc.org/2772033002/ )
>
> Reason for revert:
> Breaks dependent projects.
>
> Original issue's description:
> > Add content type information to Encoded Images and add corresponding RTP extension header.
> > Use it to separate UMA e2e delay metric between screenshare from video.
> > Content type extension is set based on encoder settings and processed and decoders.
> >
> > Also,
> > Fix full-stack-tests to calculate RTT correctly, so new metric could be tested.
> >
> > BUG=webrtc:7420
> >
> > Review-Url: https://codereview.webrtc.org/2772033002
> > Cr-Commit-Position: refs/heads/master@{#17640}
> > Committed: 64e739aeae
>
> TBR=tommi@webrtc.org,sprang@webrtc.org,stefan@webrtc.org,nisse@webrtc.org,mflodman@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7420
>
> Review-Url: https://codereview.webrtc.org/2816463002
> Cr-Commit-Position: refs/heads/master@{#17644}
> Committed: 5721866808

TBR=tommi@webrtc.org,sprang@webrtc.org,stefan@webrtc.org,nisse@webrtc.org,mflodman@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7420

Review-Url: https://codereview.webrtc.org/2812913002
Cr-Commit-Position: refs/heads/master@{#17651}
2017-04-11 13:12:37 +00:00
24da37b0bf ObjC: RTCVideoSource cleanup
RTCVideoSource was recently added in
https://codereview.webrtc.org/2745193002/. This CL addresses some post
commit feedback.

BUG=webrtc:7177

Review-Url: https://codereview.webrtc.org/2812533003
Cr-Commit-Position: refs/heads/master@{#17649}
2017-04-11 11:50:15 +00:00
29dbb1992a Revert of Add content type information to encoded images and corresponding rtp extension header (patchset #1 id:1 of https://codereview.webrtc.org/2811963002/ )
Reason for revert:
Relanded by mistake.

Original issue's description:
> Reland of Add content type information to encoded images and corresponding rtp extension header (patchset #1 id:1 of https://codereview.webrtc.org/2816463002/ )
>
> Reason for revert:
> Reland with fixes which break API
>
> Original issue's description:
> > Revert of Add content type information to encoded images and corresponding rtp extension header (patchset #31 id:600001 of https://codereview.webrtc.org/2772033002/ )
> >
> > Reason for revert:
> > Breaks dependent projects.
> >
> > Original issue's description:
> > > Add content type information to Encoded Images and add corresponding RTP extension header.
> > > Use it to separate UMA e2e delay metric between screenshare from video.
> > > Content type extension is set based on encoder settings and processed and decoders.
> > >
> > > Also,
> > > Fix full-stack-tests to calculate RTT correctly, so new metric could be tested.
> > >
> > > BUG=webrtc:7420
> > >
> > > Review-Url: https://codereview.webrtc.org/2772033002
> > > Cr-Commit-Position: refs/heads/master@{#17640}
> > > Committed: 64e739aeae
> >
> > TBR=tommi@webrtc.org,sprang@webrtc.org,stefan@webrtc.org,nisse@webrtc.org,mflodman@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=webrtc:7420
> >
> > Review-Url: https://codereview.webrtc.org/2816463002
> > Cr-Commit-Position: refs/heads/master@{#17644}
> > Committed: 5721866808
>
> TBR=tommi@webrtc.org,sprang@webrtc.org,stefan@webrtc.org,nisse@webrtc.org,mflodman@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7420
>
> Review-Url: https://codereview.webrtc.org/2811963002
> Cr-Commit-Position: refs/heads/master@{#17645}
> Committed: 4fa0c4f97f

TBR=tommi@webrtc.org,sprang@webrtc.org,stefan@webrtc.org,nisse@webrtc.org,mflodman@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7420

Review-Url: https://codereview.webrtc.org/2810923004
Cr-Commit-Position: refs/heads/master@{#17648}
2017-04-11 11:49:07 +00:00
dee5eb14e1 Android Logging.java: Load native library only when needed
Logging.java currently always tries to load jingle_peerconnection_so in
the static section, but some clients don't want to use it. This CL loads
jingle_peerconnection_so only when a client requests it by calling one
of:
 * Logging.enableLogThreads
 * Logging.enableLogTimeStamps
 * Logging.enableTracing
 * Logging.enableLogToDebugOutput

BUG=b/36410678

Review-Url: https://codereview.webrtc.org/2803203002
Cr-Commit-Position: refs/heads/master@{#17647}
2017-04-11 11:21:50 +00:00
4fa0c4f97f Reland of Add content type information to encoded images and corresponding rtp extension header (patchset #1 id:1 of https://codereview.webrtc.org/2816463002/ )
Reason for revert:
Reland with fixes which break API

Original issue's description:
> Revert of Add content type information to encoded images and corresponding rtp extension header (patchset #31 id:600001 of https://codereview.webrtc.org/2772033002/ )
>
> Reason for revert:
> Breaks dependent projects.
>
> Original issue's description:
> > Add content type information to Encoded Images and add corresponding RTP extension header.
> > Use it to separate UMA e2e delay metric between screenshare from video.
> > Content type extension is set based on encoder settings and processed and decoders.
> >
> > Also,
> > Fix full-stack-tests to calculate RTT correctly, so new metric could be tested.
> >
> > BUG=webrtc:7420
> >
> > Review-Url: https://codereview.webrtc.org/2772033002
> > Cr-Commit-Position: refs/heads/master@{#17640}
> > Committed: 64e739aeae
>
> TBR=tommi@webrtc.org,sprang@webrtc.org,stefan@webrtc.org,nisse@webrtc.org,mflodman@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7420
>
> Review-Url: https://codereview.webrtc.org/2816463002
> Cr-Commit-Position: refs/heads/master@{#17644}
> Committed: 5721866808

TBR=tommi@webrtc.org,sprang@webrtc.org,stefan@webrtc.org,nisse@webrtc.org,mflodman@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7420

Review-Url: https://codereview.webrtc.org/2811963002
Cr-Commit-Position: refs/heads/master@{#17645}
2017-04-11 11:01:43 +00:00
5721866808 Revert of Add content type information to encoded images and corresponding rtp extension header (patchset #31 id:600001 of https://codereview.webrtc.org/2772033002/ )
Reason for revert:
Breaks dependent projects.

Original issue's description:
> Add content type information to Encoded Images and add corresponding RTP extension header.
> Use it to separate UMA e2e delay metric between screenshare from video.
> Content type extension is set based on encoder settings and processed and decoders.
>
> Also,
> Fix full-stack-tests to calculate RTT correctly, so new metric could be tested.
>
> BUG=webrtc:7420
>
> Review-Url: https://codereview.webrtc.org/2772033002
> Cr-Commit-Position: refs/heads/master@{#17640}
> Committed: 64e739aeae

TBR=tommi@webrtc.org,sprang@webrtc.org,stefan@webrtc.org,nisse@webrtc.org,mflodman@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7420

Review-Url: https://codereview.webrtc.org/2816463002
Cr-Commit-Position: refs/heads/master@{#17644}
2017-04-11 10:59:43 +00:00
64e739aeae Add content type information to Encoded Images and add corresponding RTP extension header.
Use it to separate UMA e2e delay metric between screenshare from video.
Content type extension is set based on encoder settings and processed and decoders.

Also,
Fix full-stack-tests to calculate RTT correctly, so new metric could be tested.

BUG=webrtc:7420

Review-Url: https://codereview.webrtc.org/2772033002
Cr-Commit-Position: refs/heads/master@{#17640}
2017-04-11 08:46:04 +00:00
8c459f9eee Restore old (deprecated) signature of initializeAndroidGlobals.
This CL removed a couple parameters from the method, and changed the
type of the first parameter to an android.content.Context:
https://codereview.webrtc.org/2800353002/

But applications still using the old method may have already upcast the
context parameter to an Object, in which case this is a breaking change.

So, leaving the old signature exactly as it was before, for maximum
backwards compatibility.

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

Review-Url: https://codereview.webrtc.org/2810973002
Cr-Commit-Position: refs/heads/master@{#17630}
2017-04-11 01:07:55 +00:00
b4fc73a3ab Removing unnecessary parameters from initializeAndroidGlobals.
The "initialize audio/video" parameters are no longer needed, but
at the same time were required to be true, causing a lot of confusion.
This CL removes them, but leaves the old method signature around,
marked "deprecated".

BUG=webrtc:3416
TBR=solenberg@webrtc.org

Review-Url: https://codereview.webrtc.org/2800353002
Cr-Commit-Position: refs/heads/master@{#17626}
2017-04-10 22:08:02 +00:00
177b17e050 Move AndroidVideoTrackSourceObserver from API to src
BUG=webrtc:7172

Review-Url: https://codereview.webrtc.org/2803593004
Cr-Commit-Position: refs/heads/master@{#17562}
2017-04-06 11:31:26 +00:00
639d46a7ab Delete system_wrappers logging facility.
BUG=webrtc:5118

Review-Url: https://codereview.webrtc.org/2796353002
Cr-Commit-Position: refs/heads/master@{#17561}
2017-04-06 10:53:06 +00:00
4aceaf268e Android: Move Histogram from api to src.
This class is already package-local.

BUG=webrtc:7172

Review-Url: https://codereview.webrtc.org/2799643003
Cr-Commit-Position: refs/heads/master@{#17546}
2017-04-05 19:18:59 +00:00
2299b0ab97 Android: Remove VideoCapturerAndroid
This class has been deprecated for a long time and has been replaced by
Camera1Capturer.

BUG=webrtc:7440

Review-Url: https://codereview.webrtc.org/2789183004
Cr-Commit-Position: refs/heads/master@{#17538}
2017-04-05 10:41:17 +00:00
d60d06a9f9 Reland of Move video_encoder.h and video_decoder.h to /api and create GN targets for them (patchset #1 id:1 of https://codereview.webrtc.org/2794033002/ )
Reason for revert:
Reland with temporary deprecated API to not break chromium and google3.

Original issue's description:
> Revert of Move video_encoder.h and video_decoder.h to /api and create GN targets for them (patchset #8 id:140001 of https://codereview.webrtc.org/2780943003/ )
>
> Reason for revert:
> Suspect of breaking Chrome FYI bots.
>
> See
> https://build.chromium.org/p/chromium.webrtc.fyi/builders/Mac%20Builder/builds/23065
> https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Builder
>
> Example logs:
> ../../content/renderer/media/gpu/rtc_video_encoder_unittest.cc:18:46: fatal error: third_party/webrtc/video_encoder.h: No such file or directory
>  #include "third_party/webrtc/video_encoder.h"
>                                               ^
>
> Original issue's description:
> > Move video_encoder.h and video_decoder.h to /api and create GN targets for them
> >
> > BUG=webrtc:5881
> > # Because PRESUBMIT ignores LINT blacklist for moved files and these
> > # headers have some not easy to resolve issues.
> > NOPRESUBMIT=True
> >
> > Review-Url: https://codereview.webrtc.org/2780943003
> > Cr-Commit-Position: refs/heads/master@{#17511}
> > Committed: c42f540570
>
> TBR=solenberg@webrtc.org,sprang@webrtc.org,ilnik@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:5881
>
> Review-Url: https://codereview.webrtc.org/2794033002
> Cr-Commit-Position: refs/heads/master@{#17514}
> Committed: 716d7ac5c1

TBR=solenberg@webrtc.org,sprang@webrtc.org,guidou@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5881

Review-Url: https://codereview.webrtc.org/2795163002
Cr-Commit-Position: refs/heads/master@{#17537}
2017-04-05 10:02:20 +00:00
465faf0061 [iOS] Changed ptr to const ref for RTCConfiguration initialization
BUG=webrtc:7431

Review-Url: https://codereview.webrtc.org/2794193002
Cr-Commit-Position: refs/heads/master@{#17533}
2017-04-04 21:00:16 +00:00
c3372583d4 Revert of Deliver video frames on Android, on the decode thread. (patchset #7 id:120001 of https://codereview.webrtc.org/2764573002/ )
Reason for revert:
Breaks Chrome FYI Android bots.

See:
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Tests%20%28dbg%29%20%28L%20Nexus9%29/builds/20418
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Tests%20%28dbg%29%20%28L%20Nexus6%29/builds/14724
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Tests%20%28dbg%29%20%28L%20Nexus5%29/builds/20133
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Tests%20%28dbg%29%20%28K%20Nexus5%29/builds/15111

Original issue's description:
> Deliver video frames on Android, on the decode thread.
>
> VideoCoding
> * Adding a method for polling for frames on Android only until the capture implementation takes care of this (longer term plan).
>
> CodecDatabase
> * Add an accessor for the current decoder
> * Use std::unique_ptr<> for ownership.
> * Remove "Release()" and "ReleaseDecoder()". Instead just delete.
> * Remove |friend| relationship between CodecDatabase and VCMGenericDecoder.
>
> VCMDecodedFrameCallback
> * DCHECKs for thread correctness.
> * Remove |lock_| now that a threading model has been established and verified.
>
> VCMGenericDecoder
> * All methods now have thread checks.
> * Variable access associated with thread checkers.
>
> VideoReceiver
> * Added two notification methods, DecoderThreadStarting() and DecoderThreadStopped()
>   * Allows us to establish a period when the decoder thread is not running and it is safe to modify variables such as callbacks, that are only read when the decoder thread is running.
>   * Allows us to DCHECK thread guarantees.
>   * Allows synchronizing callbacks from the module process thread and have them only active while the decoder thread is running.
>   * The above, allows us to establish two modes for the thread, single-threaded-mutable and multi-threaded-const.
>   * Using that knowledge, we can remove |receive_crit_| as well as locking for a number of member variables.
>
> MediaCodecVideoDecoder
> * Removed frame polling code from this class, since this is now done from the root thread function in VideoReceiveStream.
>
> VideoReceiveStream
> * On Android: Polls for decoded frames every 10ms (same interval as previously in MediaCodecVideoDecoder)
> * [Un]Registers the |video_receiver_| with the module thread only around the time the decoder thread is started/stopped.
> * Notifies the receiver of start/stop events of the decoder thread.
> * Changed the decoder thread to use the new PlatformThread callback type.
>
> BUG=webrtc:7361, 695438
>
> Review-Url: https://codereview.webrtc.org/2764573002
> Cr-Commit-Position: refs/heads/master@{#17527}
> Committed: e3aa88bbd5

TBR=sakal@webrtc.org,mflodman@webrtc.org,stefan@webrtc.org,tommi@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7361, 695438

Review-Url: https://codereview.webrtc.org/2792033003
Cr-Commit-Position: refs/heads/master@{#17530}
2017-04-04 14:16:21 +00:00
e3aa88bbd5 Deliver video frames on Android, on the decode thread.
VideoCoding
* Adding a method for polling for frames on Android only until the capture implementation takes care of this (longer term plan).

CodecDatabase
* Add an accessor for the current decoder
* Use std::unique_ptr<> for ownership.
* Remove "Release()" and "ReleaseDecoder()". Instead just delete.
* Remove |friend| relationship between CodecDatabase and VCMGenericDecoder.

VCMDecodedFrameCallback
* DCHECKs for thread correctness.
* Remove |lock_| now that a threading model has been established and verified.

VCMGenericDecoder
* All methods now have thread checks.
* Variable access associated with thread checkers.

VideoReceiver
* Added two notification methods, DecoderThreadStarting() and DecoderThreadStopped()
  * Allows us to establish a period when the decoder thread is not running and it is safe to modify variables such as callbacks, that are only read when the decoder thread is running.
  * Allows us to DCHECK thread guarantees.
  * Allows synchronizing callbacks from the module process thread and have them only active while the decoder thread is running.
  * The above, allows us to establish two modes for the thread, single-threaded-mutable and multi-threaded-const.
  * Using that knowledge, we can remove |receive_crit_| as well as locking for a number of member variables.

MediaCodecVideoDecoder
* Removed frame polling code from this class, since this is now done from the root thread function in VideoReceiveStream.

VideoReceiveStream
* On Android: Polls for decoded frames every 10ms (same interval as previously in MediaCodecVideoDecoder)
* [Un]Registers the |video_receiver_| with the module thread only around the time the decoder thread is started/stopped.
* Notifies the receiver of start/stop events of the decoder thread.
* Changed the decoder thread to use the new PlatformThread callback type.

BUG=webrtc:7361, 695438

Review-Url: https://codereview.webrtc.org/2764573002
Cr-Commit-Position: refs/heads/master@{#17527}
2017-04-04 10:53:02 +00:00
4eeb53748a [iOS] Added an initialization method to RTCConfiguration that takes a
native configuration.
Added a getConfiguration getter method to RTCPeerConnection to return
the RTCConfiguration.

BUG=webrtc:7431

Review-Url: https://codereview.webrtc.org/2790833002
Cr-Commit-Position: refs/heads/master@{#17517}
2017-04-03 22:06:37 +00:00
716d7ac5c1 Revert of Move video_encoder.h and video_decoder.h to /api and create GN targets for them (patchset #8 id:140001 of https://codereview.webrtc.org/2780943003/ )
Reason for revert:
Suspect of breaking Chrome FYI bots.

See
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Mac%20Builder/builds/23065
https://build.chromium.org/p/chromium.webrtc.fyi/builders/Android%20Builder

Example logs:
../../content/renderer/media/gpu/rtc_video_encoder_unittest.cc:18:46: fatal error: third_party/webrtc/video_encoder.h: No such file or directory
 #include "third_party/webrtc/video_encoder.h"
                                              ^

Original issue's description:
> Move video_encoder.h and video_decoder.h to /api and create GN targets for them
>
> BUG=webrtc:5881
> # Because PRESUBMIT ignores LINT blacklist for moved files and these
> # headers have some not easy to resolve issues.
> NOPRESUBMIT=True
>
> Review-Url: https://codereview.webrtc.org/2780943003
> Cr-Commit-Position: refs/heads/master@{#17511}
> Committed: c42f540570

TBR=solenberg@webrtc.org,sprang@webrtc.org,ilnik@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:5881

Review-Url: https://codereview.webrtc.org/2794033002
Cr-Commit-Position: refs/heads/master@{#17514}
2017-04-03 16:15:52 +00:00
c42f540570 Move video_encoder.h and video_decoder.h to /api and create GN targets for them
BUG=webrtc:5881
# Because PRESUBMIT ignores LINT blacklist for moved files and these
# headers have some not easy to resolve issues.
NOPRESUBMIT=True

Review-Url: https://codereview.webrtc.org/2780943003
Cr-Commit-Position: refs/heads/master@{#17511}
2017-04-03 15:37:32 +00:00
029f7cccf4 Revert of Enable trendline experiment and bayesian bitrate estimator experiment by default. (patchset #6 id:100001 of https://codereview.webrtc.org/2777333003/ )
Reason for revert:
API changes in webrtc/sdk/objc/Framework/Headers/WebRTC/RTCFieldTrials.h broke internal project

Original issue's description:
> Enable trendline experiment and bayesian bitrate estimator experiment by default.
>
> BUG=webrtc:6566, webrtc:7415
>
> Review-Url: https://codereview.webrtc.org/2777333003
> Cr-Commit-Position: refs/heads/master@{#17491}
> Committed: 27925de951

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

Review-Url: https://codereview.webrtc.org/2791743002
Cr-Commit-Position: refs/heads/master@{#17495}
2017-03-31 21:17:42 +00:00
27925de951 Enable trendline experiment and bayesian bitrate estimator experiment by default.
BUG=webrtc:6566, webrtc:7415

Review-Url: https://codereview.webrtc.org/2777333003
Cr-Commit-Position: refs/heads/master@{#17491}
2017-03-31 14:38:06 +00:00
3883ccb5d7 New RTCCameraVideoCapturer.
Implements a new capturer based on the new video source design.

BUG=webrtc:7177

Review-Url: https://codereview.webrtc.org/2776703002
Cr-Commit-Position: refs/heads/master@{#17486}
2017-03-31 12:12:12 +00:00
124a6fcddf MacOS: Add metal renderer and view.
BUG=webrtc:7079

Review-Url: https://codereview.webrtc.org/2778693003
Cr-Commit-Position: refs/heads/master@{#17482}
2017-03-31 09:47:29 +00:00
7a3615b6b3 Revert of Enable the bayesian bitrate estimator by default. (patchset #5 id:80001 of https://codereview.webrtc.org/2749803002/ )
Reason for revert:
Looks like this has caused multiple Android webrtc perf build bot failures in RampUpTest.UpDownUpTransportSequenceNumberRtx

Original issue's description:
> Enable the bayesian bitrate estimator by default.
>
> BUG=webrtc:6566, webrtc:7415
>
> Review-Url: https://codereview.webrtc.org/2749803002
> Cr-Commit-Position: refs/heads/master@{#17475}
> Committed: c53a17f28e

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

Review-Url: https://codereview.webrtc.org/2786913003
Cr-Commit-Position: refs/heads/master@{#17476}
2017-03-30 17:36:53 +00:00
c53a17f28e Enable the bayesian bitrate estimator by default.
BUG=webrtc:6566, webrtc:7415

Review-Url: https://codereview.webrtc.org/2749803002
Cr-Commit-Position: refs/heads/master@{#17475}
2017-03-30 15:56:22 +00:00
e4cd15d379 Fix JNI reference leak in MediaCodecVideoDecoder
We currently leak one local reference to MediaCodecVideoDecoder in
every call to MediaCodecVideoDecoderFactory::CreateVideoDecoder. After
the decoder has been re-initialized 512 times, JNI will crash due to
local reference table overflow (max=512).

The actual leak is in the member initializer list of
MediaCodecVideoDecoder. This CL fixes the leak by adding a
ScopedLocalRefFrame outside of the ctor. All JNI code that originate
from a C++ thread (i.e. the entry point is not a Java thread) must use
a ScopedLocalRefFrame in order to avoid leaking local references.

BUG=webrtc:6969,b/36713034

Review-Url: https://codereview.webrtc.org/2780273002
Cr-Commit-Position: refs/heads/master@{#17464}
2017-03-30 08:08:36 +00:00
5a4c68e9f3 Minor Cleanup of RTCAudioSource.
This CL fixes a comment that has the wrong format, and takes over
ownership of an orphaned todo. It also removes some unneeded code
from ObjC classes and moves them to a style more fitting the rest
of the codebase.

BUG=None

Review-Url: https://codereview.webrtc.org/2777453003
Cr-Commit-Position: refs/heads/master@{#17416}
2017-03-28 11:35:58 +00:00
abb84b8128 iOS: Add new RTCVideoSource interface
The new RTCVideoSource interface can be used by custom implementations of RTCVideoCapturer.

BUG=webrtc:7177
TBR=tommi

Review-Url: https://codereview.webrtc.org/2745193002
Cr-Commit-Position: refs/heads/master@{#17409}
2017-03-28 08:56:41 +00:00
d1c44356c5 Add field trial to update quality scaler QP thresholds for Android HW encoder.
BUG=b/36034878

Review-Url: https://codereview.webrtc.org/2764143002
Cr-Commit-Position: refs/heads/master@{#17367}
2017-03-23 21:40:08 +00:00
996a83c4c8 Better handling of error condition in MediaCodecVideoEncoder.
BUG=b/36082499

Review-Url: https://codereview.webrtc.org/2748123002
Cr-Commit-Position: refs/heads/master@{#17246}
2017-03-15 12:53:14 +00:00
d15165222f Trigger framelisteners even on frames dropped by the FPS reduction by default.
Modification affects EglRenderer on Android. Moves frame dropping to the
renderer thread. Frame listeners are triggered even when FPS reduction is
active unless applyFpsReduction is set to true.

BUG=webrtc:7149

Review-Url: https://codereview.webrtc.org/2688843002
Cr-Commit-Position: refs/heads/master@{#17206}
2017-03-13 12:11:48 +00:00
954d9b943b Reland of Add unit tests for RTCMTLVideoView. (patchset #1 id:1 of https://codereview.webrtc.org/2733953006/ )
Reason for revert:
Dependant CL has been relanded

Original issue's description:
> Revert of Add unit tests for RTCMTLVideoView. (patchset #6 id:100001 of https://codereview.webrtc.org/2723903003/ )
>
> Reason for revert:
> This CL depends on a reverted CL.
>
> Original issue's description:
> > Add unit tests for RTCMTLVideoView.
> >
> > To properly test the functionality,  following changes  were needed
> > - Make RTCMTLVideoView compiliable for all cpu architectures not just arm64.
> > This is needed so that the test can run on any device and on simulator as well.
> > - Refactor RTCMTLVideoView to have  mockable class methods.
> > The unittest class, RTCMTLVideoViewTests was designed to provide easy transition
> > to XCTest when the time comes for that.
> > To transition to XCTest it would suffice to inherit from XCTestCase and remove
> > the gtest methods.
> >
> > BUG=webrtc:7079
> >
> > Review-Url: https://codereview.webrtc.org/2723903003
> > Cr-Commit-Position: refs/heads/master@{#17014}
> > Committed: 0ebe0199ac
>
> TBR=magjed@webrtc.org,denicija@webrtc.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=webrtc:7079
>
> Review-Url: https://codereview.webrtc.org/2733953006
> Cr-Commit-Position: refs/heads/master@{#17118}
> Committed: 96d91524fa

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

Review-Url: https://codereview.webrtc.org/2743663002
Cr-Commit-Position: refs/heads/master@{#17140}
2017-03-09 11:36:58 +00:00
a2fb30c8cb Reland of Add Metal video view in AppRTCMobile and metal availability macro. (patchset #1 id:1 of https://codereview.webrtc.org/2739793003/ )
Reason for revert:
Fixing rendering issues in AppRTCMobile

Original issue's description:
> Revert of Add Metal video view in AppRTCMobile and metal availability macro. (patchset #5 id:80001 of https://codereview.webrtc.org/2722583002/ )
>
> Reason for revert:
> Breaks AppRTCMobile
>
> Original issue's description:
> > Add Metal video view in AppRTCMobile and Metal availability macro.
> >
> > - The RTC_SUPPORTS_METAL macro allows consumers to gracefully handle compilation for different archs that are not supporting Metal.
> >
> > BUG=webrtc:7079
> >
> > Review-Url: https://codereview.webrtc.org/2722583002
> > Cr-Commit-Position: refs/heads/master@{#17004}
> > Committed: 154a7bb877
>
> TBR=magjed@webrtc.org,tkchin@webrtc.org,denicija@webrtc.org
> # Not skipping CQ checks because original CL landed more than 1 days ago.
> BUG=webrtc:7079
>
> Review-Url: https://codereview.webrtc.org/2739793003
> Cr-Commit-Position: refs/heads/master@{#17119}
> Committed: cbbd8c76e8

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

Review-Url: https://codereview.webrtc.org/2742603003
Cr-Commit-Position: refs/heads/master@{#17139}
2017-03-09 11:34:27 +00:00
7f067663ac Delete deprecated PeerConnection methods, and corresponding using declarations.
BUG=None

Review-Url: https://codereview.webrtc.org/2632203003
Cr-Commit-Position: refs/heads/master@{#17120}
2017-03-08 14:59:45 +00:00
cbbd8c76e8 Revert of Add Metal video view in AppRTCMobile and metal availability macro. (patchset #5 id:80001 of https://codereview.webrtc.org/2722583002/ )
Reason for revert:
Breaks AppRTCMobile

Original issue's description:
> Add Metal video view in AppRTCMobile and Metal availability macro.
>
> - The RTC_SUPPORTS_METAL macro allows consumers to gracefully handle compilation for different archs that are not supporting Metal.
>
> BUG=webrtc:7079
>
> Review-Url: https://codereview.webrtc.org/2722583002
> Cr-Commit-Position: refs/heads/master@{#17004}
> Committed: 154a7bb877

TBR=magjed@webrtc.org,tkchin@webrtc.org,denicija@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:7079

Review-Url: https://codereview.webrtc.org/2739793003
Cr-Commit-Position: refs/heads/master@{#17119}
2017-03-08 14:54:59 +00:00
96d91524fa Revert of Add unit tests for RTCMTLVideoView. (patchset #6 id:100001 of https://codereview.webrtc.org/2723903003/ )
Reason for revert:
This CL depends on a reverted CL.

Original issue's description:
> Add unit tests for RTCMTLVideoView.
>
> To properly test the functionality,  following changes  were needed
> - Make RTCMTLVideoView compiliable for all cpu architectures not just arm64.
> This is needed so that the test can run on any device and on simulator as well.
> - Refactor RTCMTLVideoView to have  mockable class methods.
> The unittest class, RTCMTLVideoViewTests was designed to provide easy transition
> to XCTest when the time comes for that.
> To transition to XCTest it would suffice to inherit from XCTestCase and remove
> the gtest methods.
>
> BUG=webrtc:7079
>
> Review-Url: https://codereview.webrtc.org/2723903003
> Cr-Commit-Position: refs/heads/master@{#17014}
> Committed: 0ebe0199ac

TBR=magjed@webrtc.org,denicija@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
BUG=webrtc:7079

Review-Url: https://codereview.webrtc.org/2733953006
Cr-Commit-Position: refs/heads/master@{#17118}
2017-03-08 14:33:52 +00:00
b09b3f9a62 Add the option to disable IPv6 ICE candidates on WiFi.
Add an attribute to the RTCConfiguration which can be used by specific
mobile devices so that the IPv6 ICE candidates on WiFi will not be collected.

BUG=b/35725283

Review-Url: https://codereview.webrtc.org/2731813002
Cr-Commit-Position: refs/heads/master@{#17100}
2017-03-07 22:40:51 +00:00
846e1be85c Fix iOS8 crash in background mode.
Add system version check functionality in UIDevice+RTCDevice category.
Check for iOS system version when handle capture session interruption.

BUG=webrtc:7201

Review-Url: https://codereview.webrtc.org/2733773003
Cr-Commit-Position: refs/heads/master@{#17079}
2017-03-07 00:42:19 +00:00
d1587ad244 Android HW decoder: Don't check slice_height for texture output
The check: 'RTC_CHECK_GE(slice_height, height);' has been observed to
fail after a reconfig. It looks like |slice_height| is still using the
previous resolution. |slice_height| isn't used for texture output and
hopefully this issue is texture specific. This CL only extracts and
checks |slice_height| when it's actually used.

BUG=b/35932686

Review-Url: https://codereview.webrtc.org/2736603003
Cr-Commit-Position: refs/heads/master@{#17065}
2017-03-06 13:20:49 +00:00
0ebe0199ac Add unit tests for RTCMTLVideoView.
To properly test the functionality,  following changes  were needed
- Make RTCMTLVideoView compiliable for all cpu architectures not just arm64.
This is needed so that the test can run on any device and on simulator as well.
- Refactor RTCMTLVideoView to have  mockable class methods.
The unittest class, RTCMTLVideoViewTests was designed to provide easy transition
to XCTest when the time comes for that.
To transition to XCTest it would suffice to inherit from XCTestCase and remove
the gtest methods.

BUG=webrtc:7079

Review-Url: https://codereview.webrtc.org/2723903003
Cr-Commit-Position: refs/heads/master@{#17014}
2017-03-03 16:24:06 +00:00
154a7bb877 Add Metal video view in AppRTCMobile and Metal availability macro.
- The RTC_SUPPORTS_METAL macro allows consumers to gracefully handle compilation for different archs that are not supporting Metal.

BUG=webrtc:7079

Review-Url: https://codereview.webrtc.org/2722583002
Cr-Commit-Position: refs/heads/master@{#17004}
2017-03-03 14:11:10 +00:00
0c29de5579 Android HW decoder: Limit frame size based on cropping information
BUG=webrtc:7267

Review-Url: https://codereview.webrtc.org/2722803002
Cr-Commit-Position: refs/heads/master@{#16963}
2017-03-02 08:55:32 +00:00
340e3fd59f Split FlexFEC field trial in two.
- The "flexfec-03" codec is advertised in the SDP whenever the
  "WebRTC-FlexFEC-03-Advertised" field trial is enabled.
- Sending FlexFEC packets is enabled whenever the "flexfec-03" codec is
  negotiated, and the "WebRTC-FlexFEC-03" field trial is enabled.

After this CL, the number of calls to
WebRtcVideoChannel2::WebRtcVideoSendStream::SetCodec during renegotiation
will be reduced for cases when only one endpoint has the "WebRTC-FlexFEC-03"
field trial enabled.

BUG=webrtc:5654

Review-Url: https://codereview.webrtc.org/2716733005
Cr-Commit-Position: refs/heads/master@{#16925}
2017-02-28 23:43:10 +00:00
907abd8414 Re-enable disabled test and upgrade avformatmappertests to OCMock 3 syntax.
BUG=webrtc:7137

Review-Url: https://codereview.webrtc.org/2724443003
Cr-Commit-Position: refs/heads/master@{#16917}
2017-02-28 17:14:45 +00:00
c1b57a15bf Test field trial group with startswith rather than equals.
BUG=webrtc:7266

Review-Url: https://codereview.webrtc.org/2717973005
Cr-Commit-Position: refs/heads/master@{#16915}
2017-02-28 16:50:47 +00:00