[PATCH v2 0/3] gstreamer-imx: add efficient GRAY8/h264 conversion

phdm at macq.eu phdm at macq.eu
Tue Sep 6 12:52:59 UTC 2016


From: Philippe De Muyter <phdm at macqel.be>

Hi Carlos,

I hope this (gstreamer-devel mailing list) is the right place to send
patches for gstreamer-imx.

This patch series adds efficient GRAY8/h264 conversion to gstreamer-imx,
by using a constant memory zone populated with the value '128' for the
Cb and Cr planes that are requested by h268, but not provided by GRAY8.
Because of the API of libimxvpuapi, I had to set cb_offset and cr_offset
to the difference between the physical address of the new zone and
the physical address of the Y plane, which is a hack I admit, but
this works perfectly.

In order to free cleanly this zone, I needed to add a 'close' vfunc
to encoder_base.

There is also a unrelated new check to allow compilation when
GST_VIDEO_FORMAT_NV61 is not defined.

Philippe De Muyter

v2: move allocation of cbcr_buffer from gst_imx_vpu_encoder_h264_set_frame_enc_params to gst_imx_vpu_encoder_h264_set_open_params.

Philippe De Muyter (3):
  v4l2src: Add GST_VIDEO_FORMAT_NV61 check.
  vpu/encoder_base: add a 'close' subclass vfunc
  vpu/encoder_h264: accept GRAY8 on input.

 src/v4l2src/v4l2src.c  |  2 ++
 src/vpu/encoder_base.c |  8 ++++++++
 src/vpu/encoder_base.h |  4 ++++
 src/vpu/encoder_h264.c | 39 ++++++++++++++++++++++++++++++++++++++-
 src/vpu/encoder_h264.h |  2 ++
 5 files changed, 54 insertions(+), 1 deletion(-)

-- 
1.8.4.5



More information about the gstreamer-devel mailing list