Commit Graph

95 Commits

Author SHA1 Message Date
b080b46df4 Create a hardware VideoDecoder implementation using Android MediaCodec.
BUG=webrtc:7760

Change-Id: Ieae3852d22cadf24cf4184ae985062918a85f02c
Reviewed-on: https://chromium-review.googlesource.com/536237
Commit-Queue: Bjorn Mellem <mellem@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#18685}
2017-06-20 18:04:08 +00:00
dab1d2d34e Enable SNI in ssl adapter.
Bug: webrtc:6973
Change-Id: I13d28cf41c586880bd7fea523005233921794cdf
Reviewed-on: https://chromium-review.googlesource.com/523024
Reviewed-by: Zeke Chin <tkchin@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Justin Uberti <juberti@chromium.org>
Reviewed-by: Taylor Brandstetter <deadbeef@webrtc.org>
Commit-Queue: Emad Omara <emadomara@google.com>
Cr-Commit-Position: refs/heads/master@{#18640}
2017-06-16 23:30:48 +00:00
9fbbdc2fef Create the VideoEncoderFactory and implement it.
Adds the VideoEncoderFactory interface and implements it for use with HardwareVideoEncoder.  This uses MediaCodecVideoEncoder's initialization code as an example.

BUG=webrtc:7760

Change-Id: I9fbc93ce9ac4ad866750a4386c4f15e800a3073e
Reviewed-on: https://chromium-review.googlesource.com/530063
Commit-Queue: Bjorn Mellem <mellem@webrtc.org>
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#18636}
2017-06-16 16:46:30 +00:00
bc061b4280 Create AndroidVideoBuffer and allow renderers to consume it.
Bug: webrtc:7760
Change-Id: I3e3fddf48090ae27b226c65ddbb51f2c3d8dc544
Reviewed-on: https://chromium-review.googlesource.com/535638
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#18624}
2017-06-16 08:31:37 +00:00
3fc2350ef9 Support H.264 high profile encoding on Exynos devices.
Guarded by field trial - similar to high profile encoder.
If high profile is requested, but device do not support it
then fallback to baseline profile.

BUG=b/34816463

Review-Url: https://codereview.webrtc.org/2936313002
Cr-Commit-Position: refs/heads/master@{#18619}
2017-06-15 23:24:37 +00:00
cca0f6cc68 Support H.264 high profile decoding on Exynos devices.
Tested on Galaxy S5, S6, S7 and S8

BUG=b/34816463

Review-Url: https://codereview.webrtc.org/2942463002
Cr-Commit-Position: refs/heads/master@{#18596}
2017-06-14 17:20:54 +00:00
26ecfcc1c1 Remove timeStampMs from EncodedImage.
This field shouldn't have been in the class in the first place.

Bug: webrtc:7760
Change-Id: If3c1d24f18a643249da1ed072bdfe06a37a7da12
Reviewed-on: https://chromium-review.googlesource.com/535539
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#18593}
2017-06-14 14:23:46 +00:00
5c4eebb62b Implement org.webrtc.VideoEncoder using the android MediaCodec.
BUG=webrtc:7760

Change-Id: I22134fe616d5c5b77148c80f01f1ea1119ae786c
Reviewed-on: https://chromium-review.googlesource.com/526074
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Peter Thatcher <pthatcher@webrtc.org>
Commit-Queue: Bjorn Mellem <mellem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#18573}
2017-06-13 16:07:29 +00:00
e2410e9ab4 Interfaces for injectable video codecs.
These interfaces will be used by the future refactoring that will
allow clients to provide custom codec implementations.

Change-Id: If199bc2807e1c27094c05983c62fa43d2eec5700
Bug: webrtc:7760
Reviewed-on: https://chromium-review.googlesource.com/522065
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Reviewed-by: Bjorn Mellem <mellem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#18441}
2017-06-05 07:49:47 +00:00
6fac429d81 Use correct bitrate adjustment for Exynos VP9 HW encoder.
BUG=b/62302810

Review-Url: https://codereview.webrtc.org/2922693003
Cr-Commit-Position: refs/heads/master@{#18425}
2017-06-03 03:18:54 +00:00
84ee5c64d3 Force keyframe for Qualcomm HW VP8 Encoder on Android L as well, reduce forced keyframe interval on Android M.
Color distortion also happens on Android L. Tested on the Mi 4.

BUG=webrtc:7681

Review-Url: https://codereview.webrtc.org/2894643003
Cr-Commit-Position: refs/heads/master@{#18423}
2017-06-03 00:36:32 +00:00
58c742ce7d Call VideoCapturer.initialize directly from Java.
Passing the call through JNI is unnecessary.

Bug: webrtc:7730
Change-Id: Icf1ecd7e2ea54033342120311c70d47b4a4f7c9a
Reviewed-on: https://chromium-review.googlesource.com/521050
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#18408}
2017-06-02 11:27:36 +00:00
5522021b45 Android: Add VideoFrame class
This new VideoFrame class closesly matches the C++ webrtc::VideoFrame
and webrtc::VideoFrameBuffer classes. It's supposed to replace the
existing VideoRenderer.I420Frame. The purpose is to clean up the code
and support more frame formats.

BUG=webrtc:7749

Review-Url: https://codereview.webrtc.org/2915083002
Cr-Commit-Position: refs/heads/master@{#18404}
2017-06-02 09:45:56 +00:00
3afb899655 Remove passing Android context to NetworkMonitor.
Instead NetworkMonitor calls ContextUtils.getApplicationContext when needed.

Bug: webrtc:7730
Change-Id: I312781da4222f7107ea1bf57099f17709fec2385
Reviewed-on: https://chromium-review.googlesource.com/517792
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#18382}
2017-06-01 13:29:01 +00:00
11c7b703d7 Remove native method VideoTrack.free which doesn't exist.
Bug: webrtc:7543
Change-Id: I6aa96d83bb30dda48505f0f678fe3d70f6d6d985
Reviewed-on: https://chromium-review.googlesource.com/519269
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#18374}
2017-06-01 11:24:49 +00:00
8fdf95728f Allow FPS reduction to be applied to frame listeners.
BUG=None

Review-Url: https://codereview.webrtc.org/2897043002
Cr-Commit-Position: refs/heads/master@{#18346}
2017-05-31 09:43:10 +00:00
d7fdb8014d Reland of Removes usage of native base::android::GetApplicationContext()
The change is now compatible with the old JVM::Initialize API. The
context is passed to the ContextUtils class when calling its deprecated
signature.

BUG=webrtc:7665
NOTRY=True # Only comment changes since the last patchset.

Review-Url: https://codereview.webrtc.org/2903253004
Cr-Commit-Position: refs/heads/master@{#18268}
2017-05-26 08:51:53 +00:00
a615e17ec0 Allow constructing an EglBase from an existing shared EGLContext.
BUG=None

Review-Url: https://codereview.webrtc.org/2885163003
Cr-Commit-Position: refs/heads/master@{#18266}
2017-05-25 17:11:25 +00:00
548cdce7bc Revert of https://codereview.webrtc.org/2889183002/
And also revert https://codereview.webrtc.org/2888093005/ (Chromium roll) which has a dependency on 2889183002

BUG=webrtc:7707

Review-Url: https://codereview.webrtc.org/2897423002
Cr-Commit-Position: refs/heads/master@{#18263}
2017-05-24 23:45:57 +00:00
7855fff5bf Reland of moves usage of native base::android::GetApplicationContext() (patchset #1 id:1 of https://codereview.webrtc.org/2894593002/ )
Reason for revert:
Fix issue.

Original issue's description:
> Revert of Removes usage of native base::android::GetApplicationContext() (patchset #6 id:120001 of https://codereview.webrtc.org/2888093004/ )
>
> Reason for revert:
> Breaks bot on chromium.webrtc.fyi.
>
> Original issue's description:
> > Removes usage of native base::android::GetApplicationContext()
> >
> > BUG=webrtc:7665
> >
> > Review-Url: https://codereview.webrtc.org/2888093004
> > Cr-Commit-Position: refs/heads/master@{#18195}
> > Committed: bc83e2ee69
>
> TBR=magjed@webrtc.org,henrika@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=webrtc:7665
>
> Review-Url: https://codereview.webrtc.org/2894593002
> Cr-Commit-Position: refs/heads/master@{#18196}
> Committed: 40d224814a

BUG=webrtc:7665

Review-Url: https://codereview.webrtc.org/2889183002
Cr-Commit-Position: refs/heads/master@{#18235}
2017-05-23 14:34:17 +00:00
40d224814a Revert of Removes usage of native base::android::GetApplicationContext() (patchset #6 id:120001 of https://codereview.webrtc.org/2888093004/ )
Reason for revert:
Breaks bot on chromium.webrtc.fyi.

Original issue's description:
> Removes usage of native base::android::GetApplicationContext()
>
> BUG=webrtc:7665
>
> Review-Url: https://codereview.webrtc.org/2888093004
> Cr-Commit-Position: refs/heads/master@{#18195}
> Committed: bc83e2ee69

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

Review-Url: https://codereview.webrtc.org/2894593002
Cr-Commit-Position: refs/heads/master@{#18196}
2017-05-18 13:44:20 +00:00
bc83e2ee69 Removes usage of native base::android::GetApplicationContext()
BUG=webrtc:7665

Review-Url: https://codereview.webrtc.org/2888093004
Cr-Commit-Position: refs/heads/master@{#18195}
2017-05-18 13:28:45 +00:00
bac4c8013f Add support for media recorders in Camera1Capturer.
BUG=b/36684011

Review-Url: https://codereview.webrtc.org/2861893003
Cr-Commit-Position: refs/heads/master@{#18024}
2017-05-05 08:48:48 +00:00
f25a22041c Add functionality to clear surface to a specific color in EglRenderer.
BUG=b/31895311

Review-Url: https://codereview.webrtc.org/2857363002
Cr-Commit-Position: refs/heads/master@{#18013}
2017-05-04 13:06:56 +00:00
44116a5dc5 Fix lint issues on Android.
BUG=webrtc:7549

Review-Url: https://codereview.webrtc.org/2853283002
Cr-Commit-Position: refs/heads/master@{#17982}
2017-05-03 10:19:08 +00:00
bee4ff8d82 Remove unnecessary runtime API-level checks.
APIs below level 16 are not supported by WebRTC.

BUG=webrtc:7549
TBR=henrika@webrtc.org

Review-Url: https://codereview.webrtc.org/2848323003
Cr-Commit-Position: refs/heads/master@{#17980}
2017-05-02 15:33:52 +00:00
37adc5e81e Reland of Support adding and removing MediaRecorder to camera 2 session. (patchset #1 id:1 of https://codereview.webrtc.org/2844233002/ )
Reason for revert:
Revert "Revert of Support adding and removing MediaRecorder to camera 2 session. (patchset #5 id:80001 of https://codereview.webrtc.org/2833773003/ )"

Will fix external bots by cherry picking this CL and updating external functions which depend on CameraVideoCapturer interface

Original issue's description:
> Revert of Support adding and removing MediaRecorder to camera 2 session. (patchset #5 id:80001 of https://codereview.webrtc.org/2833773003/ )
>
> Reason for revert:
> Breaks external bot
>
> Original issue's description:
> > Support adding and removing MediaRecorder to camera 2 session.
> >
> > Camera 1 API is not supported.
> >
> > BUG=b/36684011
> >
> > Review-Url: https://codereview.webrtc.org/2833773003
> > Cr-Commit-Position: refs/heads/master@{#17901}
> > Committed: 2fc04769fa
>
> TBR=sakal@webrtc.org,glaznev@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=b/36684011
>
> Review-Url: https://codereview.webrtc.org/2844233002
> Cr-Commit-Position: refs/heads/master@{#17905}
> Committed: 6702739862

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

Review-Url: https://codereview.webrtc.org/2844393002
Cr-Commit-Position: refs/heads/master@{#17915}
2017-04-27 20:38:29 +00:00
6702739862 Revert of Support adding and removing MediaRecorder to camera 2 session. (patchset #5 id:80001 of https://codereview.webrtc.org/2833773003/ )
Reason for revert:
Breaks external bot

Original issue's description:
> Support adding and removing MediaRecorder to camera 2 session.
>
> Camera 1 API is not supported.
>
> BUG=b/36684011
>
> Review-Url: https://codereview.webrtc.org/2833773003
> Cr-Commit-Position: refs/heads/master@{#17901}
> Committed: 2fc04769fa

TBR=sakal@webrtc.org,glaznev@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=b/36684011

Review-Url: https://codereview.webrtc.org/2844233002
Cr-Commit-Position: refs/heads/master@{#17905}
2017-04-27 09:34:20 +00:00
2fc04769fa Support adding and removing MediaRecorder to camera 2 session.
Camera 1 API is not supported.

BUG=b/36684011

Review-Url: https://codereview.webrtc.org/2833773003
Cr-Commit-Position: refs/heads/master@{#17901}
2017-04-27 08:12:55 +00:00
521dffab5d Pause changing surface size when rendering is paused.
BUG=b/31895311

Review-Url: https://codereview.webrtc.org/2837563002
Cr-Commit-Position: refs/heads/master@{#17886}
2017-04-26 13:05:18 +00:00
82de179f7d Android: Move EglBase10/EglBase14 from to API to src
BUG=webrtc:7172

Review-Url: https://codereview.webrtc.org/2831603002
Cr-Commit-Position: refs/heads/master@{#17864}
2017-04-25 12:32:07 +00:00
b04646f38b Android: Prepare moving EglBase10/EglBase14 from to API to src
BUG=webrtc:7172

Review-Url: https://codereview.webrtc.org/2826063002
Cr-Commit-Position: refs/heads/master@{#17807}
2017-04-21 08:34:12 +00:00
d5c77abbaa Revert of Android: Move CameraStatistics from API to src (patchset #1 id:1 of https://codereview.webrtc.org/2821373003/ )
Reason for revert:
Breaks external clients.

Original issue's description:
> Android: Move CameraStatistics from API to src
>
> BUG=webrtc:7172
>
> Review-Url: https://codereview.webrtc.org/2821373003
> Cr-Commit-Position: refs/heads/master@{#17765}
> Committed: 800daef50a

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

Review-Url: https://codereview.webrtc.org/2825383002
Cr-Commit-Position: refs/heads/master@{#17767}
2017-04-19 15:45:45 +00:00
800daef50a Android: Move CameraStatistics from API to src
BUG=webrtc:7172

Review-Url: https://codereview.webrtc.org/2821373003
Cr-Commit-Position: refs/heads/master@{#17765}
2017-04-19 14:51:34 +00:00
82215872f8 Add Java binding for new getStats implementation.
Very similar to the current interface, but matches the new C++ structure, and
exposes the stats values as Objects which can be downcast to more specific
types (where the previous API only exposed the values as strings).

BUG=webrtc:6871

Review-Url: https://codereview.webrtc.org/2807933003
Cr-Commit-Position: refs/heads/master@{#17746}
2017-04-18 17:27:51 +00:00
282d49f0ca Reland of Android Logging.java: Load native library only when needed (patchset #1 id:1 of https://codereview.webrtc.org/2814133002/ )
Reason for revert:
Fix bug in original CL.

Original issue's description:
> Revert of Android Logging.java: Load native library only when needed (patchset #2 id:2 of https://codereview.webrtc.org/2817593003/ )
>
> Reason for revert:
> Change in Logging.java breaking compilation (incorrect reference to enum)
>
> Original issue's description:
> > Reland of Android Logging.java: Load native library only when needed (patchset #1 id:1 of https://codereview.webrtc.org/2816753002/ )
> >
> > Reason for revert:
> > Fix bug in original CL.
> >
> > Original issue's description:
> > > 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}
> > > Committed: 6e4a4427dc
> >
> > TBR=sakal@webrtc.org,glaznev@webrtc.org,noahric@chromium.org,brandtr@webrtc.org
> > # Skipping CQ checks because original CL landed less than 1 days ago.
> > NOPRESUBMIT=true
> > NOTREECHECKS=true
> > NOTRY=true
> > BUG=b/36410678
> >
> > Review-Url: https://codereview.webrtc.org/2817593003
> > Cr-Commit-Position: refs/heads/master@{#17677}
> > Committed: 297714619f
>
> TBR=sakal@webrtc.org,glaznev@webrtc.org,noahric@chromium.org,brandtr@webrtc.org,magjed@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=b/36410678
>
> Review-Url: https://codereview.webrtc.org/2814133002
> Cr-Commit-Position: refs/heads/master@{#17678}
> Committed: 06034c7d64

TBR=sakal@webrtc.org,glaznev@webrtc.org,noahric@chromium.org,brandtr@webrtc.org,lliuu@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
BUG=b/36410678

Review-Url: https://codereview.webrtc.org/2813363004
Cr-Commit-Position: refs/heads/master@{#17694}
2017-04-13 11:17:02 +00:00
dax
9d65f39d52 Added support for changing the volume of AudioTrack as discussed in BUG=webrtc:6533
This is a short term solution to change the volume of an AudioTrack until applyConstraints for MediaStreamTracks has been implemented.

This CL adds 1 new Java method & the relevant JNI file update:

AudioTrack.java:

public void setVolume(double volume);

BUG=webrtc:6533

Review-Url: https://codereview.webrtc.org/2710683009
Cr-Commit-Position: refs/heads/master@{#17682}
2017-04-12 23:58:48 +00:00
06034c7d64 Revert of Android Logging.java: Load native library only when needed (patchset #2 id:2 of https://codereview.webrtc.org/2817593003/ )
Reason for revert:
Change in Logging.java breaking compilation (incorrect reference to enum)

Original issue's description:
> Reland of Android Logging.java: Load native library only when needed (patchset #1 id:1 of https://codereview.webrtc.org/2816753002/ )
>
> Reason for revert:
> Fix bug in original CL.
>
> Original issue's description:
> > 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}
> > Committed: 6e4a4427dc
>
> TBR=sakal@webrtc.org,glaznev@webrtc.org,noahric@chromium.org,brandtr@webrtc.org
> # Skipping CQ checks because original CL landed less than 1 days ago.
> NOPRESUBMIT=true
> NOTREECHECKS=true
> NOTRY=true
> BUG=b/36410678
>
> Review-Url: https://codereview.webrtc.org/2817593003
> Cr-Commit-Position: refs/heads/master@{#17677}
> Committed: 297714619f

TBR=sakal@webrtc.org,glaznev@webrtc.org,noahric@chromium.org,brandtr@webrtc.org,magjed@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=b/36410678

Review-Url: https://codereview.webrtc.org/2814133002
Cr-Commit-Position: refs/heads/master@{#17678}
2017-04-12 17:13:21 +00:00
297714619f Reland of Android Logging.java: Load native library only when needed (patchset #1 id:1 of https://codereview.webrtc.org/2816753002/ )
Reason for revert:
Fix bug in original CL.

Original issue's description:
> 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}
> Committed: 6e4a4427dc

TBR=sakal@webrtc.org,glaznev@webrtc.org,noahric@chromium.org,brandtr@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=b/36410678

Review-Url: https://codereview.webrtc.org/2817593003
Cr-Commit-Position: refs/heads/master@{#17677}
2017-04-12 17:03:32 +00:00
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
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
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
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
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
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
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