How can an application get protection information

Jürgen Sachs juergen.sachs at
Thu Aug 31 12:21:55 UTC 2017

Can anybody help to understand how a GStreamer-application gets informed about protected streams?
The use case:
Our application uses playbin2 to read and play "all kind of content". Now we got a DASH stream with protected video and audio. Looking into the code, it seems the DASH demux detects the protection from the manifest and send the GST_EVENT_PROTECTION downstream to qtdemux. The qtdemux queues the event to send it further downstream to its source pads. But if the demuxer does not find a protection handler, it does not create any source pad at all. So the event is lost.

In our use case additionally we have implemented the sink elements for video and audio, so if the sinks would be connected, we could evaluate the event. But we´re not connected because qtdemux does not have any source pads (see attached pipeline)

Any idea how to handle this or a hint, where to find information?
In case of protection we want to display a message to the user and stop the playback.

Kind regards
Juergen Sachs
Labor-TV/Software Development
Metz Consumer Electronics GmbH
-------------- next part --------------
A non-text attachment was scrubbed...
Name: gplayer-protection.png
Type: image/png
Size: 251497 bytes
Desc: not available
URL: <>

More information about the gstreamer-devel mailing list