Skip to content

Commit

Permalink
Merge pull request #550 from WebPlatformForEmbedded/wpe-gstwebrtc
Browse files Browse the repository at this point in the history
Add support for WebRTC in WPE via the GstWebRTC backend
  • Loading branch information
cadubentzen authored Jan 6, 2025
2 parents 395f605 + 4ee2817 commit d319a11
Show file tree
Hide file tree
Showing 22 changed files with 79,535 additions and 57 deletions.
3 changes: 3 additions & 0 deletions board/sagemcom/sagemcom.txt
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,9 @@ libpcreposix.so
libmount.so.1
libintl.so.8
libiconv.so.2
lib*webrtc*
libsrtp2.so*
libnice.so*
ca-certificates.crt
libicu*.so
libudev.so.1
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
From 3ed251babe1681cc05583cbf4d2b770807addc37 Mon Sep 17 00:00:00 2001
From: Philippe Normand <[email protected]>
Date: Mon, 22 Apr 2024 15:18:11 +0100
Subject: [PATCH] platform: Register gamepad provider even if no platform
backend was created

---
core/cog-platform.c | 14 +++++++++++++-
1 file changed, 13 insertions(+), 1 deletion(-)

diff --git a/core/cog-platform.c b/core/cog-platform.c
index 57b16a5..653de8a 100644
--- a/core/cog-platform.c
+++ b/core/cog-platform.c
@@ -8,6 +8,7 @@

#include "cog-platform.h"
#include "cog-modules.h"
+#include "cog-gamepad.h"

G_DEFINE_QUARK(COG_PLATFORM_ERROR, cog_platform_error)
G_DEFINE_QUARK(COG_PLATFORM_EGL_ERROR, cog_platform_egl_error)
@@ -70,6 +71,12 @@ cog_platform_get_default(void)
return default_platform;
}

+static struct wpe_view_backend *
+gamepad_provider_get_view_backend_for_gamepad(void *provider G_GNUC_UNUSED, void *gamepad G_GNUC_UNUSED)
+{
+ return NULL;
+}
+
CogPlatform *
cog_platform_new(const char *name, GError **error)
{
@@ -79,6 +86,7 @@ cog_platform_new(const char *name, GError **error)
if (platform_type == G_TYPE_INVALID) {
g_set_error_literal(error, COG_PLATFORM_ERROR, COG_PLATFORM_ERROR_NO_MODULE,
"Could not find an usable platform module");
+ cog_gamepad_setup(gamepad_provider_get_view_backend_for_gamepad);
return NULL;
}

@@ -86,10 +94,14 @@ cog_platform_new(const char *name, GError **error)
if (G_IS_INITABLE(self)) {
if (!g_initable_init(G_INITABLE(self),
NULL, /* cancellable */
- error))
+ error)) {
+ cog_gamepad_setup(gamepad_provider_get_view_backend_for_gamepad);
return NULL;
+ }
}

+ /* Each platform backend registers its gamepad provider, so no need to call
+ cog_gamepad_setup() here. */
return g_steal_pointer(&self);
}

--
2.44.0

Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
From 8d4b3b9a1add7b2552fd1f03c7e574a05def074d Mon Sep 17 00:00:00 2001
From: Xabier Rodriguez Calvar <[email protected]>
Date: Thu, 27 Jun 2024 15:17:33 +0200
Subject: [PATCH] [videosink] add libbrcmgstutil.la to LIBADD

It was preventing videosink from loading properly in runtime. audiosink uses the same.
---
reference/videosink/src/Makefile.am | 1 +
1 file changed, 1 insertion(+)

diff --git a/reference/videosink/src/Makefile.am b/reference/videosink/src/Makefile.am
index 064abd1..faabae6 100755
--- a/reference/videosink/src/Makefile.am
+++ b/reference/videosink/src/Makefile.am
@@ -46,3 +46,4 @@ plugin_LTLIBRARIES = libbrcmvideosink.la
libbrcmvideosink_la_SOURCES = gst_brcm_video_sink.c video_sink_properties.c
libbrcmvideosink_la_LDFLAGS = $(AM_LDFLAGS)
libbrcmvideosink_la_LDFLAGS += -module -avoid-version
+libbrcmvideosink_la_LIBADD = $(top_builddir)/reference/util/src/libbrcmgstutil.la
--
2.43.0

Loading

0 comments on commit d319a11

Please sign in to comment.