encoder: h264: fix MVC pipeline hang while encoding with B-frames.
authorSreerenj Balachandran <sreerenj.balachandran@intel.com>
Tue, 6 May 2014 21:08:33 +0000 (00:08 +0300)
committerGwenole Beauchesne <gwenole.beauchesne@intel.com>
Mon, 2 Jun 2014 16:25:13 +0000 (18:25 +0200)
Since we are encoding each view independently from each other, we
need a higher number of pre-allocated surfaces to be used as the
reconstructed frames. For Stereo High profile encoding, this means
to effectively double the number of frames to be stored in the DPB.

gst-libs/gst/vaapi/gstvaapiencoder_h264.c

index cb88c97..6930ec3 100644 (file)
@@ -2321,7 +2321,7 @@ set_context_info (GstVaapiEncoder * base_encoder)
 
   base_encoder->num_ref_frames =
       ((encoder->num_bframes ? 2 : 1) + DEFAULT_SURFACES_COUNT)
-      * encoder->view_idx;
+      * encoder->num_views;
 
   /* Only YUV 4:2:0 formats are supported for now. This means that we
      have a limit of 3200 bits per macroblock. */