gstreamer-java / gst1-java-core

Java bindings for GStreamer 1.x
GNU Lesser General Public License v3.0
188 stars 72 forks source link

No such Gstreamer factory: webrtcbin #273

Closed krambojun closed 11 months ago

krambojun commented 11 months ago

i get this error with gstreamer 1.22.4

java.lang.IllegalArgumentException: No such Gstreamer factory: webrtcbin

at org.freedesktop.gstreamer.ElementFactory.makeRawElement(ElementFactory.java:307)
at org.freedesktop.gstreamer.Element.makeRawElement(Element.java:104)
at org.freedesktop.gstreamer.webrtc.WebRTCBin.<init>(WebRTCBin.java:52)
neilcsmith-net commented 11 months ago

What OS? What package(s) are installed?

krambojun commented 11 months ago

Mac OS Ventura Version 13.4.1

% brew list ==> Formulae aom libserdes aribb24 libshout asdf libsndfile atk libsodium autoconf libsoup automake libsoxr avro-c libtasn1 bash libtiff brotli libtool ca-certificates libunibreak cairo libunistring cjson libusrsctp coreutils libvidstab dav1d libvmaf delve libvorbis docker-mfa libvpx faac libx11 faad2 libxau fdk-aac libxcb ffmpeg libxdmcp flac libxext fontconfig libxrender freetype libyaml frei0r little-cms2 fribidi lz4 gd lzlib gdk-pixbuf lzo gettext m4 giflib maven git maven-completion glib mbedtls glib-networking meson gmp mpdecimal gnutls mpg123 go musepack gobject-introspection netpbm goc nettle goispdump ninja golangci-lint oniguruma graphene opencore-amr graphite2 openexr graphviz openjdk gsettings-desktop-schemas openjpeg gstreamer openssl@1.1 gtk+3 openssl@3 gtk4 opus gts orc harfbuzz p11-kit hicolor-icon-theme pango highway pcre2 icu4c pgcli imath pixman jansson pkg-config jasper py3cairo jpeg-turbo pygments jpeg-xl pygobject3 jq python-tabulate json-glib python-typing-extensions k9s python@3.11 kcat rav1e krb5 readline kubeconfig rtmpdump kubectx rubberband kubernetes-cli sdl2 lame six leptonica snappy libarchive speex libass sqlite libavif srt libb2 srtp libbluray svt-av1 libcuefile taglib libepoxy tesseract libevent theora libidn2 unbound libnghttp2 unixodbc libogg webp libpng x264 libpq x265 libpsl xorgproto libpthread-stubs xvid librdkafka xz libreplaygain yajl librist zeromq librsvg zimg libsamplerate zstd

==> Casks temurin11

neilcsmith-net commented 11 months ago

I've never tried using gst1-java-core with the package from brew.

Try running in a terminal (checking the command name is correct) -

gst-inspect-1.0 webrtcbin

Does that show help or a missing plugin?

If missing, then it's possible that brew doesn't included that element. If that works, then I would guess paths are not configured correctly in your code.

krambojun commented 11 months ago

Yes it seems gstreamer does not include it:

% gst-inspect-1.0 webrtcbin objc[5062]: Class ResultReceiver is implemented in both /opt/homebrew/Cellar/gtk+3/3.24.38/lib/libgtk-3.0.dylib (0x10463ddf8) and /opt/homebrew/Cellar/gtk4/4.10.4/lib/libgtk-4.1.dylib (0x11948eec0). One of the two will be used. Which one is undefined. objc[5062]: Class GtkApplicationQuartzDelegate is implemented in both /opt/homebrew/Cellar/gtk+3/3.24.38/lib/libgtk-3.0.dylib (0x10463de20) and /opt/homebrew/Cellar/gtk4/4.10.4/lib/libgtk-4.1.dylib (0x11948eee8). One of the two will be used. Which one is undefined. objc[5062]: Class GNSMenuItem is implemented in both /opt/homebrew/Cellar/gtk+3/3.24.38/lib/libgtk-3.0.dylib (0x10463de70) and /opt/homebrew/Cellar/gtk4/4.10.4/lib/libgtk-4.1.dylib (0x11948ef38). One of the two will be used. Which one is undefined. objc[5062]: Class GNSMenu is implemented in both /opt/homebrew/Cellar/gtk+3/3.24.38/lib/libgtk-3.0.dylib (0x10463de98) and /opt/homebrew/Cellar/gtk4/4.10.4/lib/libgtk-4.1.dylib (0x11948ef60). One of the two will be used. Which one is undefined. objc[5062]: Class FilterComboBox is implemented in both /opt/homebrew/Cellar/gtk+3/3.24.38/lib/libgtk-3.0.dylib (0x10463df10) and /opt/homebrew/Cellar/gtk4/4.10.4/lib/libgtk-4.1.dylib (0x11948efd8). One of the two will be used. Which one is undefined. objc[5062]: Class gdkCoreCursor is implemented in both /opt/homebrew/Cellar/gtk+3/3.24.38/lib/libgdk-3.0.dylib (0x103991580) and /opt/homebrew/Cellar/gtk4/4.10.4/lib/libgtk-4.1.dylib (0x11948f028). One of the two will be used. Which one is undefined. No such element or plugin 'webrtcbin'

Is there away to include it ?

neilcsmith-net commented 11 months ago

Ask brew upstream, or check out the GStreamer project's own packages.