}
if (avcodec_send_packet (ffmpegdec->context, &packet) < 0) {
+ av_packet_free_side_data (&packet);
goto send_packet_failed;
}
+ av_packet_free_side_data (&packet);
do {
/* decode a frame of audio now */
/* now decode the frame */
gst_avpacket_init (&packet, data, size);
+ if (!packet.size)
+ goto done;
+
if (ffmpegdec->palette) {
guint8 *pal;
GST_DEBUG_OBJECT (ffmpegdec, "copy pal %p %p", &packet, pal);
}
- if (!packet.size)
- goto done;
-
/* save reference to the timing info */
ffmpegdec->context->reordered_opaque = (gint64) frame->system_frame_number;
ffmpegdec->picture->reordered_opaque = (gint64) frame->system_frame_number;
GST_VIDEO_DECODER_STREAM_UNLOCK (ffmpegdec);
if (avcodec_send_packet (ffmpegdec->context, &packet) < 0) {
GST_VIDEO_DECODER_STREAM_LOCK (ffmpegdec);
+ av_packet_free_side_data (&packet);
goto send_packet_failed;
}
+ av_packet_free_side_data (&packet);
GST_VIDEO_DECODER_STREAM_LOCK (ffmpegdec);
do {