Commit fb5d50cd authored by Philippe Normand's avatar Philippe Normand Committed by Sebastian Dröge
Browse files

qtdemux: don't push encrypted buffer without cenc metadata

When the cenc metadata is stored outside of the moof box and the
stream is exposed it is possible that the cenc metadata hasn't been
processed yet while the first buffer is being pushed. When this
happens the buffer can't possibly be decrypted downstream so don't
push it.
parent 459ef195
......@@ -4971,6 +4971,12 @@ gst_qtdemux_decorate_and_push_buffer (GstQTDemux * qtdemux,
gst_pad_push_event (stream->pad, event);
if (qtdemux->cenc_aux_info_offset > 0 && info->crypto_info == NULL) {
GST_DEBUG_OBJECT (qtdemux, "cenc metadata hasn't been parsed yet");
gst_buffer_unref (buf);
goto exit;
index = stream->sample_index - (stream->n_samples - info->crypto_info->len);
if (G_LIKELY (index >= 0 && index < info->crypto_info->len)) {
/* steal structure from array */
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment