On 06/27/2014 03:03 PM, Xiang, Haihao wrote:
From: "Xiang, Haihao" <[email protected]>
Only POC is needed in the algorithm
Signed-off-by: Xiang, Haihao <[email protected]>
---
src/i965_decoder_utils.c | 23 +++++++++++++++++++----
1 file changed, 19 insertions(+), 4 deletions(-)
diff --git a/src/i965_decoder_utils.c b/src/i965_decoder_utils.c
index 4208bac..c0d6a32 100644
--- a/src/i965_decoder_utils.c
+++ b/src/i965_decoder_utils.c
@@ -497,11 +497,11 @@ compare_avc_ref_store_func(const void *p1, const void *p2)
return fs1->ref_age - fs2->ref_age;
}
-void
-intel_update_avc_frame_store_index(
+static void
+intel_update_codec_frame_store_index(
VADriverContextP ctx,
struct decode_state *decode_state,
- VAPictureParameterBufferH264 *pic_param,
+ int poc,
GenFrameStore frame_store[MAX_GEN_REFERENCE_FRAMES],
GenFrameStoreContext *fs_ctx
)
Would you want to re-use function "intel_update_codec_frame_store_index"
for other codec? There is no POC and DPB conception for othe codec, such
as vc1/mpeg2/mpeg4/vp8.
If this function can only be called by avc, maybe it would be better to
keep the original function name.
@@ -512,7 +512,6 @@ intel_update_avc_frame_store_index(
int i, n, num_free_refs;
/* Detect changes of access unit */
- const int poc = avc_get_picture_poc(&pic_param->CurrPic);
if (fs_ctx->age == 0 || fs_ctx->prev_poc != poc)
fs_ctx->age++;
fs_ctx->prev_poc = poc;
@@ -573,6 +572,22 @@ intel_update_avc_frame_store_index(
}
void
+intel_update_avc_frame_store_index(
+ VADriverContextP ctx,
+ struct decode_state *decode_state,
+ VAPictureParameterBufferH264 *pic_param,
+ GenFrameStore frame_store[MAX_GEN_REFERENCE_FRAMES],
+ GenFrameStoreContext *fs_ctx
+)
+{
+ intel_update_codec_frame_store_index(ctx,
+ decode_state,
+
avc_get_picture_poc(&pic_param->CurrPic),
+ frame_store,
+ fs_ctx);
+}
+
+void
gen75_update_avc_frame_store_index(
VADriverContextP ctx,
struct decode_state *decode_state,
_______________________________________________
Libva mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/libva