vaapiencode: fix negotiation process of output caps.
authorGwenole Beauchesne <gwenole.beauchesne@intel.com>
Thu, 9 Jan 2014 17:10:35 +0000 (18:10 +0100)
committerGwenole Beauchesne <gwenole.beauchesne@intel.com>
Mon, 13 Jan 2014 16:31:55 +0000 (17:31 +0100)
commit449ac54348e8816a927b56a285e3b277272226ac
tree17cc2ff3954365aabbb3ac82bd5934412a3f8f61
parent37fa6a8a3db67ea661ff4d514e233c2e5337f8db
vaapiencode: fix negotiation process of output caps.

The specified caps in gst_video_encoder_set_output_state() function
arguments should not contain any resolution, pixel-aspect-ratio,
framerate, codec-data et al. Those rather should be set through the
returned GstVideoCodecState. This means that output caps creation
could be delayed until before gst_video_encoder_finish_frame() is
called.

This greatly simplifies the GstVideoEncoder::set_format() callback
by the way.
gst/vaapi/gstvaapiencode.c
gst/vaapi/gstvaapiencode.h
gst/vaapi/gstvaapiencode_h264.c
gst/vaapi/gstvaapiencode_h264.h
gst/vaapi/gstvaapiencode_mpeg2.c