Alloc larger internal buffers, else maybe garbage exist in decoded frame when encoding 720p video.
Signed-off-by: Zhong Li <[email protected]> --- src/gen8_mfc.c | 6 +++--- src/gen9_mfc.c | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/src/gen8_mfc.c b/src/gen8_mfc.c index 9a227ac..b5f00eb 100644 --- a/src/gen8_mfc.c +++ b/src/gen8_mfc.c @@ -525,7 +525,7 @@ static void gen8_mfc_init(VADriverContextP ctx, dri_bo_unreference(mfc_context->intra_row_store_scratch_buffer.bo); bo = dri_bo_alloc(i965->intel.bufmgr, "Buffer", - width_in_mbs * 64, + width_in_mbs * 64 * 16, 64); assert(bo); mfc_context->intra_row_store_scratch_buffer.bo = bo; @@ -541,7 +541,7 @@ static void gen8_mfc_init(VADriverContextP ctx, dri_bo_unreference(mfc_context->deblocking_filter_row_store_scratch_buffer.bo); bo = dri_bo_alloc(i965->intel.bufmgr, "Buffer", - 4 * width_in_mbs * 64, /* 4 * width_in_mbs * 64 */ + 16 * width_in_mbs * 64, /* 16 * width_in_mbs * 64 */ 64); assert(bo); mfc_context->deblocking_filter_row_store_scratch_buffer.bo = bo; @@ -549,7 +549,7 @@ static void gen8_mfc_init(VADriverContextP ctx, dri_bo_unreference(mfc_context->bsd_mpc_row_store_scratch_buffer.bo); bo = dri_bo_alloc(i965->intel.bufmgr, "Buffer", - 2 * width_in_mbs * 64, /* 2 * width_in_mbs * 64 */ + 16 * width_in_mbs * 64, /* 16 * width_in_mbs * 64 */ 0x1000); assert(bo); mfc_context->bsd_mpc_row_store_scratch_buffer.bo = bo; diff --git a/src/gen9_mfc.c b/src/gen9_mfc.c index e28cb91..d54b394 100644 --- a/src/gen9_mfc.c +++ b/src/gen9_mfc.c @@ -459,7 +459,7 @@ static void gen9_mfc_init(VADriverContextP ctx, dri_bo_unreference(mfc_context->intra_row_store_scratch_buffer.bo); bo = dri_bo_alloc(i965->intel.bufmgr, "Buffer", - width_in_mbs * 64, + width_in_mbs * 64 * 16, 64); assert(bo); mfc_context->intra_row_store_scratch_buffer.bo = bo; @@ -2506,7 +2506,7 @@ static void gen9_mfc_vp8_init(VADriverContextP ctx, dri_bo_unreference(mfc_context->deblocking_filter_row_store_scratch_buffer.bo); bo = dri_bo_alloc(i965->intel.bufmgr, "Buffer", - 4 * width_in_mbs * 64, /* 4 * width_in_mbs * 64 */ + 16 * width_in_mbs * 64, /* 16 * width_in_mbs * 64 */ 64); assert(bo); mfc_context->deblocking_filter_row_store_scratch_buffer.bo = bo; @@ -2514,7 +2514,7 @@ static void gen9_mfc_vp8_init(VADriverContextP ctx, dri_bo_unreference(mfc_context->bsd_mpc_row_store_scratch_buffer.bo); bo = dri_bo_alloc(i965->intel.bufmgr, "Buffer", - 2 * width_in_mbs * 64, /* 2 * width_in_mbs * 64 */ + 16 * width_in_mbs * 64, /* 16 * width_in_mbs * 64 */ 0x1000); assert(bo); mfc_context->bsd_mpc_row_store_scratch_buffer.bo = bo; -- 1.9.1 _______________________________________________ Libva mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/libva
