From: Nicolas Dufresne Date: Tue, 8 Jul 2014 20:45:45 +0000 (-0400) Subject: x264enc: Request buffers in allocation query X-Git-Tag: 1.19.3~505^2~479 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=8aea88d2616c3be8dd30a883534031d832872c9c;p=platform%2Fupstream%2Fgstreamer.git x264enc: Request buffers in allocation query https://bugzilla.gnome.org/show_bug.cgi?id=732288 --- diff --git a/ext/x264/gstx264enc.c b/ext/x264/gstx264enc.c index aa1e481e15..3b67cdabaf 100644 --- a/ext/x264/gstx264enc.c +++ b/ext/x264/gstx264enc.c @@ -1920,8 +1920,21 @@ gst_x264_enc_finish (GstVideoEncoder * encoder) static gboolean gst_x264_enc_propose_allocation (GstVideoEncoder * encoder, GstQuery * query) { + GstX264Enc *self = GST_X264_ENC (encoder); + GstVideoInfo *info; + guint num_buffers; + gst_query_add_allocation_meta (query, GST_VIDEO_META_API_TYPE, NULL); + if (!self->input_state) + return FALSE; + + info = &self->input_state->info; + num_buffers = x264_encoder_maximum_delayed_frames (self->x264enc) + 1; + + gst_query_add_allocation_pool (query, NULL, info->size, num_buffers, + num_buffers); + return GST_VIDEO_ENCODER_CLASS (parent_class)->propose_allocation (encoder, query); }