[Libva] [PATCH V3 5/9] ENC: add AVC common structure and functions

2017-01-23 Thread Pengfei Qu
v1:add kernel pointer for different platform Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/Makefile.am | 2 + src/i965_avc_encoder_common.c | 319 ++ src/i965_avc_encoder_common.h | 305

[Libva] [PATCH V3 8/9] ENC: add MFX pipeline for AVC encoder

2017-01-23 Thread Pengfei Qu
MFX pipeline: add MFX command for AVC encoder add MFX Picture slice level command init for AVC add MFX pipeline init prepare run for AVC encode add VME/MFX context init for AVC encoder Reviewed-by: Sean V Kelley Signed-off-by: Pengfei Qu --- src/gen9_avc_encoder.c | 1603

[Libva] [PATCH V3 2/9] ENC: add common structure for AVC/HEVC encoder

2017-01-23 Thread Pengfei Qu
v1: add context init function for AVC encoder v2: add file in the Makefile.am Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/Makefile.am | 3 + src/i965_encoder_api.h| 47 + src/i965_encoder_common.c | 124 +++ src/i965_encoder_common.h | 519

[Libva] [PATCH V3 6/9] ENC: add kernel related structure and define for AVC

2017-01-23 Thread Pengfei Qu
Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/Makefile.am|1 + src/gen9_avc_encoder.h | 2339 2 files changed, 2340 insertions(+) create mode 100644 src/gen9_avc_encoder.h diff --git a/src/Makefile.am b/src/Makefile.am

[Libva] [PATCH V3 0/9] Encoder Architecture Changes (Primarily AVC)

2017-01-23 Thread Pengfei Qu
: rebase to lastest master branch and use i965->intel->media_mocs to configure the memory MOCS. remove unused enum value Pengfei Qu (9): ENC: move gpe related function into src/i965_gpe_utils.h/c ENC: add common structure for AVC/HEVC encoder ENC: add const data/table for AVC encoder

[Libva] [PATCH V3 9/9] ENC:support more quality level and switch to new AVC encoder solution on SKL/APL

2017-01-23 Thread Pengfei Qu
v1: add AVC encoder support on APL Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/gen9_avc_encoder.c | 3 ++- src/i965_drv_video.c | 8 ++-- src/i965_drv_video.h | 2 ++ src/i965_encoder.c | 55 ++ 4 files changed, 57

[Libva] [PATCH V3 1/9] ENC: move gpe related function into src/i965_gpe_utils.h/c

2017-01-23 Thread Pengfei Qu
v1: add align version for obj surface conversion to gpe surface remove comments and enum value v2: use intel->media_mocs to configure the memory property Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/gen9_vp9_encoder.c | 154 ++--- src/gen9_vp9_encode

[Libva] [PATCH V3 3/9] ENC: add const data/table for AVC encoder

2017-01-23 Thread Pengfei Qu
v1: add fies in the Makefile.am Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/Makefile.am |2 + src/gen9_avc_const_def.c | 1090 ++ src/gen9_avc_const_def.h | 115 + 3 files changed, 1207 insertions(+) create mode

[Libva] [PATCH v2 5/9] ENC: add AVC common structure and functions

2017-01-21 Thread Pengfei Qu
v1:add kernel pointer for different platform Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/Makefile.am | 2 + src/i965_avc_encoder_common.c | 319 ++ src/i965_avc_encoder_common.h | 305

[Libva] [PATCH v2 8/9] ENC: add MFX pipeline for AVC encoder

2017-01-21 Thread Pengfei Qu
MFX pipeline: add MFX command for AVC encoder add MFX Picture slice level command init for AVC add MFX pipeline init prepare run for AVC encode add VME/MFX context init for AVC encoder Reviewed-by: Sean V Kelley Signed-off-by: Pengfei Qu --- src/gen9_avc_encoder.c | 1603

[Libva] [PATCH v2 6/9] ENC: add kernel related structure and define for AVC

2017-01-21 Thread Pengfei Qu
Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/Makefile.am|1 + src/gen9_avc_encoder.h | 2339 2 files changed, 2340 insertions(+) create mode 100644 src/gen9_avc_encoder.h diff --git a/src/Makefile.am b/src/Makefile.am

[Libva] [PATCH v2 9/9] ENC:support more quality level and switch to new AVC encoder solution on SKL/APL

2017-01-21 Thread Pengfei Qu
v1: add AVC encoder support on APL Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/gen9_avc_encoder.c | 5 +++-- src/i965_drv_video.c | 8 ++-- src/i965_drv_video.h | 2 ++ src/i965_encoder.c | 55 ++ 4 files changed

[Libva] [PATCH v2 1/9] ENC: move gpe related function into src/i965_gpe_utils.h/c

2017-01-21 Thread Pengfei Qu
v1: add align version for obj surface conversion to gpe surface remove comments and enum value Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/gen9_vp9_encoder.c | 154 ++--- src/gen9_vp9_encoder.h | 10 -- src/i965_defines.h | 3 + src

[Libva] [PATCH v2 3/9] ENC: add const data/table for AVC encoder

2017-01-21 Thread Pengfei Qu
v1: add fies in the Makefile.am Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/Makefile.am |2 + src/gen9_avc_const_def.c | 1090 ++ src/gen9_avc_const_def.h | 115 + 3 files changed, 1207 insertions(+) create mode

[Libva] [PATCH v2 2/9] ENC: add common structure for AVC/HEVC encoder

2017-01-21 Thread Pengfei Qu
v1: add context init function for AVC encoder v2: add file in the Makefile.am Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/Makefile.am | 3 + src/i965_encoder_api.h| 47 src/i965_encoder_common.c | 124 +++ src/i965_encoder_common.h | 530

[Libva] [PATCH v2 0/9] Encoder Architecture Changes (Primarily AVC)

2017-01-21 Thread Pengfei Qu
. Pengfei Qu (9): ENC: move gpe related function into src/i965_gpe_utils.h/c ENC: add common structure for AVC/HEVC encoder ENC: add const data/table for AVC encoder ENC: add AVC kernel binary on SKL ENC: add AVC common structure and functions ENC: add kernel related structure and define for

[Libva] [PATCH v1 9/9] ENC:support more quality level and switch to new AVC encoder solution on SKL

2017-01-13 Thread Pengfei Qu
Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/Makefile.am | 10 ++ src/i965_drv_video.c | 8 ++-- src/i965_drv_video.h | 2 ++ src/i965_encoder.c | 52 4 files changed, 62 insertions(+), 10 deletions

[Libva] [PATCH v1 3/9] ENC: add const data/table for AVC encoder

2017-01-13 Thread Pengfei Qu
Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/gen9_avc_const_def.c | 1090 ++ src/gen9_avc_const_def.h | 115 + 2 files changed, 1205 insertions(+) create mode 100755 src/gen9_avc_const_def.c create mode 100755 src

[Libva] [PATCH v1 2/9] ENC: add common structure for AVC/HEVC encoder

2017-01-13 Thread Pengfei Qu
add context init function for AVC encoder Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/i965_encoder_api.h| 47 src/i965_encoder_common.c | 124 +++ src/i965_encoder_common.h | 533 ++ 3 files changed, 704 insertions

[Libva] [PATCH v1 5/9] ENC: add AVC common structure and functions

2017-01-13 Thread Pengfei Qu
v1:add kernel pointer for different platform Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/i965_avc_encoder_common.c | 319 ++ src/i965_avc_encoder_common.h | 305 src/i965_encoder_common.h | 30

[Libva] [PATCH v1 6/9] ENC: add kernel related structure and define for AVC

2017-01-13 Thread Pengfei Qu
Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/gen9_avc_encoder.h | 2339 1 file changed, 2339 insertions(+) create mode 100755 src/gen9_avc_encoder.h diff --git a/src/gen9_avc_encoder.h b/src/gen9_avc_encoder.h new file mode

[Libva] [PATCH v1 1/9] ENC: move gpe related function into src/i965_gpe_utils.h/c

2017-01-13 Thread Pengfei Qu
v1: add align version for obj surface conversion to gpe surface remove comments and enum value Signed-off-by: Pengfei Qu Reviewed-by: Sean V Kelley --- src/gen9_vp9_encoder.c | 154 ++- src/gen9_vp9_encoder.h | 10 -- src/i965_defines.h | 3 + src/i965_gpe_utils.c

[Libva] [PATCH v1 8/9] ENC: add MFX pipeline for AVC encoder

2017-01-13 Thread Pengfei Qu
MFX pipeline: add MFX command for AVC encoder add MFX Picture slice level command init for AVC add MFX pipeline init prepare run for AVC encode add VME/MFX context init for AVC encoder Reviewed-by: Sean V Kelley Signed-off-by: Pengfei Qu --- src/gen9_avc_encoder.c | 1887

[Libva] [PATCH v1 0/9]Encoder Architecture Changes (Primarily AVC)

2017-01-13 Thread Pengfei Qu
Encoder architecture restructuring for H.264 (with some impact to HEVC now) on HSW+ * Improvements to the shaders * Improvements to the B frame efficiency * Improvements to the low bit rate mode * Improved features in two stage VME/PAK pipeline v1: Reduce the patch number and re org for VME and M

[Libva] [PATCH] Fix: check the bo of reconstructed to ensure it is not NULL

2016-09-12 Thread Pengfei Qu
Signed-off-by: Pengfei Qu --- src/gen9_vme.c | 6 ++ 1 file changed, 6 insertions(+) diff --git a/src/gen9_vme.c b/src/gen9_vme.c index 8cbe052..245b0df 100644 --- a/src/gen9_vme.c +++ b/src/gen9_vme.c @@ -1852,6 +1852,7 @@ static VAStatus gen9_intel_hevc_input_check(VADriverContextP ctx

[Libva] [PATCH V4: 0/4] HEVC 10bit encoder enable

2016-09-07 Thread Pengfei Qu
akui's comment Pengfei Qu (4): HEVC10bit ENC: add private surface for p010 conversion to nv12 HEVC10bit ENC:enable hevc 10bit on VME and PAK HEVC10bit ENC:enable hevc 10bit encoding pipeline HEVC10bit ENC: work around gpu hang when p010->nv12 src/gen6_mfc_common.c| 13 src/g

[Libva] [PATCH V4: 2/4] HEVC10bit ENC:enable hevc 10bit on VME and PAK

2016-09-07 Thread Pengfei Qu
1.add p010->nv12 before VME 2.add CBR support Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c | 13 + src/gen9_mfc_hevc.c | 105 +- src/gen9_vme.c| 153 ++ 3 files changed, 205 insertions(+),

[Libva] [PATCH V4: 4/4] HEVC10bit ENC: work around gpu hang when p010->nv12

2016-09-07 Thread Pengfei Qu
Signed-off-by: Pengfei Qu --- src/gen9_vme.c | 1 + src/i965_drv_video.h | 2 ++ 2 files changed, 3 insertions(+) diff --git a/src/gen9_vme.c b/src/gen9_vme.c index 8cbe052..4a7d932 100644 --- a/src/gen9_vme.c +++ b/src/gen9_vme.c @@ -1839,6 +1839,7 @@ static VAStatus

[Libva] [PATCH V4: 3/4] HEVC10bit ENC:enable hevc 10bit encoding pipeline

2016-09-07 Thread Pengfei Qu
Signed-off-by: Pengfei Qu --- src/i965_device_info.c | 1 + src/i965_drv_video.c | 20 +++- src/i965_drv_video.h | 1 + src/i965_encoder.c | 18 +- 4 files changed, 30 insertions(+), 10 deletions(-) diff --git a/src/i965_device_info.c b/src

[Libva] [PATCH V4: 1/4] HEVC10bit ENC: add private surface for p010 conversion to nv12

2016-09-07 Thread Pengfei Qu
Signed-off-by: Pengfei Qu --- src/intel_media.h| 5 + src/intel_media_common.c | 7 +++ 2 files changed, 12 insertions(+) diff --git a/src/intel_media.h b/src/intel_media.h index 87d315f..4a55a93 100644 --- a/src/intel_media.h +++ b/src/intel_media.h @@ -57,6 +57,11 @@ struct

[Libva] [PATCH V3: 0/4] HEVC 10bit encoder enable

2016-09-05 Thread Pengfei Qu
the series of patches enable the HEVC 10bit encoder on KBL+ v1: split the patch v2: move the internal surface member,which is used in p010->nv12, from VME context to gen_hevc_surface. move input surface conversion(p010->nv12) to vme prepare. Pengfei Qu (4): HEVC10bit ENC: add private s

[Libva] [PATCH V3: 1/4] HEVC10bit ENC: add private surface for p010 conversion to nv12

2016-09-05 Thread Pengfei Qu
Signed-off-by: Pengfei Qu --- src/intel_media.h| 5 + src/intel_media_common.c | 10 ++ 2 files changed, 15 insertions(+) diff --git a/src/intel_media.h b/src/intel_media.h index 87d315f..4a55a93 100644 --- a/src/intel_media.h +++ b/src/intel_media.h @@ -57,6 +57,11

[Libva] [PATCH V3: 3/4] HEVC10bit ENC:enable hevc 10bit encoding pipeline

2016-09-05 Thread Pengfei Qu
Signed-off-by: Pengfei Qu --- src/i965_device_info.c | 1 + src/i965_drv_video.c | 20 +++- src/i965_drv_video.h | 1 + src/i965_encoder.c | 18 +- 4 files changed, 30 insertions(+), 10 deletions(-) diff --git a/src/i965_device_info.c b/src

[Libva] [PATCH V3: 4/4] HEVC10bit ENC: work around gpu hang when p010->nv12

2016-09-05 Thread Pengfei Qu
Signed-off-by: Pengfei Qu --- src/gen9_vme.c | 1 + src/i965_drv_video.h | 2 ++ 2 files changed, 3 insertions(+) diff --git a/src/gen9_vme.c b/src/gen9_vme.c index 9e66275..264b27d 100644 --- a/src/gen9_vme.c +++ b/src/gen9_vme.c @@ -1839,6 +1839,7 @@ static VAStatus

[Libva] [PATCH V3: 2/4] HEVC10bit ENC:enable hevc 10bit on VME and PAK

2016-09-05 Thread Pengfei Qu
1.add p010->nv12 before VME 2.add CBR support Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c | 13 + src/gen9_mfc_hevc.c | 105 ++-- src/gen9_vme.c| 146 ++ 3 files changed, 198 insertions(+),

[Libva] [HEVC10bit ENC V2 1/5] HEVC10bit ENC: add driver context member and internal NV12 surface in VME

2016-09-02 Thread Pengfei Qu
Signed-off-by: Pengfei Qu --- src/gen6_vme.c | 17 + src/gen6_vme.h | 8 src/gen7_vme.c | 2 ++ src/gen8_vme.c | 12 +++- 4 files changed, 38 insertions(+), 1 deletion(-) diff --git a/src/gen6_vme.c b/src/gen6_vme.c index 45cc30e..1f4f001 100644 --- a/src

[Libva] [HEVC10bit ENC V2 2/5] HEVC ENC: 10bit support

2016-09-02 Thread Pengfei Qu
this patch enable HEVC 10bit encoding on KBL+. v1: remove P010->NV12 for ref/reconstructed frame and enc frame from this patch remove call i965_SyncSurface to work around the GPU hang when 10bit->8bit(P010->NV12)from this patch Signed-off-by: Pengfei Qu --- src/gen6_mfc_commo

[Libva] [HEVC10bit ENC V2 0/5] HEVC10bit encoder enable

2016-09-02 Thread Pengfei Qu
the series of patches enable the HEVC 10bit encoder on KBL+ v1: split the patch move p010->nv12 to brc prepare for gen9 Pengfei Qu (5): HEVC10bit ENC: add driver context member and internal NV12 surface in VME HEVC ENC: 10bit support HEVC10bit:conver p010 to nv12 for ME surf

[Libva] [HEVC10bit ENC V2 4/5] HEVC10bit ENC: work around the gpu hang when convrt p010 to nv12

2016-09-02 Thread Pengfei Qu
Signed-off-by: Pengfei Qu --- src/gen9_mfc_hevc.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/gen9_mfc_hevc.c b/src/gen9_mfc_hevc.c index bc9225a..019dadf 100644 --- a/src/gen9_mfc_hevc.c +++ b/src/gen9_mfc_hevc.c @@ -2666,6 +2666,7 @@ static VAStatus intel_hcpe_yuv_prepare(struct

[Libva] [HEVC10bit ENC V2 5/5] HEVC10 ENC: enable cbr

2016-09-02 Thread Pengfei Qu
Signed-off-by: Pengfei Qu --- src/gen9_mfc_hevc.c | 8 1 file changed, 8 insertions(+) diff --git a/src/gen9_mfc_hevc.c b/src/gen9_mfc_hevc.c index 019dadf..f95d4f1 100644 --- a/src/gen9_mfc_hevc.c +++ b/src/gen9_mfc_hevc.c @@ -2279,6 +2279,14 @@ static void intel_hcpe_brc_init(struct

[Libva] [HEVC10bit ENC V2 3/5] HEVC10bit:conver p010 to nv12 for ME surface

2016-09-02 Thread Pengfei Qu
Signed-off-by: Pengfei Qu --- src/gen9_mfc_hevc.c | 127 1 file changed, 127 insertions(+) diff --git a/src/gen9_mfc_hevc.c b/src/gen9_mfc_hevc.c index 6021a7e..bc9225a 100644 --- a/src/gen9_mfc_hevc.c +++ b/src/gen9_mfc_hevc.c @@ -2606,11

[Libva] [PATCH 1/2] HEVC ENC: 10bit support

2016-08-31 Thread Pengfei Qu
this patch enable HEVC 10bit encoding on KBL+. v1: add internal NV12 format surface in vme context structure. add VADriverContextP member in vem context structure. P010->NV12 is done in YUV check before encoding. v2: add P010->NV12 for ref/reconstructed frame and enc frame. v3: call i965_SyncSur

[Libva] [PATCH 2/2] HEVC10 ENC: enable cbr

2016-08-31 Thread Pengfei Qu
--- src/gen9_mfc_hevc.c | 8 1 file changed, 8 insertions(+) diff --git a/src/gen9_mfc_hevc.c b/src/gen9_mfc_hevc.c index 6021a7e..ba48968 100644 --- a/src/gen9_mfc_hevc.c +++ b/src/gen9_mfc_hevc.c @@ -2279,6 +2279,14 @@ static void intel_hcpe_brc_init(struct encode_state *encode_state,

[Libva] [PATCH] Encoding: Add ROI example

2016-08-23 Thread Pengfei Qu
or ROI Signed-off-by: Zhao Yakui Signed-off-by: ceciliapeng Signed-off-by: Pengfei Qu --- test/encode/avcenc.c | 99 1 file changed, 93 insertions(+), 6 deletions(-) diff --git a/test/encode/avcenc.c b/test/encode/avcenc.c index 74729fb..c

[Libva] [PATCH 2/3] HEVC ENC:set the initial QP threshold to avoid the low quality in the first GOP

2016-08-22 Thread Pengfei Qu
Signed-off-by: Pengfei Qu --- src/gen9_mfc_hevc.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/gen9_mfc_hevc.c b/src/gen9_mfc_hevc.c index 90b14bf..2995b30 100644 --- a/src/gen9_mfc_hevc.c +++ b/src/gen9_mfc_hevc.c @@ -2337,9 +2337,9 @@ static void

[Libva] [PATCH 1/3] HEVC ENC:fill the correct chroma intra mode

2016-08-22 Thread Pengfei Qu
Signed-off-by: Pengfei Qu --- src/gen9_mfc_hevc.c | 7 +++ 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/gen9_mfc_hevc.c b/src/gen9_mfc_hevc.c index ad5e936..90b14bf 100644 --- a/src/gen9_mfc_hevc.c +++ b/src/gen9_mfc_hevc.c @@ -1246,15 +1246,16

[Libva] [PATCH] Encoding: Add ROI example

2016-08-15 Thread Pengfei Qu
off-by: ceciliapeng Signed-off-by: Pengfei Qu --- test/encode/avcenc.c | 94 1 file changed, 88 insertions(+), 6 deletions(-) diff --git a/test/encode/avcenc.c b/test/encode/avcenc.c index 74729fb..3dcce31 100644 --- a/test/encode/avcenc.c

[Libva] [PATCH V4: 03/11] encoding: Send VME instruction uses one register as the desc parameter

2016-08-12 Thread Pengfei Qu
From: Zhao Yakui The desc parameter of current VME send instruction is hardcode. And it can't be updated based on the input parameter. Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/shaders/vme/inter_bframe_ivb.asm | 17 +++-- src/shader

[Libva] [PATCH V4: 04/11] Encoding: Pass the qp parameter into VME shader and VME shader select the different cost table based on input Qp on Ivy

2016-08-12 Thread Pengfei Qu
Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c| 1 + src/gen7_vme.c | 155 +-- src/shaders/vme/inter_bframe_ivb.asm | 13 ++- src/shaders/vme/inter_bframe_ivb.g7b | 24 -- src/shaders/vme

[Libva] [PATCH V4: 08/11] Encoding: ROI support for CQP/CBR on Haswell/Ivy

2016-08-12 Thread Pengfei Qu
. (qp_value = intel_qpvalue_from_qp(qp)) Qp_value_roi * ROI_area + qp_value_nonroi * area_nonroi = base_qp * total_area. Signed-off-by: ceciliapeng Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c | 202 -- src/i965_drv_video.c | 30

[Libva] [PATCH V4: 10/11] Adjust the maximum number of motion vectors for B frame on HSW+

2016-08-12 Thread Pengfei Qu
From: Jia Meng Signed-off-by: Jia Meng Signed-off-by: Pengfei Qu --- src/gen75_vme.c | 13 +++-- src/gen8_vme.c | 15 --- src/gen9_vme.c | 17 + 3 files changed, 24 insertions(+), 21 deletions(-) diff --git a/src/gen75_vme.c b/src/gen75_vme.c index

[Libva] [PATCH V4: 00/11]Add ROI feature on Gen7/Gen7.5/Gen8/Gen9 and scaling list features.

2016-08-12 Thread Pengfei Qu
motion vectors for B frame on HSW+ scaling matrix of h264 encoder on gen7/gen7.5/gen8/gen9 Pengfei Qu (1): ROI:enable on gen8 and gen9 Zhao Yakui (8): Encoding: mbmv cost table related changes for ROI Encoding: VME shader reads mbmv_cost from cost_table surface instead of constant

[Libva] [PATCH V4: 06/11] Encoding: Add one ROI flag and ROI buffer

2016-08-12 Thread Pengfei Qu
Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c | 69 +++ src/gen6_vme.c| 3 +++ src/gen6_vme.h| 13 ++ src/gen75_vme.c | 3 +++ src/gen7_vme.c| 3 +++ src/gen8_vme.c| 3 +++ src/gen9_vme.c

[Libva] [PATCH V4: 07/11] encoding:use the qp per every macroblock on Ivy and haswell

2016-08-12 Thread Pengfei Qu
From: Zhao Yakui v1: combine the patch together for Ivy and haswell use-CPU-to-construct-the-MFC-pak-command Signed-off-by: Zhao Yakui Signed-off-by: ceciliapeng Signed-off-by: Pengfei Qu --- src/gen6_mfc.c| 15 --- src/gen6_mfc_common.c | 23 ++- src

[Libva] [PATCH V4: 05/11] Encoding: Dynamically select one mechanism to construct encoding command buffer for each frame on Haswell and Gen7/Gen6

2016-08-12 Thread Pengfei Qu
instead of statically compiled mode. Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/gen6_mfc.c | 12 src/gen6_mfc.h | 1 - src/gen75_mfc.c| 16 +--- src/i965_encoder.h | 1 + 4 files changed, 10 insertions(+), 20 deletions

[Libva] [PATCH V4: 09/11] ROI:enable on gen8 and gen9

2016-08-12 Thread Pengfei Qu
v2: use ASSERT_RET to check the ROI flag setted by user. instead of assert. v1: ROI enable on gen8 and gen9 Enable GPU to construct GPU command under ROI scenario fix roi attrib config incorrectly Signed-off-by: Zhao Yakui Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c | 61

[Libva] [PATCH V4: 11/11] scaling matrix of h264 encoder on gen7/gen7.5/gen8/gen9

2016-08-12 Thread Pengfei Qu
From: Jia Meng v1: change the title according to yakui's comments. qm is in raster scan order per va api, and fqm is in column wise raster scan order per hardware requirement. Signed-off-by: Jia Meng Signed-off-by: Pengfei Qu --- src/gen6_mfc.c | 12 -- src/gen6_mfc.h | 2 +

[Libva] [PATCH V4: 01/11] Encoding: mbmv cost table related changes for ROI

2016-08-12 Thread Pengfei Qu
e buffer length should be enlarged. Pass the Qp parameter into VME shader Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c | 160 ++ src/gen6_vme.h| 19 ++ src/gen75_vme.c | 35 +

[Libva] [PATCH V4: 02/11] Encoding: VME shader reads mbmv_cost from cost_table surface instead of constant buffer on Haswell

2016-08-12 Thread Pengfei Qu
From: Zhao Yakui This is to do the prepartion of enhanced features. Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/shaders/vme/inter_bframe_haswell.asm | 24 +++- src/shaders/vme/inter_bframe_haswell.g75b | 23 ++- src

[Libva] [PATCH V3: 10/11] Adjust the maximum number of motion vectors for B frame on HSW+

2016-08-10 Thread Pengfei Qu
From: Jia Meng Signed-off-by: Jia Meng Signed-off-by: Pengfei Qu --- src/gen75_vme.c | 13 +++-- src/gen8_vme.c | 15 --- src/gen9_vme.c | 17 + 3 files changed, 24 insertions(+), 21 deletions(-) diff --git a/src/gen75_vme.c b/src/gen75_vme.c index

[Libva] [PATCH V3: 07/11] encoding:use the qp per every macroblock on Ivy and haswell

2016-08-10 Thread Pengfei Qu
From: Zhao Yakui v1: combine the patch together for Ivy and haswell use-CPU-to-construct-the-MFC-pak-command Signed-off-by: Zhao Yakui Signed-off-by: ceciliapeng Signed-off-by: Pengfei Qu --- src/gen6_mfc.c| 15 --- src/gen6_mfc_common.c | 23 ++- src

[Libva] [PATCH V3: 03/11] encoding: Send VME instruction uses one register as the desc parameter

2016-08-10 Thread Pengfei Qu
From: Zhao Yakui The desc parameter of current VME send instruction is hardcode. And it can't be updated based on the input parameter. Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/shaders/vme/inter_bframe_ivb.asm | 17 +++-- src/shader

[Libva] [PATCH V3: 09/11] ROI:enable on gen8 and gen9

2016-08-10 Thread Pengfei Qu
v1: ROI enable on gen8 and gen9 Enable GPU to construct GPU command under ROI scenario fix roi attrib config incorrectly Signed-off-by: Zhao Yakui Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c | 50 ++ src/gen8_mfc.c| 55

[Libva] [PATCH V3: 04/11] Encoding: Pass the qp parameter into VME shader and VME shader select the different cost table based on input Qp on Ivy

2016-08-10 Thread Pengfei Qu
Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c| 1 + src/gen7_vme.c | 155 +-- src/shaders/vme/inter_bframe_ivb.asm | 13 ++- src/shaders/vme/inter_bframe_ivb.g7b | 24 -- src/shaders/vme

[Libva] [PATCH V3: 11/11] scaling matrix of h264 encoder on gen7/gen7.5/gen8/gen9

2016-08-10 Thread Pengfei Qu
From: Jia Meng v1: change the title according to yakui's comments. qm is in raster scan order per va api, and fqm is in column wise raster scan order per hardware requirement. Signed-off-by: Jia Meng Signed-off-by: Pengfei Qu --- src/gen6_mfc.c | 12 -- src/gen6_mfc.h | 2 +

[Libva] [PATCH V3: 08/11] Encoding: ROI support for CQP/CBR on Haswell/Ivy

2016-08-10 Thread Pengfei Qu
)) Qp_value_roi * ROI_area + qp_value_nonroi * area_nonroi = base_qp * total_area. Signed-off-by: ceciliapeng Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c | 202 -- src/i965_drv_video.c | 22 +- src/i965_drv_video.h | 2 + src

[Libva] [PATCH V3: 01/11] Encoding: mbmv cost table related changes for ROI

2016-08-10 Thread Pengfei Qu
e buffer length should be enlarged. Pass the Qp parameter into VME shader Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c | 160 ++ src/gen6_vme.h| 19 ++ src/gen75_vme.c | 35 +

[Libva] [PATCH V3: 06/11] Encoding: Add one ROI flag and ROI buffer

2016-08-10 Thread Pengfei Qu
From: Zhao Yakui v2: remove unused variable to avoid warning when compiling. v1: Add one flag to indicate whether ROI is supported in one encode context Allocate one ROI buffer to hold qp per mb dynamically Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src

[Libva] [PATCH V3: 02/11] Encoding: VME shader reads mbmv_cost from cost_table surface instead of constant buffer on Haswell

2016-08-10 Thread Pengfei Qu
From: Zhao Yakui This is to do the prepartion of enhanced features. Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/shaders/vme/inter_bframe_haswell.asm | 24 +++- src/shaders/vme/inter_bframe_haswell.g75b | 23 ++- src

[Libva] [PATCH V3: 05/11] Encoding: Dynamically select one mechanism to construct encoding command buffer for each frame on Haswell and Gen7/Gen6

2016-08-10 Thread Pengfei Qu
instead of statically compiled mode. Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/gen6_mfc.c | 12 src/gen6_mfc.h | 1 - src/gen75_mfc.c| 16 +--- src/i965_encoder.h | 1 + 4 files changed, 10 insertions(+), 20 deletions

[Libva] [PATCH V3: 00/11]Add ROI feature on Gen7/Gen7.5/Gen8/Gen9 and scaling list features.

2016-08-10 Thread Pengfei Qu
motion vectors for B frame on HSW+ scaling matrix of h264 encoder on gen7/gen7.5/gen8/gen9 Pengfei Qu (1): ROI:enable on gen8 and gen9 Zhao Yakui (8): Encoding: mbmv cost table related changes for ROI Encoding: VME shader reads mbmv_cost from cost_table surface instead of constant

[Libva] [PATCH 06/12] Encoding: Add one ROI flag and ROI buffer

2016-07-18 Thread Pengfei Qu
From: Zhao Yakui v1: Add one flag to indicate whether ROI is supported in one encode context Allocate one ROI buffer to hold qp per mb dynamically Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c | 74

[Libva] [PATCH 10/12] Adjust the maximum number of motion vectors for B frame on HSW+

2016-07-18 Thread Pengfei Qu
From: Jia Meng Signed-off-by: Jia Meng Signed-off-by: Pengfei Qu --- src/gen75_vme.c | 13 +++-- src/gen8_vme.c | 15 --- src/gen9_vme.c | 17 + 3 files changed, 24 insertions(+), 21 deletions(-) diff --git a/src/gen75_vme.c b/src/gen75_vme.c index

[Libva] [PATCH 09/12] ROI:enable on gen8 and gen9

2016-07-18 Thread Pengfei Qu
v1: ROI enable on gen8 and gen9 Enable GPU to construct GPU command under ROI scenario fix roi attrib config incorrectly Signed-off-by: Zhao Yakui Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c | 62 ++- src/gen8_mfc.c| 55

[Libva] [PATCH 08/12] Encoding: ROI support for CQP/CBR on Haswell/Ivy

2016-07-18 Thread Pengfei Qu
+ qp_value_nonroi * area_nonroi = base_qp * total_area. Signed-off-by: ceciliapeng Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c | 205 -- src/i965_drv_video.c | 22 +- src/i965_drv_video.h | 2 + src/i965_encoder.c| 1 - 4 files

[Libva] [PATCH 01/12] Encoding: mbmv cost table related changes for ROI

2016-07-18 Thread Pengfei Qu
VME shader Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c | 161 +++--- src/gen6_vme.h| 21 ++- src/gen75_vme.c | 39 +--- src/gen7_vme.c| 26 +--- src/

[Libva] [PATCH 03/12] encoding: Send VME instruction uses one register as the desc parameter instead of hardcode

2016-07-18 Thread Pengfei Qu
From: Zhao Yakui The desc parameter of current VME send instruction is hardcode. And it can't be updated based on the input parameter. Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/shaders/vme/inter_bframe_ivb.asm | 17 +++-- src/shader

[Libva] [PATCH 05/12] Encoding: Dynamically select one mechanism to construct encoding command buffer for each frame on Haswell and Gen7/Gen6

2016-07-18 Thread Pengfei Qu
. Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/gen6_mfc.c | 12 src/gen6_mfc.h | 1 - src/gen75_mfc.c| 15 +-- src/i965_encoder.h | 1 + 4 files changed, 10 insertions(+), 19 deletions(-) diff --git a/src/gen6_mfc.c b/src

[Libva] [PATCH 12/12] QP difference configuration for adjacent IP and PB frames

2016-07-18 Thread Pengfei Qu
From: Jia Meng v1: use max_qp_delta_ip/pb from va Signed-off-by: Jia Meng Signed-off-by: Pengfei Qu --- src/gen6_mfc.h| 4 src/gen6_mfc_common.c | 41 + 2 files changed, 33 insertions(+), 12 deletions(-) diff --git a/src/gen6_mfc.h b/src

[Libva] [PATCH 11/12] scaling matrix of h264 encoder on gen7/gen7.5/gen8/gen9

2016-07-18 Thread Pengfei Qu
From: Jia Meng v1: change the title according to yakui's comments. qm is in raster scan order per va api, and fqm is in column wise raster scan order per hardware requirement. Signed-off-by: Jia Meng Signed-off-by: Pengfei Qu --- src/gen6_mfc.c | 12 -- src/gen6_mfc.h | 2 +

[Libva] [PATCH 04/12] Encoding: Pass the qp parameter into VME shader and VME shader select the different cost table based on input Qp on Ivy

2016-07-18 Thread Pengfei Qu
-off-by: Pengfei Qu --- src/gen7_vme.c | 156 +-- src/shaders/vme/inter_bframe_ivb.asm | 13 ++- src/shaders/vme/inter_bframe_ivb.g7b | 24 -- src/shaders/vme/inter_frame_ivb.asm | 12 ++- src/shaders/vme/inter_frame_ivb.g7b | 12

[Libva] [PATCH 07/12] encoding:use the qp per every macroblock on Ivy and haswell

2016-07-18 Thread Pengfei Qu
From: Zhao Yakui v1: combine the patch together for Ivy and haswell use-CPU-to-construct-the-MFC-pak-command Signed-off-by: Zhao Yakui Signed-off-by: ceciliapeng Signed-off-by: Pengfei Qu --- src/gen6_mfc.c| 15 --- src/gen6_mfc_common.c | 20 +--- src

[Libva] [PATCH 02/12] Encoding: VME shader reads mbmv_cost from cost_table surface instead of constant buffer on Haswell

2016-07-18 Thread Pengfei Qu
From: Zhao Yakui This is to do the prepartion of enhanced features. Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/shaders/vme/inter_bframe_haswell.asm | 24 +++- src/shaders/vme/inter_bframe_haswell.g75b | 23 ++- src

[Libva] [PATCH 00/12] Add ROI feature on Gen7/Gen7.5/Gen8/Gen9 and scaling list features.

2016-07-18 Thread Pengfei Qu
+ scaling matrix of h264 encoder on gen7/gen7.5/gen8/gen9 QP difference configuration for adjacent IP and PB frames Pengfei Qu (1): ROI:enable on gen8 and gen9 Zhao Yakui (8): Encoding: mbmv cost table related changes for ROI Encoding: VME shader reads mbmv_cost from cost_table surface instead

[Libva] [PATCH 11/13] Adjust the maximum number of motion vectors for B frame on HSW+

2016-07-07 Thread Pengfei Qu
From: Jia Meng Signed-off-by: Jia Meng Signed-off-by: Pengfei Qu --- src/gen75_vme.c | 13 +++-- src/gen8_vme.c | 15 --- src/gen9_vme.c | 17 + 3 files changed, 24 insertions(+), 21 deletions(-) diff --git a/src/gen75_vme.c b/src/gen75_vme.c index

[Libva] [PATCH 13/13] QP difference configuration for adjacent IP and PB frames

2016-07-07 Thread Pengfei Qu
From: Jia Meng v1: use max_qp_delta_ip/pb from va Signed-off-by: Jia Meng Signed-off-by: Pengfei Qu --- src/gen6_mfc.h| 4 src/gen6_mfc_common.c | 41 + 2 files changed, 33 insertions(+), 12 deletions(-) diff --git a/src/gen6_mfc.h b/src

[Libva] [PATCH 12/13] scaling matrix of h264 encoder on gen7/gen7.5/gen8/gen9

2016-07-07 Thread Pengfei Qu
From: Jia Meng v1: change the title according to yakui's comments. qm is in raster scan order per va api, and fqm is in column wise raster scan order per hardware requirement. Signed-off-by: Jia Meng Signed-off-by: Pengfei Qu --- src/gen6_mfc.c | 12 -- src/gen6_mfc.h | 2 +

[Libva] [PATCH 08/13] Encoding: ROI support for CQP/CBR on Haswell/Ivy

2016-07-07 Thread Pengfei Qu
+ qp_value_nonroi * area_nonroi = base_qp * total_area. Signed-off-by: ceciliapeng Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c | 205 -- src/i965_drv_video.c | 22 +- src/i965_drv_video.h | 2 + src/i965_encoder.c| 1 - 4 files

[Libva] [PATCH 06/13] Encoding: Add one ROI flag and ROI buffer

2016-07-07 Thread Pengfei Qu
From: Zhao Yakui v1: Add one flag to indicate whether ROI is supported in one encode context Allocate one ROI buffer to hold qp per mb dynamically Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c | 74

[Libva] [PATCH 09/13] ROI:enable on gen8 and gen9

2016-07-07 Thread Pengfei Qu
v1: ROI enable on gen8 and gen9 Enable GPU to construct GPU command under ROI scenario fix roi attrib config incorrectly Signed-off-by: Zhao Yakui Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c| 20 ++-- src/gen8_mfc.c | 55 +++--- src

[Libva] [PATCH 04/13] Encoding: Pass the qp parameter into VME shader and VME shader select the different cost table based on input Qp on Ivy

2016-07-07 Thread Pengfei Qu
-off-by: Pengfei Qu --- src/gen7_vme.c | 156 +-- src/shaders/vme/inter_bframe_ivb.asm | 13 ++- src/shaders/vme/inter_bframe_ivb.g7b | 24 -- src/shaders/vme/inter_frame_ivb.asm | 12 ++- src/shaders/vme/inter_frame_ivb.g7b | 12

[Libva] [PATCH 05/13] Encoding: Dynamically select one mechanism to construct encoding command buffer for each frame on Haswell and Gen7/Gen6

2016-07-07 Thread Pengfei Qu
. Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/gen6_mfc.c | 12 src/gen6_mfc.h | 1 - src/gen75_mfc.c| 15 +-- src/i965_encoder.h | 1 + 4 files changed, 10 insertions(+), 19 deletions(-) diff --git a/src/gen6_mfc.c b/src

[Libva] [PATCH 07/13] encoding:use the qp per every macroblock on Ivy and haswell

2016-07-07 Thread Pengfei Qu
From: Zhao Yakui v1: combine the patch together for Ivy and haswell use-CPU-to-construct-the-MFC-pak-command Signed-off-by: Zhao Yakui Signed-off-by: ceciliapeng Signed-off-by: Pengfei Qu --- src/gen6_mfc.c| 15 --- src/gen6_mfc_common.c | 20 +--- src

[Libva] [PATCH 02/13] Encoding: VME shader reads mbmv_cost from cost_table surface instead of constant buffer on Haswell

2016-07-07 Thread Pengfei Qu
From: Zhao Yakui This is to do the prepartion of enhanced features. Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/shaders/vme/inter_bframe_haswell.asm | 24 +++- src/shaders/vme/inter_bframe_haswell.g75b | 23 ++- src

[Libva] [PATCH 03/13] encoding: Send VME instruction uses one register as the desc parameter instead of hardcode

2016-07-07 Thread Pengfei Qu
From: Zhao Yakui The desc parameter of current VME send instruction is hardcode. And it can't be updated based on the input parameter. Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/shaders/vme/inter_bframe_ivb.asm | 17 +++-- src/shader

[Libva] [PATCH 01/13] Encoding: mbmv cost table related changes for ROI

2016-07-07 Thread Pengfei Qu
VME shader Signed-off-by: Zhao Yakui Signed-off-by: pjl Signed-off-by: Pengfei Qu --- src/gen6_mfc_common.c | 161 +++--- src/gen6_vme.h| 21 ++- src/gen75_vme.c | 39 +--- src/gen7_vme.c| 26 +--- src/

[Libva] [PATCH 00/13] Add ROI feature on Gen7/Gen7.5/Gen8/Gen9 and scaling list features.

2016-07-07 Thread Pengfei Qu
this add ROI feature on Gen7/Gen7.5/Gen8/Gen9 and scaling list features. Jia Meng (3): Adjust the maximum number of motion vectors for B frame on HSW+ scaling matrix of h264 encoder on gen8/gen9 QP difference configuration for adjacent IP and PB frames Pengfei Qu (2): ROI:enable on gen8

[Libva] [PATCH 3/3] add ip/pb qp diff configuration

2016-07-05 Thread Pengfei Qu
From: Jia Meng v1: add the interface for max QP delta between frames, such as IP frame and PB frame. is is used in CBR mode. v2: change the member name to max_qp_delta_ip/pb Signed-off-by: Jia Meng Signed-off-by: Pengfei Qu --- va/va.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a

[Libva] [PATCH 2/3] Encoding: Add ROI example

2016-07-05 Thread Pengfei Qu
off-by: Pengfei Qu --- test/encode/avcenc.c | 92 +--- 1 file changed, 87 insertions(+), 5 deletions(-) diff --git a/test/encode/avcenc.c b/test/encode/avcenc.c index 74729fb..549625f 100644 --- a/test/encode/avcenc.c +++ b/test/encode/avcenc.c @@ -9

[Libva] [PATCH 1/3] Add one flag to use the qp_delta instead of qp priority for ROI under non-CQP mode

2016-07-05 Thread Pengfei Qu
it in VAConfigAttribValEncROI to indicate whether the qp_delta is supported when VAConfigAttribRateControl != VA_RC_CQP. Signed-off-by: Zhao Yakui Signed-off-by: ceciliapeng Signed-off-by: Pengfei Qu --- va/va.h | 31 ++- 1 file changed, 26 insertions(+), 5 deletions

  1   2   >