No description
Find a file
Florent Castelli acabb3641b pc: Add asynchronous RtpSender::SetParameters() call
As the synchronous version only posts a task to recreate the encoder
later, it is not possible to catch errors and state changes that
could appear then.
The asynchronous version of SetParameters() aims to solve this by
providing a callback to wait for the completion of the encoder
reconfiguration, allowing any error to be propagate and subsequent
getParameters() call to have up to date information.

Bug: webrtc:11607
Change-Id: I5548e75aa14a97f8d9c0c94df1e72e9cd40887b2
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/278420
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Commit-Queue: Florent Castelli <orphis@webrtc.org>
Reviewed-by: Erik Språng <sprang@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#38627}
2022-11-15 15:31:40 +00:00
api pc: Add asynchronous RtpSender::SetParameters() call 2022-11-15 15:31:40 +00:00
audio pc: Add asynchronous RtpSender::SetParameters() call 2022-11-15 15:31:40 +00:00
build_overrides Add stub for build_overrides/partition_alloc.gni 2022-08-29 12:17:02 +00:00
call pc: Add asynchronous RtpSender::SetParameters() call 2022-11-15 15:31:40 +00:00
common_audio Make header files self contained. 2022-10-08 08:38:36 +00:00
common_video Make header files self contained. 2022-10-08 08:38:36 +00:00
data Remove old data files. 2018-10-05 14:40:21 +00:00
docs doc,ios/index.md: fix Xcode project reference 2022-11-02 12:54:11 +00:00
examples pc: Add asynchronous RtpSender::SetParameters() call 2022-11-15 15:31:40 +00:00
experiments Add tool for generating field trial registry header 2022-10-18 07:25:43 +00:00
g3doc Explicitly forbid dynamic_cast 2022-11-04 12:37:57 +00:00
infra Migrate WebRTC presubmit to Walleye (from Bullhead). 2022-11-14 16:37:40 +00:00
logging Add missing dependencies. 2022-10-10 15:51:33 +00:00
media pc: Add asynchronous RtpSender::SetParameters() call 2022-11-15 15:31:40 +00:00
modules Bound loss based estimate by upper link capacity when bandwidth is loss limited. 2022-11-15 14:53:05 +00:00
net/dcsctp Add missing dependencies. 2022-10-10 10:18:37 +00:00
p2p Deprecate void* forms of StreamInterface::Read and ::Write 2022-11-10 12:40:20 +00:00
pc pc: Add asynchronous RtpSender::SetParameters() call 2022-11-15 15:31:40 +00:00
resources Clarify and extend test support for certain sample rates in audio processing 2022-08-03 14:26:36 +00:00
rtc_base Deprecate void* forms of StreamInterface::Read and ::Write 2022-11-10 12:40:20 +00:00
rtc_tools Add --extend_run_time_duration flag to video_replay. 2022-10-19 06:16:12 +00:00
sdk pc: Add asynchronous RtpSender::SetParameters() call 2022-11-15 15:31:40 +00:00
stats Add power efficient stats to RTC stats 2022-11-08 08:35:47 +00:00
system_wrappers Verify field trials looked up through field_trial::FindFullName 2022-10-20 10:46:01 +00:00
test Do not log on stderr on Android tests. 2022-11-15 12:24:32 +00:00
tools_webrtc Use gtest_parallel for PipeWire tests. 2022-11-09 15:37:58 +00:00
video pc: Add asynchronous RtpSender::SetParameters() call 2022-11-15 15:31:40 +00:00
.clang-format Add IncludeBlocks to clang-format. 2021-02-03 16:29:07 +00:00
.git-blame-ignore-revs Let git-hyper-blame ignore new format cleanup. 2019-07-11 16:18:51 +00:00
.gitignore Add .cache to .gitignore. 2021-01-20 15:01:07 +00:00
.gn Set Fuchsia Api level + update SDK version 2022-09-14 08:49:56 +00:00
.mailmap Add .mailmap for git. 2022-02-20 14:22:13 +00:00
.style.yapf Fix mb.py presubmit issues. 2021-12-08 08:53:00 +00:00
.vpython Remove unused script webrtc_dashboard_upload.py 2022-03-21 12:54:42 +00:00
.vpython3 Add python grpc to .vpython3 for ios test runner 2022-09-16 12:26:48 +00:00
AUTHORS Fix bug where RTCTransportStats.dtlsCipher was missing when using OpenSSL 2022-10-24 20:51:33 +00:00
BUILD.gn Verify field trials looked up through field_trial::FindFullName 2022-10-20 10:46:01 +00:00
CODE_OF_CONDUCT.md Reference "main" branches instead of "master" branches. 2021-07-15 11:07:44 +00:00
codereview.settings Don't add webrtc-reviews@ to CC, it can be added globally on Gerrit 2018-10-25 08:19:53 +00:00
DEPS Roll chromium_revision 927e2f6dae..e8dc2013b5 (1067044:1071546) 2022-11-15 14:35:28 +00:00
DIR_METADATA Move metadata in OWNERS files to DIR_METADATA files. 2021-02-08 19:09:33 +00:00
ENG_REVIEW_OWNERS Remove phoglund from ENG_REVIEW_OWNERS 2021-10-08 08:29:42 +00:00
g3doc.lua Improve webrtc documentation infra. Preview at: 2021-03-30 10:29:30 +00:00
LICENSE
license_template.txt
native-api.md Reference "main" branches instead of "master" branches. 2021-07-15 11:07:44 +00:00
OWNERS Fix add some eng prod owners to PRESUBMIT.py. 2022-03-18 13:19:07 +00:00
PATENTS
PRESUBMIT.py Update portaudio to the latest 2022-05-13 09:01:34 +00:00
presubmit_test.py tools_webrtc dir converted to py3 + top level PRESUBMIT script 2022-02-08 14:42:26 +00:00
presubmit_test_mocks.py tools_webrtc dir converted to py3 + top level PRESUBMIT script 2022-02-08 14:42:26 +00:00
pylintrc tools_webrtc dir converted to py3 + top level PRESUBMIT script 2022-02-08 14:42:26 +00:00
README.chromium Add CPEPrefix. 2020-07-13 11:42:07 +00:00
README.md doc: add g3doc sitemap to toplevel readme 2021-07-23 07:55:17 +00:00
WATCHLISTS Delete modules/video_processing 2022-09-30 13:50:49 +00:00
webrtc.gni Verify field trials looked up through field_trial::FindFullName 2022-10-20 10:46:01 +00:00
webrtc_lib_link_test.cc Deprecate PeerConnectionFactory::CreatePeerConnection 2021-05-10 08:47:48 +00:00
whitespace.txt Triggering CI and LKGR. 2022-10-14 08:53:38 +00:00

WebRTC is a free, open software project that provides browsers and mobile applications with Real-Time Communications (RTC) capabilities via simple APIs. The WebRTC components have been optimized to best serve this purpose.

Our mission: To enable rich, high-quality RTC applications to be developed for the browser, mobile platforms, and IoT devices, and allow them all to communicate via a common set of protocols.

The WebRTC initiative is a project supported by Google, Mozilla and Opera, amongst others.

Development

See here for instructions on how to get started developing with the native code.

Authoritative list of directories that contain the native API header files.

More info