Increase timeout since the wait function timed out in certain debugging
circumstances. Also change the check to a DCHECK since it is not really
a critical error if it would time out.
BUG=None
Review-Url: https://codereview.webrtc.org/3007773002
Cr-Commit-Position: refs/heads/master@{#19582}
Will remove default implementations as well once landed and removed
in Chrome as well.
These two AudioDeviceModule APIs are removed:
int32_t SetWaveOutVolume(uint16_t volumeLeft, uint16_t volumeRight)
int32_t WaveOutVolume(uint16_t* volumeLeft, uint16_t* volumeRight) const
BUG=webrtc:7306
Review-Url: https://codereview.webrtc.org/3006793002
Cr-Commit-Position: refs/heads/master@{#19581}
The native interface is added in the private file
webrtc/sdk/objc/Framework/Classes/PeerConnection/RTCPeerConnectionFactory+Native.h.
BUG=webrtc:8093
Review-Url: https://codereview.webrtc.org/3012443002
Cr-Commit-Position: refs/heads/master@{#19576}
The following fields are logged:
- error, if there was an error.
- elapsed time in milliseconds
BUG=webrtc:8100
Review-Url: https://codereview.webrtc.org/2996933003
Cr-Commit-Position: refs/heads/master@{#19574}
This reverts commit 96de428fd1f301c3ad1355183b45e44db5ef3f7f.
Reason for revert: Gives compile errors because the new ObjC++ headers are included in some targets that use ObjC.
Original change's description:
> Adding injectable audio decoder and encoder factory support to the RTCPeerConnection obj-c layer.
>
> Bug: webrtc:8093
> Change-Id: I868ce5f75a72c6deb065dec60784289d045ae22a
> Reviewed-on: https://chromium-review.googlesource.com/608981
> Commit-Queue: Jeremy Newton-Smith <jeremyns@webrtc.org>
> Reviewed-by: Zeke Chin <tkchin@webrtc.org>
> Reviewed-by: Kári Tristan Helgason <kthelgason@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#19477}
TBR=kjellander@webrtc.org,tkchin@webrtc.org,kthelgason@webrtc.org,jeremyns@webrtc.org
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: webrtc:8093
Change-Id: I3ade9dd979c9f13990a2972b15b786b8e78e1cd4
Reviewed-on: https://chromium-review.googlesource.com/640810
Reviewed-by: Magnus Jedvert <magjed@webrtc.org>
Commit-Queue: Magnus Jedvert <magjed@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#19573}
Currently, ownership of the wrapped hardware encoder is handled outside
VideoEncoderSoftwareFallbackWrapper. It's easier if
VideoEncoderSoftwareFallbackWrapper owns and relases it instead.
BUG=webrtc:7925
Review-Url: https://codereview.webrtc.org/3007683002
Cr-Commit-Position: refs/heads/master@{#19572}
Cleanup CL. Start using new AudioRecord.Builder class for creating
AudioRecord Java instances. Exists from API 23.
BUG=webrtc:7962
Review-Url: https://codereview.webrtc.org/3007673002
Cr-Commit-Position: refs/heads/master@{#19571}
This CL replaces:
namespace webrtc_jni {
with:
namespace webrtc {
namespace jni {
The main benefit is that we don't have to use the webrtc:: qualifier
inside the jni namespace so we can reduce some clutter.
BUG=None
Review-Url: https://codereview.webrtc.org/3009613002
Cr-Commit-Position: refs/heads/master@{#19569}
Currently, webrtc::VideoEncoders are supposed to be deleted through the
factory that created them with the
WebRtcVideoEncoderFactory::DestroyVideoEncoder method. In practice,
we sometimes use this method and sometimes we just call delete on the
webrtc::VideoEncoder pointer. We want to be able to consistently use the
normal destructor of webrtc::VideoEncoder instead of having to call
DestroyVideoEncoder so that we can put webrtc::VideoEncoder inside
an std::unique_ptr and make ownership more clear. As part of webrtc:7925
we also want to make a new encoder factory class that does not have the
DestroyVideoEncoder() method, and this CL is a step in that direction.
This CL introduces a helper function CreateScopedVideoEncoder that takes
a webrtc::VideoEncoder and a WebRtcVideoEncoderFactory pointer, and
returns a new webrtc::VideoEncoder instance that can be deleted through
the regular destructor.
This CL also removes WebRtcSimulcastEncoderFactory that almost only
contains logic for handling the DestroyVideoEncoder calls that we no
longer need, and inlines the rest of the logic inside the
WebRtcVideoChannel::WebRtcVideoSendStream::CreateVideoEncoder method.
BUG=webrtc:7925
Review-Url: https://codereview.webrtc.org/3007643002
Cr-Commit-Position: refs/heads/master@{#19564}
Headers webrtc/video_receive_stream.h and webrtc/video_send_stream.h
have been moved to webrtc/call in https://codereview.webrtc.org/3000253002,
this CL is just switching WebRTC internal dependencies to actual headers
instead of depending on the backward compatibility ones.
BUG=webrtc:8107
Review-Url: https://codereview.webrtc.org/3007553002
Cr-Commit-Position: refs/heads/master@{#19561}
These are no longer needed as all clients have been updated to use the
new methods that always return a value.
BUG=None
Review-Url: https://codereview.webrtc.org/3009583002
Cr-Commit-Position: refs/heads/master@{#19559}
Original implementation of jpeg writer didn't compile on iOS at all.
This required clients to exclude some code using defines, which leads to
more complicated code.
Now, instead, jpeg writer will compile but will do nothing on iOS. Clients'
code don't need any additional checks now.
BUG=none
Review-Url: https://codereview.webrtc.org/3004603002
Cr-Commit-Position: refs/heads/master@{#19558}
This allows returning RTPFragmentationHeader from a method and assigning
the results to a variable.
BUG=webrtc:7760
Review-Url: https://codereview.webrtc.org/3002283002
Cr-Commit-Position: refs/heads/master@{#19556}
It would leave a trailing carriage return character in the payload
list, causing the preferred codec to appear twice if it was at the
back of the list originally. This causes problems down the line and
results in that codec not being negotiated successfully.
BUG=webrtc:8129
Review-Url: https://codereview.webrtc.org/3001363002
Cr-Commit-Position: refs/heads/master@{#19552}
remove rtc_base_approved from the public_deps list of rtc_task_queue.
BUG=webrtc:8160
NOTRY=True
Review-Url: https://codereview.webrtc.org/3008553002
Cr-Commit-Position: refs/heads/master@{#19551}
This CL introduces common functions for adding and releasing
native references to reduce the number of JNI functions.
BUG=webrtc:8043
Review-Url: https://codereview.webrtc.org/3003213002
Cr-Commit-Position: refs/heads/master@{#19547}
Update the name of the macro to something more descriptive and use
variable length arguments to make it work better with autoformatting
tools.
BUG=None
Review-Url: https://codereview.webrtc.org/2998403002
Cr-Commit-Position: refs/heads/master@{#19538}
If the content area of a window is not covered by the content area of another
window, we do not treat them as overlapping. This can fix the issue that two
fullscreen windows cover each other, or a fullscreen window is covered by the
shadow effect of task bar.
Bug: chromium:741770
Change-Id: I92dc636bc8445d50b00390cf3332695f69daf9c6
Reviewed-on: https://chromium-review.googlesource.com/628244
Commit-Queue: Zijie He <zijiehe@chromium.org>
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19532}
WindowCapturerWin wrongly calculate the image size if the application it target
does not support high DPI. It causes part of the output frame black. See bug for
details.
Bug: webrtc:8112
Change-Id: I33c66dfa977ec08a29c56ff86ae37320b1459c87
Reviewed-on: https://chromium-review.googlesource.com/634383
Commit-Queue: Zijie He <zijiehe@chromium.org>
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19531}
Reason for revert:
Might be the root cause of an internal test failure.
Original issue's description:
> Verify sender ssrc when receiving rtcp target bitrate
>
> BUG=webrtc:8137
>
> Review-Url: https://codereview.webrtc.org/3000373002
> Cr-Commit-Position: refs/heads/master@{#19524}
> Committed: a7a4beb419TBR=danilchap@webrtc.org,sprang@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:8137
Review-Url: https://codereview.webrtc.org/3005633002
Cr-Commit-Position: refs/heads/master@{#19529}
A crash may randomly happen in IsWindowMinimized(), the potential reason is that
|on_screen| is not retrieved from |window| with kCGWindowIsOnScreen property. So
add a == NULL check before executing CFBooleanGetValue().
Bug: chromium:758554
Change-Id: I25ad1ddbb21ec049ef237e55a8d25156bcd982c7
Reviewed-on: https://chromium-review.googlesource.com/634043
Reviewed-by: Jamie Walch <jamiewalch@chromium.org>
Commit-Queue: Zijie He <zijiehe@chromium.org>
Cr-Commit-Position: refs/heads/master@{#19527}
This avoids infinite recursion in case the recovered packet carries a
RED header.
BUG=chromium:754748
Review-Url: https://codereview.webrtc.org/3004553002
Cr-Commit-Position: refs/heads/master@{#19525}
I think this was previously used in libjingle but it is not
used in WebRTC.
BUG=webrtc:8082
Review-Url: https://codereview.webrtc.org/2999703002
Cr-Commit-Position: refs/heads/master@{#19523}
These tests are very old and come from a time when we tested each method in the
ADM as if the ADM should function as a standalone component.
Several tests are already disabled and we test combinations of APIs that are no
longer valid (since the ADM is now used in a more fixed way in VoE).
The tests does not verify media (we have other tests under
voice_engine/test/auto_test) which starts media and verifies that it works OK.
There are also a a more extensive set of ADM tests for Android and iOS.
You could also say that these tests tests the most "hardware related parts of
the ADM", but not those that we expose via the VoEHardware API.
Hence, not much value to maintain them imo.
NOTRY=TRUE
BUG=webrtc:7250
Review-Url: https://codereview.webrtc.org/2726433003
Cr-Commit-Position: refs/heads/master@{#19522}
This function is currently only available in EglBase14, which is not in
the api. This CL adds the swapBuffer method to the public EglBase
interface. For EglBase10, the presentation time is just ignored.
BUG=webrtc:8155
Review-Url: https://codereview.webrtc.org/3003843002
Cr-Commit-Position: refs/heads/master@{#19518}
In later steps the Win/Mac implementation will also be refactored.
The rtc_task_queue target is split up in three separate targets:
rtc_task_queue_api:
Contains the header file task_queue.h but no implementation.
Only external TaskQueue implementations should directly depend on this target.
rtc_task_queue_impl:
Contains the default implementation of task_queue.h.
Only external application targets should directly depend on this target.
rtc_task_queue:
WebRTC targets should depend on this target. It unconditionally depend on rtc_task_queue_api and depending on the new build flag,|rtc_link_task_queue_impl|, depend on rtc_task_queue_impl.
BUG=webrtc:8160
Review-Url: https://codereview.webrtc.org/3003643002
Cr-Commit-Position: refs/heads/master@{#19516}
Now we always process |rate_profile.num_frames| number of frames.
This means that the output of the tests in
videoprocessor_integrationtest.cc will be slightly different,
as we will no process 300 frames, instead of 299. No rate control
or quality thresholds need to be updated, however.
BUG=webrtc:6634
Review-Url: https://codereview.webrtc.org/3004583002
Cr-Commit-Position: refs/heads/master@{#19515}
The whole point of all the audio codec stuff we've recently published
in api/ is to function as lego bricks so that building stuff like our
builtin audio codec factories will be easy.
(This has landed once before, but got reverted because of Chromium test
failures---apparently, someone isn't ignoring the case of the codec names
like they're supposed to. The quick fix was to preserve the same case
used by the old implementation.)
BUG=webrtc:7821, webrtc:7822
Review-Url: https://codereview.webrtc.org/2998263002
Cr-Commit-Position: refs/heads/master@{#19512}
When adapting a frame, any initial cropping coordinate was replaced
by the coordinate calculated for adapting. Offset initial coordinate
instead.
BUG=webrtc:7880
Review-Url: https://codereview.webrtc.org/2975613002
Cr-Commit-Position: refs/heads/master@{#19509}