This CL removes kNumMicrosecsPerSec and kNumMillisecsPerSec from
modules/audio_device/win/core_audio_utility_win.h.
kNumMillisecsPerSec was unused, while kNumMicrosecsPerSec has been
replaced by rtc::kNumMicrosecsPerSec.
Bug: webrtc:9693
Change-Id: I560aa9dad2bfb94a9bf67d3b9941700f1948086b
Reviewed-on: https://webrtc-review.googlesource.com/102860
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24906}
These changes are based on finding when using Tsan v2. More changes are
needed before usage of the THREAD_SANITIZER build flag can be removed.
Hence, all tests are still ignored when this flag is set. The changes
are still improvements.
See https://bugs.chromium.org/p/webrtc/issues/detail?id=9778#c10
for more details.
Bug: webrtc:9778
Change-Id: I1266cec48165046dcffc16f104ec5b88b41500b2
Reviewed-on: https://webrtc-review.googlesource.com/102440
Reviewed-by: Sami Kalliomäki <sakal@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24880}
This CL removes some deprecated build targets (and their headers)
from system_wrappers:
- field_trial_api
- field_trial_default
- metrics_api
- metrics_default
It also refreshes all the dependencies on field_trial.h and metrics.h.
A nice side effect is that it is finally possible to remove 'nogncheck'
from the following files (when it was used with field_trial_default
and metrics_default):
- sdk/objc/api/peerconnection/RTCMetricsSampleInfo+Private.h
- sdk/android/src/jni/pc/peerconnectionfactory.cc
- sdk/objc/api/peerconnection/RTCFieldTrials.mm
Bug: webrtc:9631
Change-Id: Ib621f41ef8ad0aba4fe1c1d7e749c044afc956c3
No-Try: True
Reviewed-on: https://webrtc-review.googlesource.com/100524
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24878}
The flaky crash is happening in the constructor.
Bug: webrtc:9778
Change-Id: I9ac9a89e033e17de690e594ef263ff83d14fcc5a
Reviewed-on: https://webrtc-review.googlesource.com/101880
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24829}
These tests have become flaky on thread sanitizer.
Bug: webrtc:9778
Change-Id: Ife7004acf11ef1b3cb9d5720da25d4efb2395faf
Reviewed-on: https://webrtc-review.googlesource.com/101841
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Artem Titarenko <artit@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24824}
Now checks the preferred channel configuration and requests implicit channel
upmixing (audio engine extends from 2 to N channels internally) if the
preferred number of channels is larger than two; i.e., initialize the
stream in stereo even if the preferred configuration is multi-channel.
To summarize: with this CL, it is now possible to use e.g. a 7.1 headset
with a native WebRTC client. All internal processing in WebRTC will be in
stereo, and the audio device will be opened up in stereo as well to match
WebRTC. Before this change, we would open up the audio device using 8
channels but that was not supported by WebRTC.
Bug: webrtc:9265
Change-Id: I1530fee28c4b8b5cda29ab6baf8d65fd391d935d
Reviewed-on: https://webrtc-review.googlesource.com/98421
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24743}
This CL removes a set of DCHECKs in AudioDeviceBuffer (ADB) where the goal has been
to ensure that some methods are called on one and the same native I/O thread.
The implementation of the ADB is platform independent but the underlying (driving)
audio components differ between platforms. This combination has shown to generate complex
corner cases such as:
- OS dependent I/O-thread(s) changes while audio is active
- OS dependent audio device changes and it leads to restart of native I/O threads
- Start/Stop of audio has different timing depending on platform and possibly also usage of
JNI and/or emulators.
To summarize: the gain of maintaining the current strict thread checking (in Debug mode)
is not worth all the efforts trying to resolve complex dynamic cases where the native
I/O threads changes ID.
TBR=glaznev
Bug: b/115385789
Change-Id: I681c89adec497a18b97d2a40421c04ea218fd919
Reviewed-on: https://webrtc-review.googlesource.com/100200
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24723}
Removes redundant field initializers such as null, 0 and false.
Bug: webrtc:9742
Change-Id: I1e54f6c6000885cf95f7af8e2701875a78445497
Reviewed-on: https://webrtc-review.googlesource.com/99481
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24676}
This CL enables -Wexit-time-destructors and -Wglobal-constructors on
rtc_static_library and rtc_source_set build targets.
It also adds the possibility to suppress these warnings because
they trigger in a few places.
The long term goal is to avoid regressions on this and remove all the
suppressions.
Bug: webrtc:9693
Change-Id: I4c1ecc137ef9e87ec5e66981ce95d96fb082727c
Reviewed-on: https://webrtc-review.googlesource.com/98380
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24604}
This is a reland of 9ea5765f78ed3d0d7b0d483e81f08fb8a2e1110a
Original change's description:
> Refactor TestAudioDeviceModule to not depend on EventTimerWrapper.
>
> In addition, let the processing thread loop explicitly, and not use
> the deprecated builtin looping in PlatformThread.
>
> Bug: webrtc:3380
> Change-Id: I5171ce3457b80f922c8284259882da63c8f146f1
> Reviewed-on: https://webrtc-review.googlesource.com/96544
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
> Reviewed-by: Artem Titov <titovartem@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24492}
Bug: webrtc:3380
Change-Id: I39c6b35d24182475b33a7a321cdf3b3ac9b8979a
Reviewed-on: https://webrtc-review.googlesource.com/97861
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24602}
This is a reland of 711a31aead9007e42dd73c302c8ec40f9e931619
Changes since original landing:
Rename methods only used by tests, mainly via FakeClock,
MessageQueueManager::ProcessAllMessageQueues
--> ProcessAllMessageQueuesForTesting
MessageQueue::IsProcessingMessages
--> IsProcessingMessagesForTesting
Fix the handling of null rtc::Thread::Current() in
ProcessAllMessageQueuesInternal().
Add override Thread::IsProcessingMessagesForTesting() to return false
for the wrapped main thread, unless it's also the current thread. In
tests, the main thread is typically not processing any messages,
but blocked in an Event::Wait().
Original change's description:
> Explicitly wrap main thread in test_main.cc.
>
> Bug: webrtc:9714
> Change-Id: I6ee234f9a0b88b3656a683f2455c3e4b2acf0d54
> Reviewed-on: https://webrtc-review.googlesource.com/97683
> Reviewed-by: Tommi <tommi@webrtc.org>
> Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24560}
Bug: webrtc:9714
Change-Id: I6f022d46aaf1e28f86f09f2d68c1803b69770126
Reviewed-on: https://webrtc-review.googlesource.com/98060
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Tommi <tommi@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24596}
Second round of the new Windows ADM is now ready for review. Main
changes are:
Supports internal (automatic) restart of audio streams when an active
audio stream disconnects (happens when a device is removed).
Adds support for IAudioClient3 and IAudioClient2 for platforms which
supports it (>Win8 and >Win10).
Modifies the threading model to support restart "from the inside" on
the native audio thread.
Adds two new test methods for the ADM to emulate restart events or
stream-switch events.
Adds two new test methods to support rate conversion to ensure that
audio can be tested in loopback even if devices runs at different
sample rates.
Added initial components for low-latency support. Verified that it works
but disabled it with a flag for now.
Bug: webrtc:9265
Change-Id: Ia8e577daabea6b433f2c2eabab4e46ce8added6a
Reviewed-on: https://webrtc-review.googlesource.com/86020
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24578}
First version was reverted in https://webrtc-review.googlesource.com/c/src/+/97941.
The issue is now fixed.
TBR=ivoc
Bug: b/113648245
Change-Id: If631fdea95aa963952f15e48e9d2d678797dc225
Reviewed-on: https://webrtc-review.googlesource.com/97942
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24573}
This reverts commit cd87e014f34069fd5a73c1ed5b74ddf251a95c2d.
Reason for revert: Somehow introduces a race where rtc::Thread auto-wrapping may be applied to the TestAudioDevice thread rather than the main thread. This causes failures when running video_engine_tests without any test filter.
Original change's description:
> Reland "Refactor TestAudioDeviceModule to not depend on EventTimerWrapper."
>
> This is a reland of 9ea5765f78ed3d0d7b0d483e81f08fb8a2e1110a
>
> Original change's description:
> > Refactor TestAudioDeviceModule to not depend on EventTimerWrapper.
> >
> > In addition, let the processing thread loop explicitly, and not use
> > the deprecated builtin looping in PlatformThread.
> >
> > Bug: webrtc:3380
> > Change-Id: I5171ce3457b80f922c8284259882da63c8f146f1
> > Reviewed-on: https://webrtc-review.googlesource.com/96544
> > Commit-Queue: Niels Moller <nisse@webrtc.org>
> > Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
> > Reviewed-by: Artem Titov <titovartem@webrtc.org>
> > Cr-Commit-Position: refs/heads/master@{#24492}
>
> Bug: webrtc:3380
> Change-Id: I671e3a60ace6ade765a8537b7e20e36f1782a60d
> Reviewed-on: https://webrtc-review.googlesource.com/97320
> Reviewed-by: Artem Titov <titovartem@webrtc.org>
> Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24528}
TBR=henrika@webrtc.org,nisse@webrtc.org,titovartem@webrtc.org
# Not skipping CQ checks because original CL landed > 1 day ago.
# Skip anyway, needed for a two-step revert.
No-try: True
Bug: webrtc:3380
Change-Id: Ia7c8cfab36b8259f150b5ccd0c28defd0e7237f6
Reviewed-on: https://webrtc-review.googlesource.com/97682
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24552}
Also ensures that audio parameters are accessed atomically.
Bug: b/113648245
Change-Id: Ic812bfe2b2c4cfb3b00d9d411bb4986dfeda1028
Reviewed-on: https://webrtc-review.googlesource.com/97331
Reviewed-by: Minyue Li <minyue@webrtc.org>
Reviewed-by: Ivo Creusen <ivoc@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24550}
This is a reland of 9ea5765f78ed3d0d7b0d483e81f08fb8a2e1110a
Original change's description:
> Refactor TestAudioDeviceModule to not depend on EventTimerWrapper.
>
> In addition, let the processing thread loop explicitly, and not use
> the deprecated builtin looping in PlatformThread.
>
> Bug: webrtc:3380
> Change-Id: I5171ce3457b80f922c8284259882da63c8f146f1
> Reviewed-on: https://webrtc-review.googlesource.com/96544
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
> Reviewed-by: Artem Titov <titovartem@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24492}
Bug: webrtc:3380
Change-Id: I671e3a60ace6ade765a8537b7e20e36f1782a60d
Reviewed-on: https://webrtc-review.googlesource.com/97320
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24528}
This reverts commit 9ea5765f78ed3d0d7b0d483e81f08fb8a2e1110a.
Reason for revert: Makes the perf test RampUpTest.AudioTransportSequenceNumber fail on windows, almost every time.
Original change's description:
> Refactor TestAudioDeviceModule to not depend on EventTimerWrapper.
>
> In addition, let the processing thread loop explicitly, and not use
> the deprecated builtin looping in PlatformThread.
>
> Bug: webrtc:3380
> Change-Id: I5171ce3457b80f922c8284259882da63c8f146f1
> Reviewed-on: https://webrtc-review.googlesource.com/96544
> Commit-Queue: Niels Moller <nisse@webrtc.org>
> Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
> Reviewed-by: Artem Titov <titovartem@webrtc.org>
> Cr-Commit-Position: refs/heads/master@{#24492}
TBR=henrika@webrtc.org,nisse@webrtc.org,titovartem@webrtc.org
Change-Id: I8867a22d695494bd5abfda6a97f0719cb3ff3d66
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug: webrtc:3380
Reviewed-on: https://webrtc-review.googlesource.com/96840
Reviewed-by: Niels Moller <nisse@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24496}
This CL separates the files under sdk/objc into logical directories, replacing
the previous file layout under Framework/.
A long term goal is to have some system set up to generate the files under
sdk/objc/api (the PeerConnection API wrappers) from the C++ code. In the shorter
term the goal is to abstract out shared concepts from these classes in order to
make them as uniform as possible.
The separation into base/, components/, and helpers/ are to differentiate between
the base layer's common protocols, various utilities and the actual platform
specific components.
The old directory layout that resembled a framework's internal layout is not
necessary, since it is generated by the framework target when building it.
Bug: webrtc:9627
Change-Id: Ib084fd83f050ae980649ca99e841f4fb0580bd8f
Reviewed-on: https://webrtc-review.googlesource.com/94142
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Reviewed-by: Rasmus Brandt <brandtr@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Anders Carlsson <andersc@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24493}
In addition, let the processing thread loop explicitly, and not use
the deprecated builtin looping in PlatformThread.
Bug: webrtc:3380
Change-Id: I5171ce3457b80f922c8284259882da63c8f146f1
Reviewed-on: https://webrtc-review.googlesource.com/96544
Commit-Queue: Niels Moller <nisse@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24492}
The old test supported audio but only in combination with a fake ADM.
The new version allows the user to run real video and audio.
Now possible to do:
./out/Debug/video_loopback.exe --audio --use_real_adm
To run the test in loopback using real default audio devices.
By default:
./out/Debug/video_loopback.exe --audio
runs with fake audio devices as before.
Bug: webrtc:9265
Change-Id: Id89924ec0276f929487c71fc6321dcd9cb92693d
Reviewed-on: https://webrtc-review.googlesource.com/96161
Reviewed-by: Minyue Li <minyue@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24463}
This doesn't cause problems because seems like GN just ignores these attempts and confines everything to the root.
Bug: None
Change-Id: Ief50b6e10f3950b319d0bde547f91dcc7f237cda
Reviewed-on: https://webrtc-review.googlesource.com/90041
Commit-Queue: Oleh Prypin <oprypin@webrtc.org>
Reviewed-by: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24063}
WebRTC internal headers are always included starting from the root
(e.g. #include "modules/audio_device/..."), so there is no need to
specify the include_dirs removed by this CL.
Bug: webrtc:9538
Change-Id: If26edecc004c6e8c3bbef3c8185c7e272110c951
Reviewed-on: https://webrtc-review.googlesource.com/89391
Reviewed-by: Oleh Prypin <oprypin@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#24034}
The remaining suppression flags require some work in order to be
removed.
Bug: webrtc:9251
Change-Id: I506f6c730456a4c030b87dbc7ba23c7b3359e272
Reviewed-on: https://webrtc-review.googlesource.com/87920
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Commit-Queue: Mirko Bonadei <mbonadei@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23932}
This is a no-op change because rtc::Optional is an alias to absl::optional
This CL generated by running script passing top level directories except rtc_base and api
find $@ -type f \( -name \*.h -o -name \*.cc -o -name \*.mm \) \
-exec sed -i 's|rtc::Optional|absl::optional|g' {} \+ \
-exec sed -i 's|rtc::nullopt|absl::nullopt|g' {} \+ \
-exec sed -i 's|#include "api/optional.h"|#include "absl/types/optional.h"|' {} \+
find $@ -type f -name BUILD.gn \
-exec sed -r -i 's|"[\./api]*:optional"|"//third_party/abseil-cpp/absl/types:optional"|' {} \+;
git cl format
Bug: webrtc:9078
Change-Id: I9465c172e65ba6e6ed4e4fdc35b0b265038d6f71
Reviewed-on: https://webrtc-review.googlesource.com/84584
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Danil Chapovalov <danilchap@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23697}
Because thread_ object is created in Init, destructor used to crash when
calling thread_->Stop() because it was referencing a null pointer.
Bug: webrtc:9404
Change-Id: I1c943d0fa50f9341aaa516b32495bb25bf4d664b
Reviewed-on: https://webrtc-review.googlesource.com/84122
Reviewed-by: Stefan Holmer <stefan@webrtc.org>
Reviewed-by: Artem Titov <titovartem@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23682}
Running clang-format with chromium's style guide.
The goal is n-fold:
* providing consistency and readability (that's what code guidelines are for)
* preventing noise with presubmit checks and git cl format
* building on the previous point: making it easier to automatically fix format issues
* you name it
Please consider using git-hyper-blame to ignore this commit.
Bug: webrtc:9340
Change-Id: I694567c4cdf8cee2860958cfe82bfaf25848bb87
Reviewed-on: https://webrtc-review.googlesource.com/81185
Reviewed-by: Patrik Höglund <phoglund@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23660}
This allows constructing TestAudioDeviceModule on a different thread
than the worker thread and avoids unnecessary invoke. Before,
thread->Start() would fail in a thread check.
Bug: b/79961243
Change-Id: I5c55d8feada2b0ae12bc121f3f795e76a8d04059
Reviewed-on: https://webrtc-review.googlesource.com/82941
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Sami Kalliomäki <sakal@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23574}
Summary of what this CL does:
Existing users can keep using the old ADM for Windows as before.
A new ADM for Windows is created and a dedicated factory method is used
to create it. The old way (using AudioDeviceImpl) is not utilized.
The new ADM is based on a structure where most of the "action" takes
place in new AudioInput/AudioOutput implementations. This is inline
with our mobile platforms and also makes it easier to break out common
parts into a base class.
The AudioDevice unittest has always mainly focused on the "Start/Stop"-
parts of the ADM and not the complete ADM interface. This new ADM supports
all tests in AudioDeviceTest and is therefore tested in combination with
the old version. A value-parametrized test us added for Windows builds.
Improved readability, threading model and makes the code easier to maintain.
Uses the previously landed methods in webrtc::webrtc_win::core_audio_utility.
Bug: webrtc:9265
Change-Id: If2894b44528e74a181cf7ad1216f57386ee3a24d
Reviewed-on: https://webrtc-review.googlesource.com/78060
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23554}
Made some minor changes to resolve the issue. Only affects Debug builds.
NOTRY=TRUE
Bug: webrtc:9310
Change-Id: Ieeeb57d24b559282b2eefd4d8785f7cfe4f44e40
Reviewed-on: https://webrtc-review.googlesource.com/79624
Commit-Queue: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Peter Hanspers <peterhanspers@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23434}
Instead of making multiple calls to the std::stringstream << operator,
collect all the arguments and make a single printf-like variadic call
under the hood.
Besides reducing our reliance on iostreams, this makes each RTC_LOG_*
call site smaller; in aggregate, this reduces the size of
libjingle_peerconnection_so.so by 28-32 kB.
A quick benchmark indicates that this change makes log statements
a few percent slower.
Bug: webrtc:8982, webrtc:9185
Change-Id: I3137a4dd8ac510e8d910acccb0c97ce4fffb61c9
Reviewed-on: https://webrtc-review.googlesource.com/75440
Commit-Queue: Karl Wiberg <kwiberg@webrtc.org>
Reviewed-by: Jonas Olsson <jonasolsson@webrtc.org>
Reviewed-by: Oskar Sundbom <ossu@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23375}
This change forks the existing iOS audio device module and audio device
from modules/audio_device/ into sdk/objc/Framework. It also updates
RTCPeerConnectionFactory to use the forked implementation.
The unit tests are re-implemented as XCTests.
(was: https://webrtc-review.googlesource.com/c/src/+/67300)
Bug: webrtc:9120
Change-Id: I46c09900246f75ca5285aeb38f7b8b295784ffac
Reviewed-on: https://webrtc-review.googlesource.com/76741
Reviewed-by: Kári Helgason <kthelgason@webrtc.org>
Reviewed-by: Henrik Andreassson <henrika@webrtc.org>
Reviewed-by: Anders Carlsson <andersc@webrtc.org>
Commit-Queue: Peter Hanspers <peterhanspers@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#23238}