Also renames "peerconnection_unittests" to "peerconnection_integrationtests",
and moves the ICE URL parsing code to separate files.
The main problem previously was that the test assertions
occurred in various places in the main test class, and this shared test
code was overly complex and stateful. As a result, it was difficult to
tell what a test even does, let alone what assertions it's meant to be
making. And writing a new test that does what you want can be a
frustrating ordeal.
The new code still uses helper methods, but they have intuitive names
and a smaller role; all of the important parts of the test's logic are
in the test case itself.
We're planning on merging PeerConnection and WebRtcSession at some point
soon, so it seemed valuable to do this, so that the WebRtcSession tests
can be rewritten as PeerConnection tests using better patterns.
BUG=None
Review-Url: https://codereview.webrtc.org/2738353003
Cr-Commit-Position: refs/heads/master@{#17458}
Always treat returning to foreground as interruption ended event, to help fix out of sync issues with interruption state.
BUG=0
Review-Url: https://codereview.webrtc.org/2780263002
Cr-Commit-Position: refs/heads/master@{#17457}
Once the first capture attempt failed, we should keep the
context->updated_region unchanged for next attempt. This change can (partially?)
fix issue 704205.
BUG=704205
Review-Url: https://codereview.webrtc.org/2780093002
Cr-Commit-Position: refs/heads/master@{#17456}
Reason for revert:
These bots are now fully functional
Original issue's description:
> CQ: Remove ARM64 trybots until toolchain issues are resolved.
>
> BUG=webrtc:7024
> TBR=oprypin@webrtc.org
>
> Review-Url: https://codereview.webrtc.org/2776393005 .
> Cr-Commit-Position: refs/heads/master@{#17447}
> Committed: 2103f8e59bTBR=oprypin@webrtc.org
# Skipping CQ checks because original CL landed less than 1 days ago.
NOPRESUBMIT=true
NOTREECHECKS=true
NOTRY=true
BUG=webrtc:7024
Review-Url: https://codereview.webrtc.org/2783003002
Cr-Commit-Position: refs/heads/master@{#17455}
Make SetPayloadSize return buffer to write to so that it can replace
AllocatePayload function.
BUG=None
Review-Url: https://codereview.webrtc.org/2785713002
Cr-Commit-Position: refs/heads/master@{#17450}
Before this change, the APM limiter used in FrameCombiner (a
sub-component of AudioMixer) only gets to process the data when the
number of non-muted streams is >1. If this number varies between <=1
and >1, the limiter's view of the data will have gaps during the
periods with <= 1 active stream.
This leads to discontinuities in the applied gain. These
discontinuities cause clicks in the output audio. This change
activates APM limiter processing based on the number of audio streams,
independently of their mutedness status.
BUG=chromium:695993
Review-Url: https://codereview.webrtc.org/2776113002
Cr-Commit-Position: refs/heads/master@{#17442}
Due to quirks of the Cocoa runtime several platform-specific fixes were
in place. See the deleted files maccocoathreadhelper and
scoped_autorelease_pool for examples. There is no way to do a stack-based
RAII autoreleasepool that is compatible with ARC, and autoreleasepool
blocks can't be used with c++. The solution was to separate out the
implementation of some methods in thread.h to an ObjC++ file for Darwin
platforms, allowing us to get rid of the helper classes and enable ARC
everywhere.
BUG=webrtc:6412
Review-Url: https://codereview.webrtc.org/2784483002
Cr-Commit-Position: refs/heads/master@{#17436}
The test is flaky for Msan (memory sanitizer).
The test fails in this way:
../../webrtc/video/end_to_end_tests.cc:2237: Failure
Failed
Timed out while waiting for initial probing.
TBR=sprang@webrtc.org
NOTRY=true
BUG=webrtc:7419
Review-Url: https://codereview.webrtc.org/2778973004
Cr-Commit-Position: refs/heads/master@{#17434}
Improves current multi-threading performance (for the same number of threads) by:
5%-8% speedup for 2 threads, ~15% for 4 threads on Linux/Mac
with standalone libvpx.
~6% speedup on AppRTC on Linux/Mac with 4 threads.
BUG=None
Review-Url: https://codereview.webrtc.org/2776803002
Cr-Commit-Position: refs/heads/master@{#17432}
The command
tools/checklicenses/checklicenses.py --ignore-suppressions ./webrtc
previously produced this output:
'webrtc/modules/audio_processing/test/apmtest.m' has non-whitelisted license 'UNKNOWN'
'webrtc/modules/audio_processing/transient/test/readDetection.m' has non-whitelisted license 'UNKNOWN'
'webrtc/modules/audio_processing/transient/test/readPCM.m' has non-whitelisted license 'UNKNOWN'
...
This CL adds the WebRTC licence with appropriate year to all our
MATLAB files. All these files were contributed by WebRTC project
members hlundin@, pbos@, niklase@.
BUG=chromium:98592
NOTRY=True
Review-Url: https://codereview.webrtc.org/2781663005
Cr-Commit-Position: refs/heads/master@{#17428}
Reason for revert:
Reverting since this seems to break multiple WebRTC Perf buildbots
Original issue's description:
> Don't hardcode MediaType::ANY in FakeNetworkPipe.
>
> Instead let each test set the appropriate media type. This simplifies
> demuxing in Call and later in RtpTransportController.
>
> BUG=webrtc:7135
>
> Review-Url: https://codereview.webrtc.org/2774463003
> Cr-Commit-Position: refs/heads/master@{#17418}
> Committed: 9c47b00e24TBR=stefan@webrtc.org,deadbeef@webrtc.org,solenberg@webrtc.org,pbos@webrtc.org,sprang@webrtc.org,nisse@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/2784543002
Cr-Commit-Position: refs/heads/master@{#17427}
It will enable us to start immediate loopback just by passing
the "loopback" string, as argument when launching.
Usefull for testing and command line profiling.
BUG=NONE
Review-Url: https://codereview.webrtc.org/2777983004
Cr-Commit-Position: refs/heads/master@{#17426}
Makes sense, since it not recording/playing to begin with.
BUG=b/35415663
Review-Url: https://codereview.webrtc.org/2783673002
Cr-Commit-Position: refs/heads/master@{#17423}
The class creates one WavReaderInterface object for each unique audiotrack and builds the set of speaker names.
Validating if the audiotrack lengths and the timing information are compatible (and hence valid) is not implemented yet.
MultiEndCall is designed using dependency injection. This allows to use mock objects with which we can quickly simulate different timings and track lengths without needing actual wav files.
BUG=webrtc:7218
Review-Url: https://codereview.webrtc.org/2761853002
Cr-Commit-Position: refs/heads/master@{#17421}
Instead let each test set the appropriate media type. This simplifies
demuxing in Call and later in RtpTransportController.
BUG=webrtc:7135
Review-Url: https://codereview.webrtc.org/2774463003
Cr-Commit-Position: refs/heads/master@{#17418}
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}
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}