Hlsdemux2 on Android and iOS

Is the hlsdemux2 element available on Android and iOS?

Somehow I can’t find it.
I used the latest precompiled pkg.

Is it possible that the Rust elements are not available on Android and iOS? Or do I have to change something?

I can find hlsdemux (without 2) and it works.

hlsdemux2 is not a rust plugin, and it’s been available since 1.22.0 . Which version have you downloaded, for what platform ?

currently i use gstreamer-1.0-android-universal-1.22.10 (arm64)

I get this error


0:00:01.255824999 0xb4000076384f4d20 ../gst/gstelementfactory.c:765:gst_element_factory_make_valist no such element factory "hlsdemux2"!

Im not sure if it is a problem with the autogenerated gstreamer_android.c

#include <gst/gst.h>
#include <gio/gio.h>

#define GST_G_IO_MODULE_DECLARE(name) \
extern void G_PASTE(g_io_, G_PASTE(name, _load)) (gpointer data)

#define GST_G_IO_MODULE_LOAD(name) \
G_PASTE(g_io_, G_PASTE(name, _load)) (NULL)

/* Declaration of static plugins */
  GST_PLUGIN_STATIC_DECLARE(coreelements);  GST_PLUGIN_STATIC_DECLARE(coretracers);  GST_PLUGIN_STATIC_DECLARE(adder);  GST_PLUGIN_STATIC_DECLARE(app);  GST_PLUGIN_STATIC_DECLARE(audioconvert);  GST_PLUGIN_STATIC_DECLARE(audiomixer);  GST_PLUGIN_STATIC_DECLARE(audiorate);  GST_PLUGIN_STATIC_DECLARE(audioresample);  GST_PLUGIN_STATIC_DECLARE(audiotestsrc);  GST_PLUGIN_STATIC_DECLARE(compositor);  GST_PLUGIN_STATIC_DECLARE(gio);  GST_PLUGIN_STATIC_DECLARE(overlaycomposition);  GST_PLUGIN_STATIC_DECLARE(pango);  GST_PLUGIN_STATIC_DECLARE(rawparse);  GST_PLUGIN_STATIC_DECLARE(typefindfunctions);  GST_PLUGIN_STATIC_DECLARE(videoconvertscale);  GST_PLUGIN_STATIC_DECLARE(videorate);  GST_PLUGIN_STATIC_DECLARE(videotestsrc);  GST_PLUGIN_STATIC_DECLARE(volume);  GST_PLUGIN_STATIC_DECLARE(autodetect);  GST_PLUGIN_STATIC_DECLARE(videofilter);  GST_PLUGIN_STATIC_DECLARE(switchbin);  GST_PLUGIN_STATIC_DECLARE(opengl);  GST_PLUGIN_STATIC_DECLARE(ipcpipeline);  GST_PLUGIN_STATIC_DECLARE(opensles);  GST_PLUGIN_STATIC_DECLARE(alpha);  GST_PLUGIN_STATIC_DECLARE(alphacolor);  GST_PLUGIN_STATIC_DECLARE(audiofx);  GST_PLUGIN_STATIC_DECLARE(cairo);  GST_PLUGIN_STATIC_DECLARE(cutter);  GST_PLUGIN_STATIC_DECLARE(debug);  GST_PLUGIN_STATIC_DECLARE(deinterlace);  GST_PLUGIN_STATIC_DECLARE(dtmf);  GST_PLUGIN_STATIC_DECLARE(effectv);  GST_PLUGIN_STATIC_DECLARE(equalizer);  GST_PLUGIN_STATIC_DECLARE(gdkpixbuf);  GST_PLUGIN_STATIC_DECLARE(imagefreeze);  GST_PLUGIN_STATIC_DECLARE(interleave);  GST_PLUGIN_STATIC_DECLARE(level);  GST_PLUGIN_STATIC_DECLARE(multifile);  GST_PLUGIN_STATIC_DECLARE(replaygain);  GST_PLUGIN_STATIC_DECLARE(shapewipe);  GST_PLUGIN_STATIC_DECLARE(smpte);  GST_PLUGIN_STATIC_DECLARE(spectrum);  GST_PLUGIN_STATIC_DECLARE(videobox);  GST_PLUGIN_STATIC_DECLARE(videocrop);  GST_PLUGIN_STATIC_DECLARE(videomixer);  GST_PLUGIN_STATIC_DECLARE(accurip);  GST_PLUGIN_STATIC_DECLARE(aes);  GST_PLUGIN_STATIC_DECLARE(aiff);  GST_PLUGIN_STATIC_DECLARE(audiobuffersplit);  GST_PLUGIN_STATIC_DECLARE(audiofxbad);  GST_PLUGIN_STATIC_DECLARE(audiolatency);  GST_PLUGIN_STATIC_DECLARE(audiomixmatrix);  GST_PLUGIN_STATIC_DECLARE(autoconvert);  GST_PLUGIN_STATIC_DECLARE(bayer);  GST_PLUGIN_STATIC_DECLARE(coloreffects);  GST_PLUGIN_STATIC_DECLARE(closedcaption);  GST_PLUGIN_STATIC_DECLARE(debugutilsbad);  GST_PLUGIN_STATIC_DECLARE(fieldanalysis);  GST_PLUGIN_STATIC_DECLARE(freeverb);  GST_PLUGIN_STATIC_DECLARE(frei0r);  GST_PLUGIN_STATIC_DECLARE(gaudieffects);  GST_PLUGIN_STATIC_DECLARE(geometrictransform);  GST_PLUGIN_STATIC_DECLARE(inter);  GST_PLUGIN_STATIC_DECLARE(interlace);  GST_PLUGIN_STATIC_DECLARE(ivtc);  GST_PLUGIN_STATIC_DECLARE(legacyrawparse);  GST_PLUGIN_STATIC_DECLARE(proxy);  GST_PLUGIN_STATIC_DECLARE(removesilence);  GST_PLUGIN_STATIC_DECLARE(segmentclip);  GST_PLUGIN_STATIC_DECLARE(smooth);  GST_PLUGIN_STATIC_DECLARE(speed);  GST_PLUGIN_STATIC_DECLARE(soundtouch);  GST_PLUGIN_STATIC_DECLARE(timecode);  GST_PLUGIN_STATIC_DECLARE(videofiltersbad);  GST_PLUGIN_STATIC_DECLARE(videoframe_audiolevel);  GST_PLUGIN_STATIC_DECLARE(videosignal);  GST_PLUGIN_STATIC_DECLARE(webrtcdsp);  GST_PLUGIN_STATIC_DECLARE(ladspa);  GST_PLUGIN_STATIC_DECLARE(tcp);  GST_PLUGIN_STATIC_DECLARE(rtsp);  GST_PLUGIN_STATIC_DECLARE(rtp);  GST_PLUGIN_STATIC_DECLARE(rtpmanager);  GST_PLUGIN_STATIC_DECLARE(soup);  GST_PLUGIN_STATIC_DECLARE(udp);  GST_PLUGIN_STATIC_DECLARE(dtls);  GST_PLUGIN_STATIC_DECLARE(netsim);  GST_PLUGIN_STATIC_DECLARE(rist);  GST_PLUGIN_STATIC_DECLARE(rtmp2);  GST_PLUGIN_STATIC_DECLARE(rtpmanagerbad);  GST_PLUGIN_STATIC_DECLARE(rtponvif);  GST_PLUGIN_STATIC_DECLARE(sctp);  GST_PLUGIN_STATIC_DECLARE(sdpelem);  GST_PLUGIN_STATIC_DECLARE(srtp);  GST_PLUGIN_STATIC_DECLARE(srt);  GST_PLUGIN_STATIC_DECLARE(webrtc);  GST_PLUGIN_STATIC_DECLARE(nice);  GST_PLUGIN_STATIC_DECLARE(rtspclientsink);  GST_PLUGIN_STATIC_DECLARE(asfmux);  GST_PLUGIN_STATIC_DECLARE(dtsdec);  GST_PLUGIN_STATIC_DECLARE(mpegpsdemux);  GST_PLUGIN_STATIC_DECLARE(mpegpsmux);  GST_PLUGIN_STATIC_DECLARE(mpegtsdemux);  GST_PLUGIN_STATIC_DECLARE(mpegtsmux);  GST_PLUGIN_STATIC_DECLARE(voaacenc);  GST_PLUGIN_STATIC_DECLARE(a52dec);  GST_PLUGIN_STATIC_DECLARE(amrnb);  GST_PLUGIN_STATIC_DECLARE(amrwbdec);  GST_PLUGIN_STATIC_DECLARE(asf);  GST_PLUGIN_STATIC_DECLARE(dvdsub);  GST_PLUGIN_STATIC_DECLARE(dvdlpcmdec);  GST_PLUGIN_STATIC_DECLARE(realmedia);  GST_PLUGIN_STATIC_DECLARE(x264);  GST_PLUGIN_STATIC_DECLARE(libav);  GST_PLUGIN_STATIC_DECLARE(subparse);  GST_PLUGIN_STATIC_DECLARE(ogg);  GST_PLUGIN_STATIC_DECLARE(theora);  GST_PLUGIN_STATIC_DECLARE(vorbis);  GST_PLUGIN_STATIC_DECLARE(opus);  GST_PLUGIN_STATIC_DECLARE(ivorbisdec);  GST_PLUGIN_STATIC_DECLARE(adaptivedemux2);  GST_PLUGIN_STATIC_DECLARE(alaw);  GST_PLUGIN_STATIC_DECLARE(apetag);  GST_PLUGIN_STATIC_DECLARE(audioparsers);  GST_PLUGIN_STATIC_DECLARE(auparse);  GST_PLUGIN_STATIC_DECLARE(avi);  GST_PLUGIN_STATIC_DECLARE(dv);  GST_PLUGIN_STATIC_DECLARE(flac);  GST_PLUGIN_STATIC_DECLARE(flv);  GST_PLUGIN_STATIC_DECLARE(flxdec);  GST_PLUGIN_STATIC_DECLARE(icydemux);  GST_PLUGIN_STATIC_DECLARE(id3demux);  GST_PLUGIN_STATIC_DECLARE(isomp4);  GST_PLUGIN_STATIC_DECLARE(jpeg);  GST_PLUGIN_STATIC_DECLARE(lame);  GST_PLUGIN_STATIC_DECLARE(matroska);  GST_PLUGIN_STATIC_DECLARE(mpg123);  GST_PLUGIN_STATIC_DECLARE(mulaw);  GST_PLUGIN_STATIC_DECLARE(multipart);  GST_PLUGIN_STATIC_DECLARE(png);  GST_PLUGIN_STATIC_DECLARE(speex);  GST_PLUGIN_STATIC_DECLARE(taglib);  GST_PLUGIN_STATIC_DECLARE(vpx);  GST_PLUGIN_STATIC_DECLARE(wavenc);  GST_PLUGIN_STATIC_DECLARE(wavpack);  GST_PLUGIN_STATIC_DECLARE(wavparse);  GST_PLUGIN_STATIC_DECLARE(xingmux);  GST_PLUGIN_STATIC_DECLARE(y4menc);  GST_PLUGIN_STATIC_DECLARE(adpcmdec);  GST_PLUGIN_STATIC_DECLARE(adpcmenc);  GST_PLUGIN_STATIC_DECLARE(assrender);  GST_PLUGIN_STATIC_DECLARE(bz2);  GST_PLUGIN_STATIC_DECLARE(codecalpha);  GST_PLUGIN_STATIC_DECLARE(codectimestamper);  GST_PLUGIN_STATIC_DECLARE(dash);  GST_PLUGIN_STATIC_DECLARE(dvbsubenc);  GST_PLUGIN_STATIC_DECLARE(dvbsuboverlay);  GST_PLUGIN_STATIC_DECLARE(dvdspu);  GST_PLUGIN_STATIC_DECLARE(hls);  GST_PLUGIN_STATIC_DECLARE(id3tag);  GST_PLUGIN_STATIC_DECLARE(ivfparse);  GST_PLUGIN_STATIC_DECLARE(kate);  GST_PLUGIN_STATIC_DECLARE(midi);  GST_PLUGIN_STATIC_DECLARE(mxf);  GST_PLUGIN_STATIC_DECLARE(openh264);  GST_PLUGIN_STATIC_DECLARE(opusparse);  GST_PLUGIN_STATIC_DECLARE(pcapparse);  GST_PLUGIN_STATIC_DECLARE(pnm);  GST_PLUGIN_STATIC_DECLARE(rfbsrc);  GST_PLUGIN_STATIC_DECLARE(siren);  GST_PLUGIN_STATIC_DECLARE(smoothstreaming);  GST_PLUGIN_STATIC_DECLARE(subenc);  GST_PLUGIN_STATIC_DECLARE(videoparsersbad);  GST_PLUGIN_STATIC_DECLARE(y4mdec);  GST_PLUGIN_STATIC_DECLARE(jpegformat);  GST_PLUGIN_STATIC_DECLARE(gdp);  GST_PLUGIN_STATIC_DECLARE(rsvg);  GST_PLUGIN_STATIC_DECLARE(openjpeg);  GST_PLUGIN_STATIC_DECLARE(spandsp);  GST_PLUGIN_STATIC_DECLARE(sbc);  GST_PLUGIN_STATIC_DECLARE(zbar);  GST_PLUGIN_STATIC_DECLARE(androidmedia);  GST_PLUGIN_STATIC_DECLARE(playback);

/* Declaration of static gio modules */
  GST_G_IO_MODULE_DECLARE(openssl);

/* Call this function to load GIO modules */
static void
gst_android_load_gio_modules (void)
{
  GTlsBackend *backend;
  const gchar *ca_certs;

   GST_G_IO_MODULE_LOAD(openssl);

  ca_certs = g_getenv ("CA_CERTIFICATES");

  backend = g_tls_backend_get_default ();
  if (backend && ca_certs) {
    GTlsDatabase *db;
    GError *error = NULL;

    db = g_tls_file_database_new (ca_certs, &error);
    if (db) {
      g_tls_backend_set_default_database (backend, db);
      g_object_unref (db);
    } else {
      g_warning ("Failed to create a database from file: %s",
          error ? error->message : "Unknown");
    }
  }
}

/* This is called by gst_init() */
void
gst_init_static_plugins (void)
{
   GST_PLUGIN_STATIC_REGISTER(coreelements);  GST_PLUGIN_STATIC_REGISTER(coretracers);  GST_PLUGIN_STATIC_REGISTER(adder);  GST_PLUGIN_STATIC_REGISTER(app);  GST_PLUGIN_STATIC_REGISTER(audioconvert);  GST_PLUGIN_STATIC_REGISTER(audiomixer);  GST_PLUGIN_STATIC_REGISTER(audiorate);  GST_PLUGIN_STATIC_REGISTER(audioresample);  GST_PLUGIN_STATIC_REGISTER(audiotestsrc);  GST_PLUGIN_STATIC_REGISTER(compositor);  GST_PLUGIN_STATIC_REGISTER(gio);  GST_PLUGIN_STATIC_REGISTER(overlaycomposition);  GST_PLUGIN_STATIC_REGISTER(pango);  GST_PLUGIN_STATIC_REGISTER(rawparse);  GST_PLUGIN_STATIC_REGISTER(typefindfunctions);  GST_PLUGIN_STATIC_REGISTER(videoconvertscale);  GST_PLUGIN_STATIC_REGISTER(videorate);  GST_PLUGIN_STATIC_REGISTER(videotestsrc);  GST_PLUGIN_STATIC_REGISTER(volume);  GST_PLUGIN_STATIC_REGISTER(autodetect);  GST_PLUGIN_STATIC_REGISTER(videofilter);  GST_PLUGIN_STATIC_REGISTER(switchbin);  GST_PLUGIN_STATIC_REGISTER(opengl);  GST_PLUGIN_STATIC_REGISTER(ipcpipeline);  GST_PLUGIN_STATIC_REGISTER(opensles);  GST_PLUGIN_STATIC_REGISTER(alpha);  GST_PLUGIN_STATIC_REGISTER(alphacolor);  GST_PLUGIN_STATIC_REGISTER(audiofx);  GST_PLUGIN_STATIC_REGISTER(cairo);  GST_PLUGIN_STATIC_REGISTER(cutter);  GST_PLUGIN_STATIC_REGISTER(debug);  GST_PLUGIN_STATIC_REGISTER(deinterlace);  GST_PLUGIN_STATIC_REGISTER(dtmf);  GST_PLUGIN_STATIC_REGISTER(effectv);  GST_PLUGIN_STATIC_REGISTER(equalizer);  GST_PLUGIN_STATIC_REGISTER(gdkpixbuf);  GST_PLUGIN_STATIC_REGISTER(imagefreeze);  GST_PLUGIN_STATIC_REGISTER(interleave);  GST_PLUGIN_STATIC_REGISTER(level);  GST_PLUGIN_STATIC_REGISTER(multifile);  GST_PLUGIN_STATIC_REGISTER(replaygain);  GST_PLUGIN_STATIC_REGISTER(shapewipe);  GST_PLUGIN_STATIC_REGISTER(smpte);  GST_PLUGIN_STATIC_REGISTER(spectrum);  GST_PLUGIN_STATIC_REGISTER(videobox);  GST_PLUGIN_STATIC_REGISTER(videocrop);  GST_PLUGIN_STATIC_REGISTER(videomixer);  GST_PLUGIN_STATIC_REGISTER(accurip);  GST_PLUGIN_STATIC_REGISTER(aes);  GST_PLUGIN_STATIC_REGISTER(aiff);  GST_PLUGIN_STATIC_REGISTER(audiobuffersplit);  GST_PLUGIN_STATIC_REGISTER(audiofxbad);  GST_PLUGIN_STATIC_REGISTER(audiolatency);  GST_PLUGIN_STATIC_REGISTER(audiomixmatrix);  GST_PLUGIN_STATIC_REGISTER(autoconvert);  GST_PLUGIN_STATIC_REGISTER(bayer);  GST_PLUGIN_STATIC_REGISTER(coloreffects);  GST_PLUGIN_STATIC_REGISTER(closedcaption);  GST_PLUGIN_STATIC_REGISTER(debugutilsbad);  GST_PLUGIN_STATIC_REGISTER(fieldanalysis);  GST_PLUGIN_STATIC_REGISTER(freeverb);  GST_PLUGIN_STATIC_REGISTER(frei0r);  GST_PLUGIN_STATIC_REGISTER(gaudieffects);  GST_PLUGIN_STATIC_REGISTER(geometrictransform);  GST_PLUGIN_STATIC_REGISTER(inter);  GST_PLUGIN_STATIC_REGISTER(interlace);  GST_PLUGIN_STATIC_REGISTER(ivtc);  GST_PLUGIN_STATIC_REGISTER(legacyrawparse);  GST_PLUGIN_STATIC_REGISTER(proxy);  GST_PLUGIN_STATIC_REGISTER(removesilence);  GST_PLUGIN_STATIC_REGISTER(segmentclip);  GST_PLUGIN_STATIC_REGISTER(smooth);  GST_PLUGIN_STATIC_REGISTER(speed);  GST_PLUGIN_STATIC_REGISTER(soundtouch);  GST_PLUGIN_STATIC_REGISTER(timecode);  GST_PLUGIN_STATIC_REGISTER(videofiltersbad);  GST_PLUGIN_STATIC_REGISTER(videoframe_audiolevel);  GST_PLUGIN_STATIC_REGISTER(videosignal);  GST_PLUGIN_STATIC_REGISTER(webrtcdsp);  GST_PLUGIN_STATIC_REGISTER(ladspa);  GST_PLUGIN_STATIC_REGISTER(tcp);  GST_PLUGIN_STATIC_REGISTER(rtsp);  GST_PLUGIN_STATIC_REGISTER(rtp);  GST_PLUGIN_STATIC_REGISTER(rtpmanager);  GST_PLUGIN_STATIC_REGISTER(soup);  GST_PLUGIN_STATIC_REGISTER(udp);  GST_PLUGIN_STATIC_REGISTER(dtls);  GST_PLUGIN_STATIC_REGISTER(netsim);  GST_PLUGIN_STATIC_REGISTER(rist);  GST_PLUGIN_STATIC_REGISTER(rtmp2);  GST_PLUGIN_STATIC_REGISTER(rtpmanagerbad);  GST_PLUGIN_STATIC_REGISTER(rtponvif);  GST_PLUGIN_STATIC_REGISTER(sctp);  GST_PLUGIN_STATIC_REGISTER(sdpelem);  GST_PLUGIN_STATIC_REGISTER(srtp);  GST_PLUGIN_STATIC_REGISTER(srt);  GST_PLUGIN_STATIC_REGISTER(webrtc);  GST_PLUGIN_STATIC_REGISTER(nice);  GST_PLUGIN_STATIC_REGISTER(rtspclientsink);  GST_PLUGIN_STATIC_REGISTER(asfmux);  GST_PLUGIN_STATIC_REGISTER(dtsdec);  GST_PLUGIN_STATIC_REGISTER(mpegpsdemux);  GST_PLUGIN_STATIC_REGISTER(mpegpsmux);  GST_PLUGIN_STATIC_REGISTER(mpegtsdemux);  GST_PLUGIN_STATIC_REGISTER(mpegtsmux);  GST_PLUGIN_STATIC_REGISTER(voaacenc);  GST_PLUGIN_STATIC_REGISTER(a52dec);  GST_PLUGIN_STATIC_REGISTER(amrnb);  GST_PLUGIN_STATIC_REGISTER(amrwbdec);  GST_PLUGIN_STATIC_REGISTER(asf);  GST_PLUGIN_STATIC_REGISTER(dvdsub);  GST_PLUGIN_STATIC_REGISTER(dvdlpcmdec);  GST_PLUGIN_STATIC_REGISTER(realmedia);  GST_PLUGIN_STATIC_REGISTER(x264);  GST_PLUGIN_STATIC_REGISTER(libav);  GST_PLUGIN_STATIC_REGISTER(subparse);  GST_PLUGIN_STATIC_REGISTER(ogg);  GST_PLUGIN_STATIC_REGISTER(theora);  GST_PLUGIN_STATIC_REGISTER(vorbis);  GST_PLUGIN_STATIC_REGISTER(opus);  GST_PLUGIN_STATIC_REGISTER(ivorbisdec);  GST_PLUGIN_STATIC_REGISTER(adaptivedemux2);  GST_PLUGIN_STATIC_REGISTER(alaw);  GST_PLUGIN_STATIC_REGISTER(apetag);  GST_PLUGIN_STATIC_REGISTER(audioparsers);  GST_PLUGIN_STATIC_REGISTER(auparse);  GST_PLUGIN_STATIC_REGISTER(avi);  GST_PLUGIN_STATIC_REGISTER(dv);  GST_PLUGIN_STATIC_REGISTER(flac);  GST_PLUGIN_STATIC_REGISTER(flv);  GST_PLUGIN_STATIC_REGISTER(flxdec);  GST_PLUGIN_STATIC_REGISTER(icydemux);  GST_PLUGIN_STATIC_REGISTER(id3demux);  GST_PLUGIN_STATIC_REGISTER(isomp4);  GST_PLUGIN_STATIC_REGISTER(jpeg);  GST_PLUGIN_STATIC_REGISTER(lame);  GST_PLUGIN_STATIC_REGISTER(matroska);  GST_PLUGIN_STATIC_REGISTER(mpg123);  GST_PLUGIN_STATIC_REGISTER(mulaw);  GST_PLUGIN_STATIC_REGISTER(multipart);  GST_PLUGIN_STATIC_REGISTER(png);  GST_PLUGIN_STATIC_REGISTER(speex);  GST_PLUGIN_STATIC_REGISTER(taglib);  GST_PLUGIN_STATIC_REGISTER(vpx);  GST_PLUGIN_STATIC_REGISTER(wavenc);  GST_PLUGIN_STATIC_REGISTER(wavpack);  GST_PLUGIN_STATIC_REGISTER(wavparse);  GST_PLUGIN_STATIC_REGISTER(xingmux);  GST_PLUGIN_STATIC_REGISTER(y4menc);  GST_PLUGIN_STATIC_REGISTER(adpcmdec);  GST_PLUGIN_STATIC_REGISTER(adpcmenc);  GST_PLUGIN_STATIC_REGISTER(assrender);  GST_PLUGIN_STATIC_REGISTER(bz2);  GST_PLUGIN_STATIC_REGISTER(codecalpha);  GST_PLUGIN_STATIC_REGISTER(codectimestamper);  GST_PLUGIN_STATIC_REGISTER(dash);  GST_PLUGIN_STATIC_REGISTER(dvbsubenc);  GST_PLUGIN_STATIC_REGISTER(dvbsuboverlay);  GST_PLUGIN_STATIC_REGISTER(dvdspu);  GST_PLUGIN_STATIC_REGISTER(hls);  GST_PLUGIN_STATIC_REGISTER(id3tag);  GST_PLUGIN_STATIC_REGISTER(ivfparse);  GST_PLUGIN_STATIC_REGISTER(kate);  GST_PLUGIN_STATIC_REGISTER(midi);  GST_PLUGIN_STATIC_REGISTER(mxf);  GST_PLUGIN_STATIC_REGISTER(openh264);  GST_PLUGIN_STATIC_REGISTER(opusparse);  GST_PLUGIN_STATIC_REGISTER(pcapparse);  GST_PLUGIN_STATIC_REGISTER(pnm);  GST_PLUGIN_STATIC_REGISTER(rfbsrc);  GST_PLUGIN_STATIC_REGISTER(siren);  GST_PLUGIN_STATIC_REGISTER(smoothstreaming);  GST_PLUGIN_STATIC_REGISTER(subenc);  GST_PLUGIN_STATIC_REGISTER(videoparsersbad);  GST_PLUGIN_STATIC_REGISTER(y4mdec);  GST_PLUGIN_STATIC_REGISTER(jpegformat);  GST_PLUGIN_STATIC_REGISTER(gdp);  GST_PLUGIN_STATIC_REGISTER(rsvg);  GST_PLUGIN_STATIC_REGISTER(openjpeg);  GST_PLUGIN_STATIC_REGISTER(spandsp);  GST_PLUGIN_STATIC_REGISTER(sbc);  GST_PLUGIN_STATIC_REGISTER(zbar);  GST_PLUGIN_STATIC_REGISTER(androidmedia);  GST_PLUGIN_STATIC_REGISTER(playback);
  gst_android_load_gio_modules ();
}

Weird. It is defining/registering adaptivedemux2 (the plugin that contains hlsdemux2).

Do you see any other non-core plugins ?

I wrote a little print_all_plugins function

void print_all_plugins() {
    GList *g;
    GstRegistry *registry = gst_registry_get();

    GList *list = gst_registry_get_plugin_list (registry);
    for (g = list; g; g = g->next) {
        GstPlugin *plugin = GST_PLUGIN (g->data);
        g_print ("found Plugin %s", gst_plugin_get_name (plugin));
        gst_object_unref (plugin);
    }
    g_list_free (list);
}

this prints out 185 elements

found Plugin playback
found Plugin androidmedia
found Plugin zbar
found Plugin sbc
found Plugin spandsp
found Plugin openjpeg
found Plugin rsvg
found Plugin gdp
found Plugin jpegformat
found Plugin y4mdec
found Plugin videoparsersbad
found Plugin subenc
found Plugin smoothstreaming
found Plugin siren
found Plugin rfbsrc
found Plugin pnm
found Plugin pcapparse
found Plugin opusparse
found Plugin openh264
found Plugin mxf
found Plugin midi
found Plugin kate
found Plugin ivfparse
found Plugin id3tag
found Plugin hls
found Plugin dvdspu
found Plugin dvbsuboverlay
found Plugin dvbsubenc
found Plugin dash
found Plugin codectimestamper
found Plugin codecalpha
found Plugin bz2
found Plugin assrender
found Plugin adpcmenc
found Plugin adpcmdec
found Plugin y4menc
found Plugin xingmux
found Plugin wavparse
found Plugin wavpack
found Plugin wavenc
found Plugin vpx
found Plugin taglib
found Plugin speex
found Plugin png
found Plugin multipart
found Plugin mulaw
found Plugin mpg123
found Plugin matroska
found Plugin lame
found Plugin jpeg
found Plugin isomp4
found Plugin id3demux
found Plugin icydemux
found Plugin flxdec
found Plugin flv
found Plugin flac
found Plugin dv
found Plugin avi
found Plugin auparse
found Plugin audioparsers
found Plugin apetag
found Plugin alaw
found Plugin adaptivedemux2
found Plugin ivorbisdec
found Plugin opus
found Plugin vorbis
found Plugin theora
found Plugin ogg
found Plugin subparse
found Plugin libav
found Plugin x264
found Plugin realmedia
found Plugin dvdlpcmdec
found Plugin dvdsub
found Plugin asf
found Plugin amrwbdec
found Plugin amrnb
found Plugin a52dec
found Plugin voaacenc
found Plugin mpegtsmux
found Plugin mpegtsdemux
found Plugin mpegpsmux
found Plugin mpegpsdemux
found Plugin dtsdec
found Plugin asfmux
found Plugin rtspclientsink
found Plugin nice
found Plugin webrtc
found Plugin srt
found Plugin srtp
found Plugin sdpelem
found Plugin sctp
found Plugin rtponvif
found Plugin rtpmanagerbad
found Plugin rtmp2
found Plugin rist
found Plugin netsim
found Plugin dtls
found Plugin udp
found Plugin soup
found Plugin rtpmanager
found Plugin rtp
found Plugin rtsp
found Plugin tcp
found Plugin ladspa
found Plugin webrtcdsp
found Plugin videosignal
found Plugin videoframe_audiolevel
found Plugin videofiltersbad
found Plugin timecode
found Plugin soundtouch
found Plugin speed
found Plugin smooth
found Plugin segmentclip
found Plugin removesilence
found Plugin proxy
found Plugin legacyrawparse
found Plugin ivtc
found Plugin interlace
found Plugin inter
found Plugin geometrictransform
found Plugin gaudieffects
found Plugin frei0r
found Plugin freeverb
found Plugin fieldanalysis
found Plugin debugutilsbad
found Plugin closedcaption
found Plugin coloreffects
found Plugin bayer
found Plugin autoconvert
found Plugin audiomixmatrix
found Plugin audiolatency
found Plugin audiofxbad
found Plugin audiobuffersplit
found Plugin aiff
found Plugin aes
found Plugin accurip
found Plugin videomixer
found Plugin videocrop
found Plugin videobox
found Plugin spectrum
found Plugin smpte
found Plugin shapewipe
found Plugin replaygain
found Plugin multifile
found Plugin level
found Plugin interleave
found Plugin imagefreeze
found Plugin gdkpixbuf
found Plugin equalizer
found Plugin effectv
found Plugin dtmf
found Plugin deinterlace
found Plugin debug
found Plugin cutter
found Plugin cairo
found Plugin audiofx
found Plugin alphacolor
found Plugin alpha
found Plugin opensles
found Plugin ipcpipeline
found Plugin opengl
found Plugin switchbin
found Plugin videofilter
found Plugin autodetect
found Plugin volume
found Plugin videotestsrc
found Plugin videorate
found Plugin videoconvertscale
found Plugin typefindfunctions
found Plugin rawparse
found Plugin pango
found Plugin overlaycomposition
found Plugin gio
found Plugin compositor
found Plugin audiotestsrc
found Plugin audioresample
found Plugin audiorate
found Plugin audiomixer
found Plugin audioconvert
found Plugin app
found Plugin adder
found Plugin coretracers
found Plugin coreelements
found Plugin staticelements

but there is no hlsdemux2.

now that i’m writing this, am i getting plugins and elements mixed up?

It’s there alright. That’s the plugin containing the hlsdemux2 element

Now i have written a not so nice function to print out all elements

void print_elements() {
    GList *g;
    GList *list = gst_element_factory_list_get_elements(GST_ELEMENT_FACTORY_TYPE_ANY,
                                                        GST_RANK_NONE);
    for (g = list; g; g = g->next) {
        GstElementFactory *element = GST_ELEMENT_FACTORY(g->data);
        g_print ("found Element %s", gst_element_get_name (element));
        gst_object_unref (element);
    }
    g_list_free (list);
}

with some warnings a got this very long list.
I contains hlsdemux but not hlsdemux2

found Element vp8alphadecodebin
found Element vp9alphadecodebin
found Element mpegaudioparse
found Element aacparse
found Element ac3parse
found Element amrparse
found Element dcaparse
found Element flacparse
found Element h263parse
found Element h264parse
found Element mpeg4videoparse
found Element mpegvideoparse
found Element rtmp2sink
found Element rtmp2src
found Element rtpsink
found Element sbcparse
found Element wavpackparse
found Element 3gppmux
found Element adpcmdec
found Element adpcmenc
found Element aiffmux
found Element aiffparse
found Element alawdec
found Element alawenc
found Element amcauddec-omxgoogleaacdecoder
found Element amcauddec-omxgoogleamrnbdecoder
found Element amcauddec-omxgoogleamrwbdecoder
found Element amcauddec-omxgoogleflacdecoder
found Element amcauddec-omxgooglegsmdecoder
found Element amcauddec-omxgooglemp3decoder
found Element amcauddec-omxgoogleopusdecoder
found Element amrnbdec
found Element amrwbdec
found Element apedemux
found Element asfmux
found Element atscmux
found Element avdec_aac
found Element avdec_aac_fixed
found Element avdec_cook
found Element avdec_h264
found Element avdec_h265
found Element avdec_mpc7
found Element avdec_mpc8
found Element avdec_mpeg2video
found Element avdec_mpeg4
found Element avdec_mpegvideo
found Element avdec_msmpeg4
found Element avdec_real_144
found Element avdec_real_288
found Element avdec_rv10
found Element avdec_rv20
found Element avdec_rv30
found Element avdec_rv40
found Element avidemux
found Element avimux
found Element avisubtitle
found Element dashdemux
found Element dataurisrc
found Element dtsdec
found Element dvdemux
found Element dvdlpcmdec
found Element filesink
found Element filesrc
found Element flacdec
found Element flacenc
found Element flactag
found Element flvdemux
found Element flvmux
found Element flxdec
found Element hlsdemux
found Element icydemux
found Element id3demux
found Element id3mux
found Element ismlmux
found Element ivfparse
found Element jpeg2000parse
found Element jpegdec
found Element jpegenc
found Element katedec
found Element lamemp3enc
found Element matroskademux
found Element matroskamux
found Element midiparse
found Element mj2mux
found Element mp4mux
found Element mpegpsdemux
found Element mpegpsmux
found Element mpegtsmux
found Element mssdemux
found Element mulawdec
found Element mulawenc
found Element multipartdemux
found Element mxfdemux
found Element mxfmux
found Element oggaviparse
found Element oggdemux
found Element oggmux
found Element ogmaudioparse
found Element ogmtextparse
found Element ogmvideoparse
found Element openjpegdec
found Element openjpegenc
found Element openslessink
found Element openslessrc
found Element opusdec
found Element opusenc
found Element pngdec
found Element pngenc
found Element pngparse
found Element pnmdec
found Element pnmenc
found Element qtdemux
found Element qtmux
found Element ristsink
found Element ristsrc
found Element rmdemux
found Element rsvgdec
found Element rtpopusdepay
found Element rtpopuspay
found Element sbcdec
found Element souphttpsrc
found Element speexdec
found Element speexenc
found Element srtsink
found Element srtsrc
found Element ssaparse
found Element subparse
found Element theoradec
found Element theoraenc
found Element tsdemux
found Element vorbisdec
found Element vorbisenc
found Element vp8dec
found Element vp8enc
found Element vp9dec
found Element vp9enc
found Element wavenc
found Element wavpackdec
found Element wavparse
found Element webmmux
found Element x264enc
found Element y4menc
found Element rtpmp4vpay
found Element a52dec
found Element amcauddec-omxdolbyac4decoder
found Element amcviddec-omxgoogleh263decoder
found Element amcviddec-omxgoogleh264decoder
found Element amcviddec-omxgooglehevcdecoder
found Element amcviddec-omxgooglempeg4decoder
found Element amcviddec-omxgooglevp8decoder
found Element amcviddec-omxgooglevp9decoder
found Element amcvidenc-omxgoogleh263encoder
found Element amcvidenc-omxgoogleh264encoder
found Element amcvidenc-omxgooglempeg4encoder
found Element amcvidenc-omxgooglevp8encoder
found Element amcvidenc-omxgooglevp9encoder
found Element amrnbenc
found Element asfdemux
found Element auparse
found Element av1parse
found Element avdec_dvvideo
found Element avdec_sipr
found Element avdemux_mpc
found Element avdemux_mpc8
found Element avenc_a64multi
found Element avenc_a64multi5
found Element avenc_ac3
found Element avenc_ac3_fixed
found Element avenc_adpcm_adx
found Element avenc_adpcm_argo
found Element avenc_adpcm_ima_alp
found Element avenc_adpcm_ima_amv
found Element avenc_adpcm_ima_apm
found Element avenc_adpcm_ima_qt
found Element avenc_adpcm_ima_ssi
found Element avenc_adpcm_ima_wav
found Element avenc_adpcm_ima_ws
found Element avenc_adpcm_ms
found Element avenc_adpcm_swf
found Element avenc_adpcm_yamaha
found Element avenc_alac
found Element avenc_alias_pix
found Element avenc_amv
found Element avenc_apng
found Element avenc_aptx
found Element avenc_aptx_hd
found Element avenc_asv1
found Element avenc_asv2
found Element avenc_avrp
found Element avenc_avui
found Element avenc_bitpacked
found Element avenc_bmp
found Element avenc_cfhd
found Element avenc_cinepak
found Element avenc_cljr
found Element avenc_comfortnoise
found Element avenc_dca
found Element avenc_dnxhd
found Element avenc_dpx
found Element avenc_dvvideo
found Element avenc_eac3
found Element avenc_exr
found Element avenc_ffv1
found Element avenc_ffvhuff
found Element avenc_fits
found Element avenc_flashsv
found Element avenc_flashsv2
found Element avenc_flv
found Element avenc_g722
found Element avenc_g723_1
found Element avenc_g726
found Element avenc_g726le
found Element avenc_h261
found Element avenc_h263
found Element avenc_h263p
found Element avenc_huffyuv
found Element avenc_jpeg2000
found Element avenc_jpegls
found Element avenc_ljpeg
found Element avenc_magicyuv
found Element avenc_mjpeg
found Element avenc_mlp
found Element avenc_mp2
found Element avenc_mp2fixed
found Element avenc_mpeg1video
found Element avenc_mpeg2video
found Element avenc_mpeg4
found Element avenc_msmpeg4
found Element avenc_msmpeg4v2
found Element avenc_msvideo1
found Element avenc_nellymoser
found Element avenc_opus
found Element avenc_pam
found Element avenc_pbm
found Element avenc_pcm_vidc
found Element avenc_pcx
found Element avenc_pfm
found Element avenc_pgm
found Element avenc_pgmyuv
found Element avenc_png
found Element avenc_ppm
found Element avenc_prores
found Element avenc_prores_aw
found Element avenc_prores_ks
found Element avenc_qtrle
found Element avenc_r10k
found Element avenc_real_144
found Element avenc_roq_dpcm
found Element avenc_roqvideo
found Element avenc_rpza
found Element avenc_rv10
found Element avenc_rv20
found Element avenc_s302m
found Element avenc_sbc
found Element avenc_sgi
found Element avenc_smc
found Element avenc_snow
found Element avenc_sonic
found Element avenc_sonicls
found Element avenc_speedhq
found Element avenc_sunrast
found Element avenc_svq1
found Element avenc_targa
found Element avenc_tiff
found Element avenc_truehd
found Element avenc_tta
found Element avenc_utvideo
found Element avenc_vc2
found Element avenc_wavpack
found Element avenc_wmav1
found Element avenc_wmav2
found Element avenc_wmv1
found Element avenc_wmv2
found Element avenc_xbm
found Element avenc_xface
found Element avenc_xwd
found Element avenc_zmbv
found Element gdkpixbufdec
found Element giosink
found Element giosrc
found Element glimagesink
found Element h265parse
found Element ivorbisdec
found Element jifmux
found Element rademux
found Element rtpL16depay
found Element rtpL16pay
found Element rtpL24depay
found Element rtpL24pay
found Element rtpL8depay
found Element rtpL8pay
found Element rtpac3depay
found Element rtpac3pay
found Element rtpamrdepay
found Element rtpamrpay
found Element rtpbvdepay
found Element rtpbvpay
found Element rtpceltdepay
found Element rtpceltpay
found Element rtpdvdepay
found Element rtpdvpay
found Element rtpg722depay
found Element rtpg722pay
found Element rtpg723depay
found Element rtpg723pay
found Element rtpg726depay
found Element rtpg726pay
found Element rtpg729depay
found Element rtpg729pay
found Element rtpgsmdepay
found Element rtpgsmpay
found Element rtph261depay
found Element rtph261pay
found Element rtph263depay
found Element rtph263pay
found Element rtph263pdepay
found Element rtph263ppay
found Element rtph264depay
found Element rtph264pay
found Element rtph265depay
found Element rtph265pay
found Element rtpilbcdepay
found Element rtpilbcpay
found Element rtpisacdepay
found Element rtpisacpay
found Element rtpj2kdepay
found Element rtpj2kpay
found Element rtpjpegdepay
found Element rtpjpegpay
found Element rtpklvdepay
found Element rtpklvpay
found Element rtpmp1sdepay
found Element rtpmp2tdepay
found Element rtpmp2tpay
found Element rtpmp4adepay
found Element rtpmp4apay
found Element rtpmp4gdepay
found Element rtpmp4gpay
found Element rtpmp4vdepay
found Element rtpmpadepay
found Element rtpmpapay
found Element rtpmparobustdepay
found Element rtpmpvdepay
found Element rtpmpvpay
found Element rtppcmadepay
found Element rtppcmapay
found Element rtppcmudepay
found Element rtppcmupay
found Element rtpqcelpdepay
found Element rtpqdm2depay
found Element rtpsbcdepay
found Element rtpsirendepay
found Element rtpsirenpay
found Element rtpspeexdepay
found Element rtpspeexpay
found Element rtpsv3vdepay
found Element rtptheoradepay
found Element rtptheorapay
found Element rtpvorbisdepay
found Element rtpvorbispay
found Element rtpvrawdepay
found Element rtpvrawpay
found Element voaacenc
found Element vp9parse
found Element y4mdec
found Element amcauddec-c2androidaacdecoder
found Element amcauddec-c2androidamrnbdecoder
found Element amcauddec-c2androidamrwbdecoder
found Element amcauddec-c2androidflacdecoder
found Element amcauddec-c2androidg711alawdecoder
found Element amcauddec-c2androidg711mlawdecoder
found Element amcauddec-c2androidgsmdecoder
found Element amcauddec-c2androidmp3decoder
found Element amcauddec-c2androidopusdecoder
found Element amcauddec-c2androidrawdecoder
found Element amcauddec-c2androidvorbisdecoder
found Element amcauddec-c2dolbyac4decoder
found Element amcauddec-c2dolbyeac3decoder
found Element amcauddec-c2secamrnbdecoder
found Element amcauddec-c2secamrwbdecoder
found Element amcauddec-c2secflacdecoder
found Element amcauddec-c2secimadecoder
found Element amcauddec-c2secmp3decoder
found Element amcviddec-c2androidav1decoder
found Element amcviddec-c2androidavcdecoder
found Element amcviddec-c2androidh263decoder
found Element amcviddec-c2androidhevcdecoder
found Element amcviddec-c2androidmpeg4decoder
found Element amcviddec-c2androidvp8decoder
found Element amcviddec-c2androidvp9decoder
found Element amcviddec-c2exynosh264decoder
found Element amcviddec-c2exynoshevcdecoder
found Element amcviddec-c2exynosvp8decoder
found Element amcviddec-c2exynosvp9decoder
found Element amcviddec-c2secmpeg4decoder
found Element amcviddec-c2secvc1decoder
found Element amcvidenc-c2androidav1encoder
found Element amcvidenc-c2androidavcencoder
found Element amcvidenc-c2androidh263encoder
found Element amcvidenc-c2androidhevcencoder
found Element amcvidenc-c2androidmpeg4encoder
found Element amcvidenc-c2androidvp8encoder
found Element amcvidenc-c2androidvp9encoder
found Element amcvidenc-c2exynosh264encoder
found Element amcvidenc-c2exynoshevcencoder
found Element amcvidenc-c2exynosvp8encoder
found Element amcvidenc-c2exynosvp9encoder
found Element avdec_4xm
found Element avdec_8bps
found Element avdec_8svx_exp
found Element avdec_8svx_fib
found Element avdec_aac_latm
found Element avdec_aasc
found Element avdec_ac3
found Element avdec_ac3_fixed
found Element avdec_acelp_kelvin
found Element avdec_adpcm_4xm
found Element avdec_adpcm_adx
found Element avdec_adpcm_afc
found Element avdec_adpcm_agm
found Element avdec_adpcm_aica
found Element avdec_adpcm_argo
found Element avdec_adpcm_ct
found Element avdec_adpcm_dtk
found Element avdec_adpcm_ea
found Element avdec_adpcm_ea_maxis_xa
found Element avdec_adpcm_ea_r1
found Element avdec_adpcm_ea_r2
found Element avdec_adpcm_ea_r3
found Element avdec_adpcm_ea_xas
found Element avdec_adpcm_ima_acorn
found Element avdec_adpcm_ima_alp
found Element avdec_adpcm_ima_amv
found Element avdec_adpcm_ima_apc
found Element avdec_adpcm_ima_apm
found Element avdec_adpcm_ima_cunning
found Element avdec_adpcm_ima_dat4
found Element avdec_adpcm_ima_dk3
found Element avdec_adpcm_ima_dk4
found Element avdec_adpcm_ima_ea_eacs
found Element avdec_adpcm_ima_ea_sead
found Element avdec_adpcm_ima_iss
found Element avdec_adpcm_ima_moflex
found Element avdec_adpcm_ima_mtf
found Element avdec_adpcm_ima_oki
found Element avdec_adpcm_ima_qt
found Element avdec_adpcm_ima_rad
found Element avdec_adpcm_ima_smjpeg
found Element avdec_adpcm_ima_ssi
found Element avdec_adpcm_ima_wav
found Element avdec_adpcm_ima_ws
found Element avdec_adpcm_ms
found Element avdec_adpcm_mtaf
found Element avdec_adpcm_psx
found Element avdec_adpcm_sbpro_2
found Element avdec_adpcm_sbpro_3
found Element avdec_adpcm_sbpro_4
found Element avdec_adpcm_swf
found Element avdec_adpcm_thp
found Element avdec_adpcm_thp_le
found Element avdec_adpcm_vima
found Element avdec_adpcm_xa
found Element avdec_adpcm_yamaha
found Element avdec_adpcm_zork
found Element avdec_agm
found Element avdec_aic
found Element avdec_alac
found Element avdec_alias_pix
found Element avdec_als
found Element avdec_amrnb
found Element avdec_amrwb
found Element avdec_amv
found Element avdec_anm
found Element avdec_ansi
found Element avdec_ape
found Element avdec_apng
found Element avdec_aptx
found Element avdec_aptx_hd
found Element avdec_arbc
found Element avdec_argo
found Element avdec_asv1
found Element avdec_asv2
found Element avdec_atrac1
found Element avdec_atrac3
found Element avdec_atrac3al
found Element avdec_atrac3plus
found Element avdec_atrac3plusal
found Element avdec_atrac9
found Element avdec_aura
found Element avdec_aura2
found Element avdec_avrn
found Element avdec_avrp
found Element avdec_avs
found Element avdec_avui
found Element avdec_bethsoftvid
found Element avdec_bfi
found Element avdec_binkaudio_dct
found Element avdec_binkaudio_rdft
found Element avdec_binkvideo
found Element avdec_bintext
found Element avdec_bitpacked
found Element avdec_bmp
found Element avdec_bmv_audio
found Element avdec_bmv_video
found Element avdec_brender_pix
found Element avdec_c93
found Element avdec_camstudio
found Element avdec_camtasia
found Element avdec_cavs
found Element avdec_cdtoons
found Element avdec_cdxl
found Element avdec_cfhd
found Element avdec_cinepak
found Element avdec_clearvideo
found Element avdec_cljr
found Element avdec_cllc
found Element avdec_comfortnoise
found Element avdec_cpia
found Element avdec_cri
found Element avdec_cyuv
found Element avdec_dca
found Element avdec_dds
found Element avdec_derf_dpcm
found Element avdec_dfa
found Element avdec_dirac
found Element avdec_dnxhd
found Element avdec_dolby_e
found Element avdec_dpx
found Element avdec_dsd_lsbf
found Element avdec_dsd_lsbf_planar
found Element avdec_dsd_msbf
found Element avdec_dsd_msbf_planar
found Element avdec_dsicinaudio
found Element avdec_dsicinvideo
found Element avdec_dss_sp
found Element avdec_dst
found Element avdec_dvaudio
found Element avdec_dxa
found Element avdec_dxtory
found Element avdec_dxv
found Element avdec_eac3
found Element avdec_eacmv
found Element avdec_eamad
found Element avdec_eatgq
found Element avdec_eatgv
found Element avdec_eatqi
found Element avdec_escape124
found Element avdec_escape130
found Element avdec_evrc
found Element avdec_exr
found Element avdec_fastaudio
found Element avdec_ffv1
found Element avdec_ffvhuff
found Element avdec_fic
found Element avdec_fits
found Element avdec_flac
found Element avdec_flashsv
found Element avdec_flashsv2
found Element avdec_flic
found Element avdec_flv
found Element avdec_fmvc
found Element avdec_fraps
found Element avdec_frwu
found Element avdec_g2m
found Element avdec_g722
found Element avdec_g723_1
found Element avdec_g726
found Element avdec_g726le
found Element avdec_g729
found Element avdec_gdv
found Element avdec_gem
found Element avdec_gif
found Element avdec_gremlin_dpcm
found Element avdec_gsm
found Element avdec_gsm_ms
found Element avdec_h261
found Element avdec_h263
found Element avdec_h263i
found Element avdec_h263p
found Element avdec_hap
found Element avdec_hca
found Element avdec_hcom
found Element avdec_hnm4video
found Element avdec_hq_hqa
found Element avdec_hqx
found Element avdec_huffyuv
found Element avdec_hymt
found Element avdec_iac
found Element avdec_idcinvideo
found Element avdec_idf
found Element avdec_iff
found Element avdec_ilbc
found Element avdec_imc
found Element avdec_imm4
found Element avdec_imm5
found Element avdec_indeo2
found Element avdec_indeo3
found Element avdec_indeo4
found Element avdec_indeo5
found Element avdec_interplay_dpcm
found Element avdec_interplayacm
found Element avdec_interplayvideo
found Element avdec_ipu
found Element avdec_jpeg2000
found Element avdec_jpegls
found Element avdec_jv
found Element avdec_kgv1
found Element avdec_kmvc
found Element avdec_lagarith
found Element avdec_loco
found Element avdec_lscr
found Element avdec_m101
found Element avdec_mace3
found Element avdec_mace6
found Element avdec_magicyuv
found Element avdec_mdec
found Element avdec_metasound
found Element avdec_mimic
found Element avdec_mjpeg
found Element avdec_mjpegb
found Element avdec_mlp
found Element avdec_mmvideo
found Element avdec_mobiclip
found Element avdec_motionpixels
found Element avdec_mp1float
found Element avdec_mp2float
found Element avdec_mp3
found Element avdec_mp3adu
found Element avdec_mp3adufloat
found Element avdec_mp3float
found Element avdec_mp3on4
found Element avdec_mp3on4float
found Element avdec_msa1
found Element avdec_mscc
found Element avdec_msmpeg4v1
found Element avdec_msmpeg4v2
found Element avdec_msnsiren
found Element avdec_msp2
found Element avdec_msrle
found Element avdec_mss1
found Element avdec_mss2
found Element avdec_msvideo1
found Element avdec_mszh
found Element avdec_mts2
found Element avdec_mv30
found Element avdec_mvc1
found Element avdec_mvc2
found Element avdec_mvdv
found Element avdec_mvha
found Element avdec_mwsc
found Element avdec_mxpeg
found Element avdec_nellymoser
found Element avdec_notchlc
found Element avdec_nuv
found Element avdec_on2avc
found Element avdec_opus
found Element avdec_paf_audio
found Element avdec_paf_video
found Element avdec_pam
found Element avdec_pbm
found Element avdec_pcm_lxf
found Element avdec_pcm_sga
found Element avdec_pcm_vidc
found Element avdec_pcx
found Element avdec_pfm
found Element avdec_pgm
found Element avdec_pgmyuv
found Element avdec_pgx
found Element avdec_photocd
found Element avdec_pictor
found Element avdec_pixlet
found Element avdec_png
found Element avdec_ppm
found Element avdec_prores
found Element avdec_prosumer
found Element avdec_psd
found Element avdec_ptx
found Element avdec_qcelp
found Element avdec_qdm2
found Element avdec_qdmc
found Element avdec_qdraw
found Element avdec_qpeg
found Element avdec_qtrle
found Element avdec_r10k
found Element avdec_ralf
found Element avdec_rasc
found Element avdec_rl2
found Element avdec_roq_dpcm
found Element avdec_roqvideo
found Element avdec_rpza
found Element avdec_rscc
found Element avdec_s302m
found Element avdec_sanm
found Element avdec_sbc
found Element avdec_scpr
found Element avdec_screenpresso
found Element avdec_sdx2_dpcm
found Element avdec_sga
found Element avdec_sgi
found Element avdec_sgirle
found Element avdec_sheervideo
found Element avdec_shorten
found Element avdec_simbiosis_imx
found Element avdec_siren
found Element avdec_smackaud
found Element avdec_smackvid
found Element avdec_smc
found Element avdec_smvjpeg
found Element avdec_snow
found Element avdec_sol_dpcm
found Element avdec_sonic
found Element avdec_sp5x
found Element avdec_speedhq
found Element avdec_speex
found Element avdec_srgc
found Element avdec_sunrast
found Element avdec_svq1
found Element avdec_svq3
found Element avdec_tak
found Element avdec_targa
found Element avdec_targa_y216
found Element avdec_tdsc
found Element avdec_thp
found Element avdec_tiertexseqvideo
found Element avdec_tiff
found Element avdec_tmv
found Element avdec_truehd
found Element avdec_truemotion1
found Element avdec_truemotion2
found Element avdec_truemotion2rt
found Element avdec_truespeech
found Element avdec_tscc2
found Element avdec_tta
found Element avdec_twinvq
found Element avdec_txd
found Element avdec_ultimotion
found Element avdec_utvideo
found Element avdec_vb
found Element avdec_vble
found Element avdec_vc1
found Element avdec_vc1image
found Element avdec_vcr1
found Element avdec_vmdaudio
found Element avdec_vmdvideo
found Element avdec_vmnc
found Element avdec_vp3
found Element avdec_vp4
found Element avdec_vp5
found Element avdec_vp6
found Element avdec_vp6a
found Element avdec_vp6f
found Element avdec_vp7
found Element avdec_vp8
found Element avdec_vp9
found Element avdec_vqavideo
found Element avdec_wavesynth
found Element avdec_wcmv
found Element avdec_webp
found Element avdec_wmalossless
found Element avdec_wmapro
found Element avdec_wmav1
found Element avdec_wmav2
found Element avdec_wmavoice
found Element avdec_wmv1
found Element avdec_wmv2
found Element avdec_wmv3
found Element avdec_wmv3image
found Element avdec_wnv1
found Element avdec_ws_snd1
found Element avdec_xan_dpcm
found Element avdec_xan_wc3
found Element avdec_xan_wc4
found Element avdec_xbin
found Element avdec_xbm
found Element avdec_xface
found Element avdec_xl
found Element avdec_xma1
found Element avdec_xma2
found Element avdec_xpm
found Element avdec_xwd
found Element avdec_ylc
found Element avdec_yop
found Element avdec_zerocodec
found Element avdec_zmbv
found Element avdemux_4xm
found Element avdemux_aiff
found Element avdemux_ape
found Element avdemux_avs
found Element avdemux_bfstm
found Element avdemux_brstm
found Element avdemux_daud
found Element avdemux_dsf
found Element avdemux_ea
found Element avdemux_film_cpk
found Element avdemux_gif
found Element avdemux_gxf
found Element avdemux_idcin
found Element avdemux_iff
found Element avdemux_ipmovie
found Element avdemux_ivf
found Element avdemux_mm
found Element avdemux_mmf
found Element avdemux_mxf
found Element avdemux_nsv
found Element avdemux_nut
found Element avdemux_nuv
found Element avdemux_psxstr
found Element avdemux_pva
found Element avdemux_smk
found Element avdemux_sol
found Element avdemux_tta
found Element avdemux_vmd
found Element avdemux_voc
found Element avdemux_wc3movie
found Element avdemux_wsaud
found Element avdemux_wsvqa
found Element avdemux_xwma
found Element avdemux_yuv4mpegpipe
found Element avmux_3g2
found Element avmux_a64
found Element avmux_adx
found Element avmux_alp
found Element avmux_amr
found Element avmux_amv
found Element avmux_apm
found Element avmux_apng
found Element avmux_argo_asf
found Element avmux_argo_cvg
found Element avmux_ast
found Element avmux_au
found Element avmux_avm2
found Element avmux_avs3
found Element avmux_bit
found Element avmux_caf
found Element avmux_codec2
found Element avmux_dash
found Element avmux_daud
found Element avmux_dv
found Element avmux_dvd
found Element avmux_f4v
found Element avmux_film_cpk
found Element avmux_filmstrip
found Element avmux_fits
found Element avmux_gxf
found Element avmux_hash
found Element avmux_hds
found Element avmux_hls
found Element avmux_ico
found Element avmux_ilbc
found Element avmux_ipod
found Element avmux_ircam
found Element avmux_ismv
found Element avmux_ivf
found Element avmux_kvag
found Element avmux_latm
found Element avmux_md5
found Element avmux_mkvtimestamp_v2
found Element avmux_mmf
found Element avmux_mpeg
found Element avmux_mxf_d10
found Element avmux_mxf_opatom
found Element avmux_nut
found Element avmux_obu
found Element avmux_oga
found Element avmux_ogv
found Element avmux_oma
found Element avmux_opus
found Element avmux_psp
found Element avmux_rm
found Element avmux_rso
found Element avmux_smjpeg
found Element avmux_smoothstreaming
found Element avmux_sox
found Element avmux_spdif
found Element avmux_spx
found Element avmux_streamhash
found Element avmux_svcd
found Element avmux_swf
found Element avmux_tta
found Element avmux_uncodedframecrc
found Element avmux_vc1test
found Element avmux_vcd
found Element avmux_vidc
found Element avmux_vob
found Element avmux_voc
found Element avmux_w64
found Element avmux_webp
found Element avmux_wsaud
found Element avmux_wtv
found Element dvdec
found Element mpg123audiodec
found Element openh264dec
found Element openh264enc
found Element pnmsrc
found Element rdtdepay
found Element rtpasfdepay
found Element rtpdtmfdepay
found Element rtpgstdepay
found Element rtpvp8depay
found Element rtpvp8pay
found Element rtpvp9depay
found Element rtpvp9pay
found Element rtpxqtdepay
found Element sirendec
found Element sirenenc
found Element unalignedaudioparse
found Element unalignedvideoparse
found Element xingmux
found Element ahcsrc
found Element ahssrc
found Element alphacombine
found Element apev2mux
found Element appsink
found Element appsrc
found Element asteriskh263
found Element audiotestsrc
found Element autoaudiosink
found Element autoaudiosrc
found Element autovideosink
found Element autovideosrc
found Element avenc_aac
found Element avmux_3gp
found Element avmux_adts
found Element avmux_aiff
found Element avmux_asf
found Element avmux_asf_stream
found Element avmux_avi
found Element avmux_flv
found Element avmux_matroska
found Element avmux_mov
found Element avmux_mp2
found Element avmux_mp3
found Element avmux_mp4
found Element avmux_mpegts
found Element avmux_mpjpeg
found Element avmux_mxf
found Element avmux_ogg
found Element avmux_wav
found Element avmux_yuv4mpegpipe
found Element bz2dec
found Element bz2enc
found Element checksumsink
found Element codecalphademux
found Element dashsink
found Element decodebin
found Element decodebin3
found Element diracparse
found Element dtlsdec
found Element dtlsenc
found Element dtlssrtpdec
found Element dtlssrtpdemux
found Element dtlssrtpenc
found Element dtmfsrc
found Element dvbsubenc
found Element dvdsubdec
found Element dvdsubparse
found Element dynudpsink
found Element fakeaudiosink
found Element fakesink
found Element fakesrc
found Element fakevideosink
found Element fdsink
found Element fdsrc
found Element fpsdisplaysink
found Element gdkpixbufsink
found Element gdpdepay
found Element gdppay
found Element giostreamsink
found Element giostreamsrc
found Element glimagesinkelement
found Element glsinkbin
found Element gltestsrc
found Element hlssink
found Element hlssink2
found Element id3v2mux
found Element imagesequencesrc
found Element interaudiosink
found Element interaudiosrc
found Element intersubsink
found Element intersubsrc
found Element intervideosink
found Element intervideosrc
found Element ipcpipelinesink
found Element ipcpipelinesrc
found Element jpegparse
found Element kateenc
found Element kateparse
found Element katetag
found Element matroskaparse
found Element multifdsink
found Element multifilesink
found Element multifilesrc
found Element multipartmux
found Element multisocketsink
found Element multiudpsink
found Element nicesink
found Element nicesrc
found Element oggparse
found Element opusparse
found Element playsink
found Element proxysink
found Element proxysrc
found Element rawaudioparse
found Element rawvideoparse
found Element rdtmanager
found Element rfbsrc
found Element roundrobin
found Element rtpasfpay
found Element rtpdec
found Element rtpdtmfmux
found Element rtpdtmfsrc
found Element rtpgstpay
found Element rtpldacpay
found Element rtpmux
found Element rtpptdemux
found Element rtpreddec
found Element rtpredenc
found Element rtpsbcpay
found Element rtpssrcdemux
found Element rtpstreamdepay
found Element rtpstreampay
found Element rtpulpfecdec
found Element rtpulpfecenc
found Element rtspclientsink
found Element rtspsrc
found Element sbcenc
found Element sctpdec
found Element sctpenc
found Element sdpdemux
found Element sdpsrc
found Element socketsrc
found Element splitfilesrc
found Element splitmuxsink
found Element splitmuxsrc
found Element srtclientsink
found Element srtclientsrc
found Element srtenc
found Element srtserversink
found Element srtserversrc
found Element tcpclientsink
found Element tcpclientsrc
found Element tcpserversink
found Element tcpserversrc
found Element theoraparse
found Element tonegeneratesrc
found Element tsparse
found Element udpsink
found Element udpsrc
found Element uridecodebin
found Element uridecodebin3
found Element urisourcebin
found Element vc1parse
found Element videocodectestsink
found Element videotestsrc
found Element vorbisparse
found Element vorbistag
found Element wavpackenc
found Element webvttenc


Could you try version 1.23.90 as well?

We changed something recently that might affect this.

unfortunately I have other problems at the moment that prevent the use of 1.23.x.
But these are probably more NDK or buildsystem specific.
For example, I cannot link libunwind.
But that is a different issue.

Maybe I’ll have to take a closer look at that.

However, I can also build 1.22.10 myself.

The binary definitely contains the various elements in it (libgstadaptivedemux2.a is present and contains all the compiled code for theose elements).

Something else is missing.

Can you check that you get no ERROR/WARNING when running that code ?

I was tempted to write that no warnings or errors indicate the problem.

But then, at the very beginning, I discovered this.

0:00:00.408162269 0xb4000075986bea00 ../ext/adaptivedemux2/gstadaptivedemuxelement.c:41:adaptivedemux2_base_element_init Failed to load libsoup library
0:00:00.411951154 0xb4000075986bea00 ../ext/adaptivedemux2/gstadaptivedemuxelement.c:41:adaptivedemux2_base_element_init Failed to load libsoup library
0:00:00.415783423 0xb4000075986bea00 ../ext/adaptivedemux2/gstadaptivedemuxelement.c:41:adaptivedemux2_base_element_init Failed to load libsoup library

Does adaptivedemux2 use a different libsoup lib then the old adaptivedemux?

It should be able to use the same.

Just to confirm:

  • You have this issue with 1.23.90 ?
  • You can load hlsdemux fine ?

If so, could you file an issue here ? https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/new

So, it took a while but I’m one step further.

I’m now running version 1.23.90 on Android.
There were three problems.

  1. my NDK version was too old. I had 21 and needed min 23
  2. by updating the NDK version I also needed a new openssl version
  3. the GST_PLUGIN_STATIC_REGISTER of some plugins got stuck. I could not find out why. But there were a lot of them. I now only have about half of the possible plugins, but that’s ok, the important ones are there for me.

So now I have hlsdemux2 on Android.

When I want to use it, I get the error message
hls-demuxer error: “Element requires a streams-aware context.”

I quickly took a look at the documentation and realized that I can’t use the plugin. :face_with_peeking_eye:

Now I have to think about whether I should completely rebuild my pipeline.

Unless you’re doing something veeeeeeeeery specific you shouldn’t use hlsdemux2 directly, but rather through urisourcebin.

Or if you really want to do that, you just set the GST_BIN_FLAG_STREAMS_AWARE on the bin in which you put hlsdemux2.

The initial idea was that I have a stream that is not playing properly with the hlsdemux element.
So I thought I would give the hlsdemux2 element a quick try. :sweat_smile: