Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

is_pod deprecated ! #124

Open
wants to merge 42 commits into
base: m125_release
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
42 commits
Select commit Hold shift + click to select a range
9d99682
[M114] Fix bug of messages being delivered before data channel is open
ywh233 May 9, 2023
ecab2a4
[m114] Attempt to recycle a stopped data m-line before creating a new…
fippo May 9, 2023
e46e37b
[M114] Move transceiver iteration loop over to the signaling thread.
Jun 1, 2023
d20849d
[M114] sdp: reject duplicate ssrcs in ssrc-groups
fippo Jun 15, 2023
3cccc9f
Add Apache-2.0 license and some note to README.md. (#9)
cloudwebrtc Oct 7, 2021
272127d
Audio Device Optimization
cloudwebrtc Sep 11, 2021
ee03026
Simulcast support for iOS/Android.
cloudwebrtc Sep 11, 2021
61fc7d6
Android improvements.
davidliu May 10, 2022
0228e1d
Darwin improvements
cloudwebrtc May 18, 2022
8e832d1
Desktop Capture for macOS.
cloudwebrtc Jun 12, 2023
3a2c008
Frame Cryptor Support.
cloudwebrtc Feb 20, 2023
d5ec6fa
Other improvements.
theomonnom Dec 2, 2022
b0f3927
Updated readme (#83)
davidzhao Jul 29, 2023
ebaa79b
Expose remote audio sample buffers on RTCAudioTrack (#84)
hiroshihorie Aug 24, 2023
68167af
Allow custom audio processing by exposing AudioProcessingModule (#85)
hiroshihorie Aug 24, 2023
a59e857
more yuv wrappers (#87)
theomonnom Aug 29, 2023
d0c4e2b
Improve e2ee, add setSharedKey to KeyProvider. (#88)
cloudwebrtc Aug 31, 2023
f12f8d9
Fix memory leak when creating audio CMSampleBuffer #86
hiroshihorie Sep 1, 2023
28e2021
Fix camera rotation (#92)
hiroshihorie Sep 13, 2023
98fe34e
Expose audio sample buffers for Android (#89)
davidliu Sep 13, 2023
87977ca
add failure tolerance for framecryptor. (#91)
cloudwebrtc Sep 9, 2023
7159977
Add scalabilityMode support for AV1/VP9. (#90)
cloudwebrtc Sep 8, 2023
13fe8b2
fix h264 freeze. (#93)
cloudwebrtc Sep 20, 2023
6af5bfd
Fix/send frame cryptor events from signaling thread (#95)
cloudwebrtc Sep 20, 2023
0649214
more improvements for E2EE. (#96)
cloudwebrtc Sep 21, 2023
fcab26b
roll libvpx to include fix for CVE-2023-5217 (#98)
selfisekai Sep 28, 2023
d5afc4b
Fix missing `RTC_OBJC_TYPE` macros (#100)
hiroshihorie Oct 11, 2023
8c9aa75
feat: add external audio processor for android. (#103)
cloudwebrtc Jan 3, 2024
b951613
remove too verbose logs (#107)
theomonnom Feb 13, 2024
5065016
Fix external audio processor sample rate calculation (#108)
davidliu Mar 14, 2024
3cdeeb0
Allow ice gathering on any address ports (#110)
davidliu Apr 2, 2024
50b6436
Add key ring size to keyProviderOptions. (#109)
cloudwebrtc Apr 8, 2024
9f39c3d
Fix naming for yuv helper (#113)
cloudwebrtc Apr 25, 2024
c1896bb
add PrivacyInfo.xcprivacy to darwin frameworks. (#112)
cloudwebrtc Apr 25, 2024
5cc0748
Add NSPrivacyCollectedDataTypes key to xcprivacy file (#114)
hiroshihorie Apr 25, 2024
7cf1e43
Thread-safe `RTCInitFieldTrialDictionary` (#116)
hiroshihorie May 9, 2024
9316c03
android: make audio output attributes modifiable (#118)
davidliu May 20, 2024
8f6e7aa
Set RTCCameraVideoCapturer initial zoom factor (#121)
hiroshihorie May 28, 2024
66fd81b
Unlock configuration before starting capture session (#122)
hiroshihorie Jun 3, 2024
dac8015
Improvements to RTCFrameCryptor (#123)
hiroshihorie Jun 5, 2024
653f6f0
bashar-dev
basharalbashier Jun 14, 2024
89de95f
preper gn file to opencv
basharalbashier Jun 22, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -72,3 +72,10 @@
/xcodebuild
/.vscode
!webrtc/*
/tmp.patch
/out-release
/out-debug
/node_modules
/libwebrtc
/args.txt
libwebrtc
12 changes: 10 additions & 2 deletions BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,8 @@ if (!build_with_chromium) {
# 'ninja default' and then 'ninja all', the second build should do no work.
group("default") {
testonly = true
deps = [ ":webrtc" ]
deps = [ ":webrtc","//libwebrtc", ]

if (rtc_build_examples) {
deps += [ "examples" ]
}
Expand Down Expand Up @@ -344,7 +345,14 @@ config("common_config") {
# See https://reviews.llvm.org/D56731 for details about this
# warning.
"-Wctad-maybe-unsupported",
# "-I./opencv4" ,
"-fexceptions",
]
cflags_cc += [
"-fexceptions"
]
# include_dirs += [ "opencv4" ]
# cflags += [ "-I./opencv4" ]
}

if (build_with_chromium) {
Expand Down Expand Up @@ -372,7 +380,7 @@ config("common_config") {
# "-Wnested-externs", (C/Obj-C only)
]
cflags_objc += [ "-Wstrict-prototypes" ]
cflags_cc = [
cflags_cc += [
"-Wnon-virtual-dtor",

# This is enabled for clang; enable for gcc as well.
Expand Down
2 changes: 1 addition & 1 deletion DEPS
Original file line number Diff line number Diff line change
Expand Up @@ -289,7 +289,7 @@ deps = {
'src/third_party/perfetto':
'https://android.googlesource.com/platform/external/perfetto.git@20b114cd063623e63ef1b0a31167d60081567e51',
'src/third_party/libvpx/source/libvpx':
'https://chromium.googlesource.com/webm/libvpx.git@27171320f5e36f7b18071bfa1d9616863ca1b4e8',
'https://chromium.googlesource.com/webm/libvpx.git@7aaffe2df4c9426ab204a272ca5ca52286ca86d4',
'src/third_party/libyuv':
'https://chromium.googlesource.com/libyuv/libyuv.git@77c2121f7e6b8e694d6e908bbbe9be24214097da',
'src/third_party/lss': {
Expand Down
26 changes: 26 additions & 0 deletions NOTICE
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
###################################################################################

The following modifications follow Apache License 2.0 from shiguredo.

https://github.com/webrtc-sdk/webrtc/commit/dfec53e93a0a1cb93f444caf50f844ec0068c7b7
https://github.com/webrtc-sdk/webrtc/commit/403b4678543c5d4ac77bd1ea5753c02637b3bb89
https://github.com/webrtc-sdk/webrtc/commit/77d5d685a90fb4bded17835ae72ec6671b26d696

Apache License 2.0

Copyright 2019-2021, Wandbox LLC (Original Author)
Copyright 2019-2021, Shiguredo Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

#####################################################################################
63 changes: 39 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,32 +1,47 @@
**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.
# WebRTC-SDK

**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.
This repository contains a fork of WebRTC from Google with various improvements.

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

### Development
### All

See [here][native-dev] for instructions on how to get started
developing with the native code.
- Dynamically acquire decoder to mitigate decoder limitations [#25](https://github.com/webrtc-sdk/webrtc/pull/25)
- Support for video simulcast with hardware & software encoders [patch](https://github.com/webrtc-sdk/webrtc/commit/ee030264e2274a2c90548a99b448782049e48fb4)
- Frame cryptor support (for end-to-end encryption) [patch](https://github.com/webrtc-sdk/webrtc/commit/3a2c008529a15fecde5f979a6ebb75c05463d45e)

[Authoritative list](native-api.md) of directories that contain the
native API header files.
### Android

### More info
- WrappedVideoDecoderFactory [#74](https://github.com/webrtc-sdk/webrtc/pull/74)

* Official web site: http://www.webrtc.org
* Master source code repo: https://webrtc.googlesource.com/src
* Samples and reference apps: https://github.com/webrtc
* Mailing list: http://groups.google.com/group/discuss-webrtc
* Continuous build: https://ci.chromium.org/p/webrtc/g/ci/console
* [Coding style guide](g3doc/style-guide.md)
* [Code of conduct](CODE_OF_CONDUCT.md)
* [Reporting bugs](docs/bug-reporting.md)
* [Documentation](g3doc/sitemap.md)
### iOS / Mac

[native-dev]: https://webrtc.googlesource.com/src/+/main/docs/native-code/index.md
- Sane audio handling [patch](https://github.com/webrtc-sdk/webrtc/commit/272127d457ab48e36241e82549870405864851f6)
- Do not acquire microphone/permissions unless actively publishing audio
- Abililty to bypass voice processing on iOS
- Remove hardcoded limitation of outputting only to right speaker on MacBook Pro
- Desktop capture for Mac [patch](https://github.com/webrtc-sdk/webrtc/commit/8e832d1163644ab504412c9b8f3ba8510d9890d6)

### Windows

- Fixed unable to acquire Mic when built-in AEC is enabled [#29](https://github.com/webrtc-sdk/webrtc/pull/29)

## LICENSE

- [Google WebRTC](https://chromium.googlesource.com/external/webrtc.git), is licensed under [BSD license](/LICENSE).

- Contains patches from [shiguredo-webrtc-build](https://github.com/shiguredo-webrtc-build), licensed under [Apache 2.0](/NOTICE).

- Contains changes from LiveKit, licensed under Apache 2.0.

## Who is using this project

- [flutter-webrtc](https://github.com/flutter-webrtc/flutter-webrtc)

- [LiveKit](https://github.com/livekit)

- [Membrane Framework](https://github.com/membraneframework/membrane_rtc_engine)

- [Louper](https://louper.io)

Are you using WebRTC SDK in your framework or app? Feel free to open a PR and add yourself!
1 change: 1 addition & 0 deletions api/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -330,6 +330,7 @@ rtc_library("libjingle_peerconnection_api") {
"video:encoded_image",
"video:video_bitrate_allocator_factory",
"video:video_frame",
"video:yuv_helper",
"video:video_rtp_headers",
"video_codecs:video_codecs_api",

Expand Down
18 changes: 18 additions & 0 deletions api/crypto/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,24 @@ group("crypto") {
]
}

rtc_library("frame_crypto_transformer") {
visibility = [ "*" ]
sources = [
"frame_crypto_transformer.cc",
"frame_crypto_transformer.h",
]

deps = [
"//api:frame_transformer_interface",
]

if (rtc_build_ssl) {
deps += [ "//third_party/boringssl" ]
} else {
configs += [ ":external_ssl_library" ]
}
}

rtc_library("options") {
visibility = [ "*" ]
sources = [
Expand Down
Loading