Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
29 commits
Select commit Hold shift + click to select a range
80f39e6
feat!: refactor code to use webrtc branch 6998
devopvoid Mar 20, 2025
40a0482
fix: unresolved symbols and audio processing classes
devopvoid Mar 21, 2025
af18102
fix: DesktopCaptureCallback using copy frames for now
devopvoid Mar 21, 2025
5d12289
fix: missing symbols on macOS
devopvoid Mar 21, 2025
88940d8
fix: new webrtc branch number in readme and workflows
devopvoid Mar 21, 2025
98b04f8
fix: compile on Windows 2022 with Visual Studio 2022
devopvoid Mar 21, 2025
b7174a0
fix: add '*.inc' pattern for installation as abseil requires those files
devopvoid Mar 21, 2025
9cc21fc
fix: workflows to run on ubuntu-22.04
devopvoid Mar 22, 2025
da240c0
fix: linux and macOS builds
devopvoid Mar 24, 2025
5a462f9
build.yml Linux pipewire activation
devopvoid Mar 24, 2025
a6c6a1b
feat: added the utility class VoiceActivityDetector
devopvoid Mar 25, 2025
f8462b5
feat: add maven profile to compile with clang in windows
devopvoid Mar 26, 2025
968165f
fix: refactored RTCStats to match new API
devopvoid Mar 26, 2025
d5fa302
fix: refactored AudioProcessingStats to match new API
devopvoid Mar 26, 2025
96d6990
refactor: prefer and set clang as the default compiler on linux and w…
devopvoid Mar 26, 2025
2e8f8aa
refactor: refined GitHub actions
devopvoid Mar 26, 2025
df9b49b
fix: GitHub actions step names
devopvoid Mar 26, 2025
ef247b5
Merge branch 'master' into m134
devopvoid Mar 26, 2025
4b8b4df
fix: macOS deprecation warnings
devopvoid Mar 27, 2025
2fa44ff
fix: macOS deprecation warnings
devopvoid Mar 27, 2025
7233fec
feat: macOS screen inhibition
devopvoid Apr 3, 2025
9875faf
chore: migrate ossrh to maven central deployment
devopvoid Apr 3, 2025
25afe52
fix: minor desktop capture fixes
devopvoid Apr 4, 2025
ca09a43
fix: crash with desktop capture with pipewire enabled and clang build
devopvoid Apr 7, 2025
255c2a3
Update CMakeLists.txt
devopvoid Apr 8, 2025
c23271c
refactor: DesktopCapturer initialization
devopvoid Apr 14, 2025
0d44451
fix: DesktopCapturer SetMaxFrameRate
devopvoid Apr 14, 2025
70a7840
fix: AudioConverter destination buffer size
devopvoid May 7, 2025
8f87fe3
fix: comment out retain and release calls in buffer conversion
devopvoid Jun 6, 2025
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
2 changes: 1 addition & 1 deletion .github/actions/build/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ runs:
with:
java-version: ${{ inputs.java-version }}
distribution: 'temurin'
server-id: ossrh
server-id: central
server-username: MAVEN_USERNAME
server-password: MAVEN_TOKEN

Expand Down
46 changes: 46 additions & 0 deletions .github/actions/prepare-linux/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: 'Prepare Linux Build'

description: 'Frees up disk space and installs required packages for Linux builds.'

runs:
using: "composite"
steps:
- name: Disk cleanup
run: |
set -x
df -h
#sudo du -h -d1 /usr/local
#sudo du -h -d1 /usr/local/share
#sudo du -h -d1 /usr/local/lib
#sudo du -h -d1 /usr/share
RMI=`docker images -q -a`
if [ -n "$RMI" ]; then
docker rmi $RMI
fi
# 4.6G
sudo rm -rf /usr/local/.ghcup
# 1.7G
sudo rm -rf /usr/share/swift
# 1.4G
sudo rm -rf /usr/share/dotnet
# 13G
sudo rm -rf /usr/local/lib/android
df -h
shell: bash

- name: Install required packages
run: |
sudo apt-get update
sudo apt-get install -y pulseaudio libpulse-dev libasound2-dev libdbus-1-dev libudev-dev libv4l-dev libx11-dev libxcomposite-dev libxrandr-dev libxfixes-dev binutils cmake git locales lsb-release ninja-build pkg-config python3 python3-setuptools rsync unzip wget xz-utils

# More recent LLVM and Clang.
wget https://apt.llvm.org/llvm.sh
chmod +x llvm.sh
sudo ./llvm.sh ${{ matrix.llvm }} all

# Required for testing
#pulseaudio --start
sudo apt-get install -y pipewire pipewire-pulse gstreamer1.0-pipewire libspa-0.2-bluetooth libspa-0.2-jack pipewire-audio-client-libraries
systemctl --user daemon-reload
systemctl --user --now enable pipewire{,-pulse}.{socket,service}
shell: bash
19 changes: 19 additions & 0 deletions .github/actions/prepare-macos/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
name: 'Prepare macOS Build'

description: 'Installs required packages for macOS builds.'

runs:
using: "composite"
steps:
- name: Install required packages
run: |
brew install ninja
# Required for macos-13
pip install setuptools
# Required for macos-14
brew install python-setuptools
shell: bash

- name: Select Xcode version
run: sudo xcode-select -s /Applications/Xcode_15.0.1.app/Contents/Developer
shell: bash
40 changes: 40 additions & 0 deletions .github/actions/prepare-windows/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: 'Prepare Windows Build'

description: 'Frees up disk space and installs required packages for Windows builds.'

runs:
using: "composite"
steps:
- name: Set up Python 3.11
if: false
uses: actions/setup-python@v5
with:
python-version: "3.11"

- name: Disk cleanup
if: false
run: |
Get-PSDrive
# Docker Images
docker rmi $(docker images -q -a)
# Android SDK
if ($Env:ANDROID_HOME) {
Remove-Item -Recurse -Force $Env:ANDROID_HOME -ErrorAction Ignore
}
if ($Env:ANDROID_NDK_HOME) {
Remove-Item -Recurse -Force $Env:ANDROID_NDK_HOME -ErrorAction Ignore
}
# JVM
if ($Env:JAVA_HOME_11_X64) {
Remove-Item -Recurse -Force $Env:JAVA_HOME_11_X64 -ErrorAction Ignore
}
if ($Env:JAVA_HOME_8_X64) {
Remove-Item -Recurse -Force $Env:JAVA_HOME_8_X64 -ErrorAction Ignore
}
Get-PSDrive
shell: powershell

- name: Install required packages
run: |
choco install ninja
shell: powershell
2 changes: 1 addition & 1 deletion .github/actions/release/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ runs:
with:
java-version: ${{ inputs.java-version }}
distribution: 'temurin'
server-id: ossrh
server-id: central
server-username: MAVEN_USERNAME
server-password: MAVEN_TOKEN
gpg-private-key: ${{ inputs.maven-gpg-private-key }}
Expand Down
88 changes: 13 additions & 75 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ on:
workflow_dispatch:

env:
WEBRTC_CACHE_BRANCH: 4844
WEBRTC_CACHE_BRANCH: 6998
WEBRTC_CHECKOUT_FOLDER: webrtc
WEBRTC_INSTALL_FOLDER: webrtc/build

Expand All @@ -27,44 +27,16 @@ jobs:
matrix:
platform:
- name: windows_x86_64
runs-on: windows-2019
runs-on: windows-2022
java: [17]
runs-on: ${{ matrix.platform.runs-on }}
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up Python 3.11
if: false
uses: actions/setup-python@v5
with:
python-version: "3.11"

- name: Disk cleanup
if: false
run: |
Get-PSDrive
# Docker Images
docker rmi $(docker images -q -a)
# Android SDK
if ($Env:ANDROID_HOME) {
Remove-Item -Recurse -Force $Env:ANDROID_HOME -ErrorAction Ignore
}
if ($Env:ANDROID_NDK_HOME) {
Remove-Item -Recurse -Force $Env:ANDROID_NDK_HOME -ErrorAction Ignore
}
# JVM
if ($Env:JAVA_HOME_11_X64) {
Remove-Item -Recurse -Force $Env:JAVA_HOME_11_X64 -ErrorAction Ignore
}
if ($Env:JAVA_HOME_8_X64) {
Remove-Item -Recurse -Force $Env:JAVA_HOME_8_X64 -ErrorAction Ignore
}
Get-PSDrive

- name: Install required packages
run: |
choco install ninja
- id: prepare
name: Prepare build
uses: ./.github/actions/prepare-windows

- id: maven-build
name: Maven build
Expand All @@ -81,44 +53,17 @@ jobs:
matrix:
platform:
- name: linux_x86-64
runs-on: ubuntu-20.04
runs-on: ubuntu-22.04
java: [17]
llvm: [21]
runs-on: ${{ matrix.platform.runs-on }}
steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Disk cleanup
run: |
set -x
df -h
#sudo du -h -d1 /usr/local
#sudo du -h -d1 /usr/local/share
#sudo du -h -d1 /usr/local/lib
#sudo du -h -d1 /usr/share
RMI=`docker images -q -a`
if [ -n "$RMI" ]; then
docker rmi $RMI
fi
# 4.6G
sudo rm -rf /usr/local/.ghcup
# 1.7G
sudo rm -rf /usr/share/swift
# 1.4G
sudo rm -rf /usr/share/dotnet
# 13G
sudo rm -rf /usr/local/lib/android
df -h

- name: Install required packages
run: |
sudo apt-get update
sudo apt-get install -y pulseaudio libpulse-dev libasound2-dev libdbus-1-dev libudev-dev libv4l-dev libx11-dev libxcomposite-dev libxrandr-dev libxfixes-dev binutils cmake git locales lsb-release ninja-build pkg-config python3 python3-setuptools rsync unzip wget xz-utils
# Required for testing
#pulseaudio --start
sudo apt-get install -y pipewire pipewire-pulse gstreamer1.0-pipewire libspa-0.2-bluetooth libspa-0.2-jack pipewire-audio-client-libraries
systemctl --user daemon-reload
systemctl --user --now enable pipewire{,-pulse}.{socket,service}
- id: prepare
name: Prepare build
uses: ./.github/actions/prepare-linux

- id: maven-build
name: Maven build
Expand All @@ -144,16 +89,9 @@ jobs:
- name: Checkout code
uses: actions/checkout@v4

- name: Install required packages
run: |
brew install ninja
# Required for macos-13
pip install setuptools
# Required for macos-14
brew install python-setuptools

- name: Select Xcode version
run: sudo xcode-select -s /Applications/Xcode_15.0.1.app/Contents/Developer
- id: prepare-build
name: Prepare build
uses: ./.github/actions/prepare-macos

- id: maven-build
name: Maven build
Expand Down
Loading
Loading