Skip to content

Test with OBS 30.2

Test with OBS 30.2 #35

Workflow file for this run

name: Build
on:
push:
paths:
- .github/workflows/main.yml
- 'src/**'
- 'cmake/**'
- 'CMakeLists.txt'
tags:
- '*'
branches:
- '**'
jobs:
Build:
name: 'Build'
runs-on: ubuntu-latest
steps:
- name: Restore OBS from cache
uses: actions/cache@v4
id: cache-obs
with:
path: ${{ github.workspace }}/obs/
key: '28.0.0'
- name: Checkout OBS
if: steps.cache-obs.outputs.cache-hit != 'true'
uses: actions/checkout@v4
with:
repository: 'obsproject/obs-studio'
path: 'obs-src'
ref: '30.2.0'
submodules: 'recursive'
- name: 'Install system dependencies'
run: |
sudo apt update
sudo apt install cmake ninja-build pkg-config clang clang-format build-essential curl ccache git zsh\
libavcodec-dev libavdevice-dev libavfilter-dev libavformat-dev libavutil-dev libswresample-dev libswscale-dev\
libcurl4-openssl-dev\
libxcb1-dev libx11-xcb-dev\
libgl1-mesa-dev\
libglvnd-dev\
libgles2-mesa\
libgles2-mesa-dev\
libpipewire-0.3-dev\
- name: 'Configure OBS'
if: steps.cache-obs.outputs.cache-hit != 'true'
run: cmake -B obs-src/build -S obs-src -DCMAKE_ENABLE_BROWSER=OFF -DENABLE_UI=OFF -DENABLE_SCRIPTING=OFF -DENABLE_PULSEAUDIO=OFF -DENABLE_WAYLAND=OFF -DENABLE_PLUGINS=OFF
- name: 'Build OBS'
if: steps.cache-obs.outputs.cache-hit != 'true'
run: cmake --build obs-src/build -j4
- name: 'Install OBS'
if: steps.cache-obs.outputs.cache-hit != 'true'
run: cmake --install obs-src/build --prefix obs
- name: 'Checkout'
uses: actions/checkout@v4
with:
path: 'plugin'
- name: 'Configure'
run: cmake -B ./plugin/build -S ./plugin -DCMAKE_BUILD_TYPE=RelWithDebInfo -Dlibobs_DIR="$GITHUB_WORKSPACE/obs/lib/cmake/libobs/"
- name: 'Build'
run: cmake --build ./plugin/build -j4
- name: 'Package'
run: |
mkdir -p linux-pipewire-audio/bin/64bit linux-pipewire-audio/data/locale
cp ./plugin/build/linux-pipewire-audio.so ./linux-pipewire-audio/bin/64bit/linux-pipewire-audio.so
cp ./plugin/data/locale/en-US.ini ./linux-pipewire-audio/data/locale/en-US.ini
tar -zcvf linux-pipewire-audio.tar.gz linux-pipewire-audio
- name: 'Upload'
uses: actions/upload-artifact@v4
with:
path: linux-pipewire-audio.tar.gz