gstreamer/gst
Alex Ashley 0c4cc14533 qtdemux: support seeking of CENC encrypted streams
When playing a stream that has been protected by DASH CENC, playback
will fail if a seek is performed. Qtdemux produces the error "stream
is protected using cenc, but no cenc protection system information
has been found" and playback stops.

The problem is that gst_qtdemux_reset() gets called as part of the
FLUSH during a seek. This function frees the protection_system_ids
array. When gst_qtdemux_configure_protected_caps() is called after the
seek has completed, the protection_system_ids array is empty and
qtdemux is unable to create the correct output caps for the protected
stream.

This commit changes it to only free the protection_system_ids on
hard resets.

https://bugzilla.gnome.org/show_bug.cgi?id=761787
2016-04-20 12:19:51 -03:00
..
alpha good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
apetag good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
audiofx scaletempo: S16 uses S32 temporary buffers, float/double their own type 2016-04-15 20:06:42 +03:00
audioparsers good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
auparse good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
autodetect good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
avi good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
cutter good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
debugutils good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
deinterlace deinterlace: Drain the field history if the caps are changing 2016-04-12 15:01:28 +03:00
dtmf good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
effectv good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
equalizer equalizer: The child-proxy API is GObject based in 1.x 2016-01-05 18:59:25 +02:00
flv flvdemux: don't emit pad-added until caps are ready 2016-03-24 14:33:33 +02:00
flx gst Factor out endian-order RGB formats 2016-03-10 10:00:58 +00:00
goom good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
goom2k1 good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
icydemux good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
id3demux good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
imagefreeze good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
interleave deinterleave: Return the current caps on the srcpads on caps queries 2016-03-24 14:47:40 +02:00
isomp4 qtdemux: support seeking of CENC encrypted streams 2016-04-20 12:19:51 -03:00
law good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
level good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
matroska matroskamux: make timecodescale configurable 2016-04-11 10:17:25 +03:00
monoscope good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
multifile spitmuxsink: Avoid creating small file at EOS 2016-04-16 22:14:37 +10:00
multipart good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
replaygain good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
rtp rtpjpegdepay: Don't send invalid frames downstream after packet loss or a DISCONT 2016-04-04 17:40:11 +01:00
rtpmanager rtpjitterbuffer: Fix debug output when resyncing 2016-04-15 14:35:07 +00:00
rtsp rtspsrc: add srtp rollover counters from mikey crypto sessions 2016-04-15 18:12:06 +02:00
shapewipe good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
smpte good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
spectrum win32: remove outdated build cruft 2016-02-21 09:47:43 +00:00
udp udpsrc: add "retrieve-sender-address" property 2016-04-18 14:33:10 +01:00
videobox good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
videocrop good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
videofilter good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
videomixer videomixer: drop reference to videomixer 2 2016-04-13 10:57:03 -07:00
wavenc good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
wavparse good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
y4m good: use new gst_element_class_add_static_pad_template() 2016-03-24 14:32:20 +02:00
Makefile.am build: build plugins and examples in parallel where possible 2010-03-29 11:00:57 +01:00