[Libva] "va/va_trace.c" patch for review

Osin, Alexander I alexander.i.osin at intel.com
Thu Jun 9 04:05:55 PDT 2011


	Austin,
	Good question.

	entropy_coding_mode_flag, weighted_pred_flag, transform_8x8_mode_flag (etc) are bit fields of "p->pic_fields" structure.
	Indeed "pic_fields" value is enough for "player A" & "player B" comparison.
	But we can print detailed information about sub-fields too for convenience reasons. Right?

	Could you compare, please?

1st case (Now):
Player A								Player B
	pic_fields = 0x431						pic_fields = 0x435
	entropy_coding_mode_flag = 1					entropy_coding_mode_flag = 1
	weighted_pred_flag = 0						weighted_pred_flag = 0
	weighted_bipred_idc = 0						weighted_bipred_idc = 0
	transform_8x8_mode_flag = 1					transform_8x8_mode_flag = 1
	field_pic_flag = 1						field_pic_flag = 1
	constrained_intra_pred_flag = 0				constrained_intra_pred_flag = 1
	pic_order_present_flag = 0					pic_order_present_flag = 0
	deblocking_filter_control_present_flag = 0		deblocking_filter_control_present_flag = 0
	redundant_pic_cnt_present_flag = 0				redundant_pic_cnt_present_flag = 0
	reference_pic_flag = 1						reference_pic_flag = 1

2nd case (Suggestion):
Player A								Player B
	pic_fields = 0x431						pic_fields = 0x435
		entropy_coding_mode_flag = 1					entropy_coding_mode_flag = 1
		transform_8x8_mode_flag = 1					transform_8x8_mode_flag = 1
		field_pic_flag = 1						field_pic_flag = 1
		reference_pic_flag = 1						constrained_intra_pred_flag = 1
											reference_pic_flag = 1

IMHO, 2nd case is more convenient for comparison.
It's hard to check difference in 1st case. It's very easy to check in 2nd case either w/o special comparison tools. Also it's more convenient for development. I see all information without "trash zero possibilities".
(Indeed player comparison is part of my development. This suggestion (+ patch) is consequence of my development.)

	Austin, what do you think?

Thank you,
Alexander

-----Original Message-----
[skip]

-    va_TraceMsg(idx, "\tfield_pic_flag = %d\n",
p->pic_fields.bits.field_pic_flag);
-    va_TraceMsg(idx, "\tconstrained_intra_pred_flag = %d\n",
p->pic_fields.bits.constrained_intra_pred_flag);
+    va_TraceMsg(idx, "\tpic_fields = 0x%03x\n", p->pic_fields.value);
+    va_TraceFlagIfNotZero(idx, "\t\tentropy_coding_mode_flag",
p->pic_fields.bits.entropy_coding_mode_flag);
+    va_TraceFlagIfNotZero(idx, "\t\tweighted_pred_flag",
p->pic_fields.bits.weighted_pred_flag);
+    va_TraceFlagIfNotZero(idx, "\t\tweighted_bipred_idc",
p->pic_fields.bits.weighted_bipred_idc);
+    va_TraceFlagIfNotZero(idx, "\t\ttransform_8x8_mode_flag",
p->pic_fields.bits.transform_8x8_mode_flag);

These fields will not be printed if the value is zero?
We need them to be printed if we want to compare the trace  of player
A and player B.

Thanks
-Austin

--------------------------------------------------------------------
Closed Joint Stock Company Intel A/O
Registered legal address: Krylatsky Hills Business Park, 
17 Krylatskaya Str., Bldg 4, Moscow 121614, 
Russian Federation

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.



More information about the Libva mailing list