Android rswebrtc

hello!
We manage to use gstreamer webrtc rust plugins on many platoforms, from embedded linux to windowos desktop.
But trying to test on Android was a bit difficult due to old tutorials.
Anyway after make it runs, applying simple changes to the Gstreamer Tutorial3, we have some issue to use the webrtcsrc plugin against the android universal static build 1.23.90 or 1.24.1 , it results below error.

_init_static_plugins 0x0000007aa6d2619c
0x0000007aa7ea5fa4
g_option_context_parse 0x0000007aa7fb5528
gst_init_check 0x0000007aa7ea616c
…
…

The changes are simply adding some extra plugins and lib in the Android.mk

GSTREAMER_PLUGINS         := $(GSTREAMER_MY_CORE) $(GSTREAMER_PLUGINS_SYS) $(GSTREAMER_MY_EFFECTS) rswebrtc
GSTREAMER_EXTRA_DEPS      := gstreamer-video-1.0 gobject-2.0  gstreamer-webrtc-1.0 gstreamer-sdp-1.0 gstreamer-video-1.0 libsoup-2.4 json-glib-1.0 glib-2.0
GSTREAMER_EXTRA_LIBS      := -liconv -lgstrswebrtc  -lgstbase-1.0 -lgstreamer-1.0 -lssl -lcrypto -lgobject-2.0 -lgio-2.0 -lglib-2.0 -lintl -llog -lunwind -ldl -lm -lc -lgstwebrtc -lgstrswebrtc

Any idea or updated example for Android?

2 Likes

That sounds like Rust-based plugin initialization hangs on Android with GStreamer 1.24.0 (#3358) · Issues · GStreamer / gstreamer · GitLab

Hello,
yep it sounds exactly that.
I tried on gst branch and related android_universa built on gst 1.23.60 , 1.24 and 1.24.1 on multiple devices emulated and real.
Considering that we are already using webrtcsrc/sink and the rust signalling server is better wait for a fix instead of start using the “bad” webrtc.
Thanks!

Following that discussion on that link, I can confirm that disabling Rust plugins (some removing them from the plugins.mk) the 1.24.1 universal package works just fine.

Had some “noise” from android Studio, trying to upgrade gradle, NDK and other things but that’s normal:
VScode coding and gradle build from command line.
vs
Android Studio for debug on target and a nice logcat.

So we have WebRTC plugin example running, but again we would like to avoid that complexity, we are already doing lot of gstreamer development.
Thanks again!

@leonardosalvatore hi! I’m looking into this now. Not sure what’s going on but all plugins crash reliably at initialization, and the signature looks the same in each case.

1 Like

Hello @amyspark seems that you made it. That’s great!
Any idea when new binaries are planned to be released here or maybe on 1.24.2?
https://gstreamer.freedesktop.org/data/pkg/android/1.24.1/

Thanks!

i see that is in 1.24.1.1

right? =]

It should be available on 1.24.2.

Just want you (@amyspark @slomo )to know that webrtcsrc Rust gstreamer plugin is now running nicely on Android.
Thanks!

1 Like