Skip to content

Commit

Permalink
Build webrtcdsp gstreamer plugin with bad plugins
Browse files Browse the repository at this point in the history
Certian gstreamer plugins are automatically disabled when the necessary
dependencies aren't available. The webrtcdsp plugin is one of these and
adding webrtc audio processing enables it to be built.
  • Loading branch information
Kyle Siefring authored and pbor committed Jul 18, 2024
1 parent e5dadc0 commit 5e47789
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 1 deletion.
1 change: 1 addition & 0 deletions gvsbuild/projects/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -90,6 +90,7 @@
from gvsbuild.projects.pycairo import Pycairo
from gvsbuild.projects.pygobject import PyGObject
from gvsbuild.projects.sqlite import SQLite
from gvsbuild.projects.webrtc_audio_processing import WebrtcAudioProcessing
from gvsbuild.projects.win_iconv import WinIconv
from gvsbuild.projects.wing import Wing
from gvsbuild.projects.x264 import X264
Expand Down
10 changes: 9 additions & 1 deletion gvsbuild/projects/gstreamer.py
Original file line number Diff line number Diff line change
Expand Up @@ -155,14 +155,22 @@ def __init__(self):
lastversion_even=True,
archive_url="https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-{version}.tar.xz",
hash="3029bfd7265314d609dc8eab503675a344ea46e8274fd73ab34566c8442dc847",
dependencies=["meson", "ninja", "gst-plugins-base"],
dependencies=[
"meson",
"ninja",
"gst-plugins-base",
"webrtc-audio-processing",
],
patches=[
"wasapisink-reduce-buffer-latency.patch",
],
)
self.add_param("-Dcurl=disabled")
self.add_param("-Dcurl-ssh2=disabled")

# Adding webrtc-audio-processing adds the isac plugin. It fails to compile.
self.add_param("-Disac=disabled")

if self.opts.enable_gi:
self.add_dependency("gobject-introspection")
enable_gi = "enabled"
Expand Down
24 changes: 24 additions & 0 deletions gvsbuild/projects/webrtc_audio_processing.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
from gvsbuild.utils.base_builders import Meson
from gvsbuild.utils.base_expanders import Tarball
from gvsbuild.utils.base_project import Project, project_add


@project_add
class WebrtcAudioProcessing(Tarball, Meson):
def __init__(self):
Project.__init__(
self,
"webrtc-audio-processing",
repository="https://gitlab.freedesktop.org/pulseaudio/webrtc-audio-processing/",
version="1.3",
archive_url="https://freedesktop.org/software/pulseaudio/webrtc-audio-processing/webrtc-audio-processing-{version}.tar.gz",
hash="95552fc17faa0202133707bbb3727e8c2cf64d4266fe31bfdb2298d769c1db75",
dependencies=["meson", "ninja"],
)

def build(self):
Meson.build(self)
self.install(r".\COPYING share\doc\webrtc-audio-processing")
self.install(
r".\webrtc\LICENSE .\webrtc\PATENTS share\doc\webrtc-audio-processing\webrtc"
)

0 comments on commit 5e47789

Please sign in to comment.