Synchronize calls to EGL10/EGL14.eglCreateContext on EglBase.lock. The
reason is that a deadlock between the remote render thread in
eglSwapBuffers and MediaCodecVideoEncoder eglCreateContext was observed.
The function calls that are now synchronized on EglBase.lock are:
eglCreateContext, eglMakeCurrent, eglSwapBuffers, and
SurfaceTexture.updateTexImage.
BUG=webrtc:5702
Review-Url: https://codereview.webrtc.org/1937933002
Cr-Commit-Position: refs/heads/master@{#12603}
Reason for revert:
EGL 1.4 was not the cause of the deadlock. See https://bugs.chromium.org/p/webrtc/issues/detail?id=5702 for more info.
Original issue's description:
> Switch to using EGL 1.0 for rendering and HW codec.
>
> Using EGL 1.4 may cause texture rendering deadlock on some
> Android devices.
>
> R=jiayl@webrtc.org
>
> Committed: 887a19b9d2
BUG=webrtc:5702
TBR=jiayl@webrtc.org,glaznev@webrtc.org
# Not skipping CQ checks because original CL landed more than 1 days ago.
Review URL: https://codereview.webrtc.org/1866653002
Cr-Commit-Position: refs/heads/master@{#12257}
This CL adds the width and height to the createPbufferSurface exception
message. Also, when a Callable.call() fails in
ThreadUtils.invokeUninterruptibly() we rethrow a new exception, but that
excludes the callstack from Callable.call(). This CL adds the callstack
from Callable.call() to make debugging easier.
BUG=b/27581640,b/27516991
Review URL: https://codereview.webrtc.org/1780183005
Cr-Commit-Position: refs/heads/master@{#11996}
In addition to the code moved from talk/app/webrtc
there were some files in webrtc/api/objctests that still
had the libjingle license header.
BUG=webrtc:5418
TBR=tkchin@webrtc.org
NOTRY=True
Review URL: https://codereview.webrtc.org/1680293005
Cr-Commit-Position: refs/heads/master@{#11552}
The previously disabled warnings that were inherited from
talk/build/common.gypi are now replaced by target-specific disabling
of only the failing warnings. Additional disabling was needed since the stricter
compilation warnings that applies to code in webrtc/.
License headers will be updated in a follow-up CL.
Other modifications:
* Updated the header guards.
* Sorted the includes using chromium/src/tools/sort-headers.py
except for these files:
talk/app/webrtc/peerconnectionendtoend_unittest.cc
talk/app/webrtc/java/jni/androidmediadecoder_jni.cc
talk/app/webrtc/java/jni/androidmediaencoder_jni.cc
webrtc/media/devices/win32devicemanager.cc
The HAVE_SCTP define was added for the peerconnection_unittests target
in api_tests.gyp.
I also checked that none of
SRTP_RELATIVE_PATH
HAVE_SRTP
HAVE_WEBRTC_VIDEO
HAVE_WEBRTC_VOICE
were used by the talk/app/webrtc code.
For Chromium, the following changes will need to be applied to the roll CL that updates the
DEPS for WebRTC and libjingle:
https://codereview.chromium.org/1615433002
BUG=webrtc:5418
NOPRESUBMIT=True
R=deadbeef@webrtc.org, pthatcher@webrtc.org, tommi@webrtc.org
Review URL: https://codereview.webrtc.org/1610243002 .
Cr-Commit-Position: refs/heads/master@{#11545}