# GStreamer missing application/sdp plugin

**URL:** https://discourse.gstreamer.org/t/gstreamer-missing-application-sdp-plugin/4492
**Category:** General Discussion
**Created:** [April 17, 2025, 2:58pm UTC](https://discourse.gstreamer.org/t/gstreamer-missing-application-sdp-plugin/4492 "2025-04-17T14:58:32Z")
**Posts on this page:** 6
**Page:** 1

<div class="post-metadata">

### Author: ![lerichi](https://discourse.gstreamer.org/user_avatar/discourse.gstreamer.org/lerichi/32/1309_2.png) [@lerichi](https://discourse.gstreamer.org/u/lerichi)
#### Post date: [April 17, 2025, 2:58pm UTC](https://discourse.gstreamer.org/t/gstreamer-missing-application-sdp-plugin/4492/1 "2025-04-17T14:58:32Z")

</div>

Hello,

I am running a debian-11 (bullseye) system and have `deb-multimedia.org` enabled to have the latest multimedia software installed.

I would like to display an Axis webcam image using multicast but am experiencing trouble doing that.

Both mplayer and vlc are able to connect to the multicast stream using

```auto
$ mplayer http://192.168.11.61/axis-cgi/alwaysmulti.sdp?camera=1
$ vlc http://192.168.11.61/axis-cgi/alwaysmulti.sdp?camera=1

```

I am also able to connect with gstreamer on a 1:1 network connection using

```auto
$ gst-launch-1.0 rtspsrc location=rtsp://192.168.11.61/axis-media/media.amp ! decodebin ! autovideosink

```

But in multicast mode it doesn’t work

```auto
$ gst-launch-1.0 souphttpsrc location=http://192.168.11.61/axis-cgi/alwaysmulti.sdp?camera=1 ! decodebin ! autovideosink
...
ERROR: from element /GstPipeline:pipeline0/GstDecodeBin:decodebin0: Your GStreamer installation is missing a plug-in.
Additional debug info:
../gst/playback/gstdecodebin2.c(4719): gst_decode_bin_expose (): /GstPipeline:pipeline0/GstDecodeBin:decodebin0:
no suitable plugins found:
Missing decoder: application/sdp (application/sdp)
...

```

I complains that `application/sdp` is missing, although I have checked that it exists:

```auto
$ gst-inspect-1.0 | grep sdp
typefindfunctions: application/sdp: sdp
sdpelem: sdpsrc: SDP Source
sdpelem: sdpdemux: SDP session setup

```

Does anyone have an idea what I am missing?

---

<div class="post-metadata">

### Author: ![tpm](https://discourse.gstreamer.org/letter_avatar_proxy/v4/letter/t/c5a1d2/32.png) [@tpm](https://discourse.gstreamer.org/u/tpm)
#### Post date: [April 18, 2025, 9:21am UTC](https://discourse.gstreamer.org/t/gstreamer-missing-application-sdp-plugin/4492/2 "2025-04-18T09:21:48Z")

</div>

Neither the `sdpsrc` nor the `sdpdemux` element has a “rank”, which means they won’t be autoplugged (used) by `decodebin(3)`, `uridecodebin(3)` and friends (`playbin(3)`).

Reason is that people don’t usually use SDP in an autoplug context. They either have a local file or download it and then they know it’s an SDP and use the right element themselves without involving decodebin.

You could try setting the [`GST_PLUGIN_FEATURE_RANK` environment variable](https://gstreamer.freedesktop.org/documentation/gstreamer/running.html?gi-language=c) to force a rank, which may or may not work.

I don’t think you should have to use an SDP here though, RTSP should be able to set up multicast streaming just fine.

Have you tried `rtspsrc protocols=udp-mcast location=rtsp://... ! ...` ?

---

<div class="post-metadata">

### Author: ![lerichi](https://discourse.gstreamer.org/user_avatar/discourse.gstreamer.org/lerichi/32/1309_2.png) [@lerichi](https://discourse.gstreamer.org/u/lerichi)
#### Post date: [April 25, 2025, 1:46pm UTC](https://discourse.gstreamer.org/t/gstreamer-missing-application-sdp-plugin/4492/3 "2025-04-25T13:46:29Z")

</div>

Thank you for the reply.

I am writing a Qt application that uses QVideoWidget from Qt Multimedia framework. The widget gets passed a URL and the rest happens magically in the background. Looking into the source code and output using GST\_DEBUG environment variable, I see that Qt uses `playbin` in the background. Thus it is not possible to set up my own pipeline, unless I reimplement the widget myself to expose gstreamer’s pipeline engine!

The video widget works successfully with a RTSP url, in gstreamer-speak it is the equivalent of

```auto
gst-launch-1.0 playbin uri=rtsp://camera/axis-media/media.amp

```

Looking at the network trace, a UDP MP4 stream gets set up from the camera to the client. On a large network with many cameras and many clients this 1:1 network connection becomes a problem, that is why I want to receive the multicast stream URL.

On AXIS cameras it is possible to permanantly stream to a multicast address. The details of the stream is published in SDP format using the URL

```auto
http://skycam.local/axis-cgi/alwaysmulti.sdp?camera=1

```

So now my question is, is there a way to get this to work?

```auto
gst-launch-1.0 playbin uri=http://skycam.local/axis-cgi/alwaysmulti.sdp?camera=1

```

Maybe the `GST_PLUGIN_FEATURE_RANK` is a way to go, but what would it’s syntax look like? I am very puzzled.

BTW, both vlc and (s)mplayer accept the HTTP-SDP url out of the box.

I have spent countless hours in the internet on how to set up a `gst-launch` pipeline. Documentation on [gstreamer.org](http://gstreamer.org) very quickly points to the low level C interface and does not help explaining the gst-launch pipeline. Other information is very scarce and/or incomplete and/or incorrect and/or outdated.

---

<div class="post-metadata">

### Author: ![Joe](https://discourse.gstreamer.org/letter_avatar_proxy/v4/letter/j/b9e5f3/32.png) [@Joe](https://discourse.gstreamer.org/u/Joe)
#### Post date: [April 28, 2025, 9:55pm UTC](https://discourse.gstreamer.org/t/gstreamer-missing-application-sdp-plugin/4492/4 "2025-04-28T21:55:18Z")

</div>

Try this example first and understand how it works. Qt multimedia module is not a good tool.  
Better to use raw gstreamer to build your app.

> <https://github.com/GStreamer/gst-plugins-good/blob/master/tests/examples/qt/qmlsink/main.cpp>

---

<div class="post-metadata">

### Author: ![lerichi](https://discourse.gstreamer.org/user_avatar/discourse.gstreamer.org/lerichi/32/1309_2.png) [@lerichi](https://discourse.gstreamer.org/u/lerichi)
#### Post date: [April 30, 2025, 7:26am UTC](https://discourse.gstreamer.org/t/gstreamer-missing-application-sdp-plugin/4492/5 "2025-04-30T07:26:14Z")

</div>

Thank you for the tip.

Oh dear, this looks like quite a formidable task for a newbie in QStreamer. I’ll have a look, but am on holiday for the next two weeks.

---

<div class="post-metadata">

### Author: ![Joe](https://discourse.gstreamer.org/letter_avatar_proxy/v4/letter/j/b9e5f3/32.png) [@Joe](https://discourse.gstreamer.org/u/Joe)
#### Post date: [April 30, 2025, 5:01pm UTC](https://discourse.gstreamer.org/t/gstreamer-missing-application-sdp-plugin/4492/6 "2025-04-30T17:01:27Z")

</div>

This is only a sink. The harder ones in gstreamer are still ahead.
