Hi Sirisha, I will merge your patch to staging branch for testing. Could you use the functions in test/loadsurface.h to upload YUV data from memory into a VA surface in your next patch ?
Thanks Haihao > Thanks Matt. I'll add those changes to the next patch set I'll send soon for > the enhancement of JPEG Encode feature. > > Since there are no more comments from the other members so far, is it safe to > assume these patches will be merged to the staging soon? > > -Sirisha > > -----Original Message----- > From: Matt Turner [mailto:[email protected]] > Sent: Tuesday, November 11, 2014 4:11 PM > To: Muppavarapu, Sirisha > Cc: [email protected] > Subject: Re: [Libva] [PATCH 3/3] JPEG Encode: Added JPEG Encode feature > support for gen8 > > On Mon, Nov 10, 2014 at 11:03 PM, Sirisha Muppavarapu > <[email protected]> wrote: > > --- > > src/gen6_mfc.h | 3 + > > src/gen8_mfc.c | 873 > > ++++++++++++++++++++++++++++++++++++++++++++++++++++- > > src/i965_encoder.c | 52 +++- > > 3 files changed, 912 insertions(+), 16 deletions(-) > > > > diff --git a/src/gen6_mfc.h b/src/gen6_mfc.h index 67c62a4..31d828f > > 100644 > > --- a/src/gen6_mfc.h > > +++ b/src/gen6_mfc.h > > @@ -190,6 +190,9 @@ struct gen6_mfc_context > > int i_dpb_output_delay_length; > > }vui_hrd; > > > > + //"buffered_QMatrix" will be used to buffer the QMatrix if the app > > sends one. > > + // Or else, we will load a default QMatrix from the driver for JPEG > > encode. > > + VAQMatrixBufferJPEG buffered_qmatrix; > > struct i965_gpe_context gpe_context; > > struct i965_buffer_surface mfc_batchbuffer_surface; > > struct intel_batchbuffer *aux_batchbuffer; diff --git > > a/src/gen8_mfc.c b/src/gen8_mfc.c index fd7ece1..ca37b06 100644 > > --- a/src/gen8_mfc.c > > +++ b/src/gen8_mfc.c > > @@ -42,6 +42,7 @@ > > #include "gen6_mfc.h" > > #include "gen6_vme.h" > > #include "intel_media.h" > > +#include <va/va_enc_jpeg.h> > > > > #define SURFACE_STATE_PADDED_SIZE > > SURFACE_STATE_PADDED_SIZE_GEN8 > > #define SURFACE_STATE_OFFSET(index) (SURFACE_STATE_PADDED_SIZE > > * index) > > @@ -52,6 +53,53 @@ > > #define B0_STEP_REV 2 > > #define IS_STEPPING_BPLUS(i965) ((i965->intel.revision) >= > > B0_STEP_REV) > > > > +//Zigzag scan order of the the Luma and Chroma components > > +//Note: Jpeg Spec ISO/IEC 10918-1, Figure A.6 shows the zigzag order > > differently. > > +//The Spec is trying to show the zigzag pattern with number > > +positions. The below //table will use the pattern shown by A.6 and > > +map the position of the elements in the array static const uint32_t > > zigzag_direct[64] = { > > + 0, 1, 8, 16, 9, 2, 3, 10, > > + 17, 24, 32, 25, 18, 11, 4, 5, > > + 12, 19, 26, 33, 40, 48, 41, 34, > > + 27, 20, 13, 6, 7, 14, 21, 28, > > + 35, 42, 49, 56, 57, 50, 43, 36, > > + 29, 22, 15, 23, 30, 37, 44, 51, > > + 58, 59, 52, 45, 38, 31, 39, 46, > > + 53, 60, 61, 54, 47, 55, 62, 63 > > +}; > > + > > +//Default Luminance quantization table > > +//Source: Jpeg Spec ISO/IEC 10918-1, Annex K, Table K.1 uint8_t > > +jpeg_luma_quant[64] = { > > Presumably you want this table and the following one to be static const? > > > + 16, 11, 10, 16, 24, 40, 51, 61, > > + 12, 12, 14, 19, 26, 58, 60, 55, > > + 14, 13, 16, 24, 40, 57, 69, 56, > > + 14, 17, 22, 29, 51, 87, 80, 62, > > + 18, 22, 37, 56, 68, 109, 103, 77, > > + 24, 35, 55, 64, 81, 104, 113, 92, > > + 49, 64, 78, 87, 103, 121, 120, 101, > > + 72, 92, 95, 98, 112, 100, 103, 99 }; > > + > > +//Default Chroma quantization table > > +//Source: Jpeg Spec ISO/IEC 10918-1, Annex K, Table K.2 uint8_t > > +jpeg_chroma_quant[64] = { > > + 17, 18, 24, 47, 99, 99, 99, 99, > > + 18, 21, 26, 66, 99, 99, 99, 99, > > + 24, 26, 56, 99, 99, 99, 99, 99, > > + 47, 66, 99, 99, 99, 99, 99, 99, > > + 99, 99, 99, 99, 99, 99, 99, 99, > > + 99, 99, 99, 99, 99, 99, 99, 99, > > + 99, 99, 99, 99, 99, 99, 99, 99, > > + 99, 99, 99, 99, 99, 99, 99, 99 > > +}; > _______________________________________________ > Libva mailing list > [email protected] > http://lists.freedesktop.org/mailman/listinfo/libva _______________________________________________ Libva mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libva
