diff options
author | Austin Yuan <shengquan.yuan@gmail.com> | 2010-10-25 12:06:02 -0700 |
---|---|---|
committer | Austin Yuan <shengquan.yuan@gmail.com> | 2010-10-25 12:06:02 -0700 |
commit | 3a8ea585219073cb094e2bbf169ce2b756f983e6 (patch) | |
tree | e966add7eab3a11729e95b4dab9b95f0b3b7e680 | |
parent | ebfb71cb89990556b2be5a3b240804dc4daa47ff (diff) | |
download | libva-3a8ea585219073cb094e2bbf169ce2b756f983e6.tar.gz |
remove LIBVA_TRACE_FLUSH, if we have LIBVA_TRACE_CODEDBUF/LIBVA_TRACE_SURFACE, automatically flush
Signed-off-by: Austin Yuan <shengquan.yuan@gmail.com>
-rw-r--r-- | va/va_trace.c | 62 |
1 files changed, 31 insertions, 31 deletions
diff --git a/va/va_trace.c b/va/va_trace.c index 5fdbac3..cfd4f1c 100644 --- a/va/va_trace.c +++ b/va/va_trace.c @@ -45,8 +45,7 @@ unsigned int trace_flag = 0; /* LIBVA_TRACE_LOGSIZE */ static unsigned int trace_logsize = 0xffffffff; /* truncate the log when the size is bigger than it */ -/* LIBVA_TRACE_FLUSH */ -static unsigned int trace_endpic_flush = 0; /* force flushing at vaEndPicture */ + /* LIBVA_TRACE_BUFDATA */ static unsigned int trace_buffer_data; /* dump buffer data or not */ @@ -90,7 +89,7 @@ static struct _trace_context { \ if (idx == TRACE_CONTEXT_MAX) \ return; \ - va_TraceMsg(idx, "==========%s\n", __func__); \ + va_TraceMsg(idx, "==========%s==========\n", __func__); \ /* Prototype declarations (functions defined in va.c) */ @@ -162,9 +161,6 @@ void va_TraceInit(VADisplay dpy) if (va_parseConfig("LIBVA_TRACE_BUFDATA", NULL) == 0) trace_buffer_data = 1; /* dump buffer data */ - if (va_parseConfig("LIBVA_TRACE_FLUSH", NULL) == 0) - trace_endpic_flush = 1; /* flush pipeline at vaEndPicture */ - /* per-context setting */ if (va_parseConfig("LIBVA_TRACE_CODEDBUF", &env_value[0]) == 0) { sprintf(env_value+strlen(env_value), ".%d.%d", trace_index, suffix); @@ -263,7 +259,7 @@ void va_TraceCodedBuf(VADisplay dpy) if (va_status != VA_STATUS_SUCCESS) return; - va_TraceMsg(idx, "==========dump codedbuf into file %s\n", trace_context[idx].trace_codedbuf_fn); + va_TraceMsg(idx, "==========dump codedbuf into file %s==========\n", trace_context[idx].trace_codedbuf_fn); while (buf_list != NULL) { int i; @@ -300,7 +296,7 @@ void va_TraceSurface(VADisplay dpy) unsigned int check_sum = 0; DPY2INDEX(dpy); - va_TraceMsg(idx, "==========dump surface data in file %s\n", trace_context[idx].trace_surface_fn); + va_TraceMsg(idx, "==========dump surface data in file %s==========\n", trace_context[idx].trace_surface_fn); if ((file_size(trace_context[idx].trace_fp_surface) >= trace_logsize)) truncate_file(trace_context[idx].trace_fp_surface); @@ -478,7 +474,7 @@ static int va_TraceVABuffers( unsigned int check_sum = 0; DPY2INDEX(dpy); - va_TraceMsg(idx, "==========%s\n", buffer_type_to_string(type)); + va_TraceMsg(idx, "==========%s==========\n", buffer_type_to_string(type)); for (i=0; i<size; i++) { int value = p[i]; @@ -623,7 +619,7 @@ static void va_TraceVAPictureParameterBufferH264( VAPictureParameterBufferH264 *p = (VAPictureParameterBufferH264*)data; - va_TraceMsg(idx, "==========H264PicParameterBuffer\n"); + va_TraceMsg(idx, "==========H264PicParameterBuffer==========\n"); va_TraceMsg(idx, "\tCurrPic.picture_id = %d\n", p->CurrPic.picture_id); va_TraceMsg(idx, "\tCurrPic.frame_idx = %d\n", p->CurrPic.frame_idx); @@ -689,7 +685,7 @@ static void va_TraceVASliceParameterBufferH264( trace_context[idx].trace_slice_no++; trace_context[idx].trace_slice_size = p->slice_data_size; - va_TraceMsg(idx, "==========VASliceParameterBufferH264\n"); + va_TraceMsg(idx, "==========VASliceParameterBufferH264==========\n"); va_TraceMsg(idx, "\tslice_data_size = %d\n", p->slice_data_size); va_TraceMsg(idx, "\tslice_data_offset = %d\n", p->slice_data_offset); va_TraceMsg(idx, "\tslice_data_flag = %d\n", p->slice_data_flag); @@ -773,7 +769,7 @@ static void va_TraceVAIQMatrixBufferH264( int i, j; DPY2INDEX(dpy); - va_TraceMsg(idx, "==========VAIQMatrixBufferH264\n"); + va_TraceMsg(idx, "==========VAIQMatrixBufferH264==========\n"); for (i = 0; i < 6; i++) { for (j = 0; j < 16; j++) { @@ -804,7 +800,7 @@ static void va_TraceVAEncSequenceParameterBufferH264( VAEncSequenceParameterBufferH264 *p = (VAEncSequenceParameterBufferH264 *)data; DPY2INDEX(dpy); - va_TraceMsg(idx, "==========VAEncSequenceParameterBufferH264\n"); + va_TraceMsg(idx, "==========VAEncSequenceParameterBufferH264==========\n"); va_TraceMsg(idx, "\tseq_parameter_set_id = %d\n", p->seq_parameter_set_id); va_TraceMsg(idx, "\tlevel_idc = %d\n", p->level_idc); @@ -837,7 +833,7 @@ static void va_TraceVAEncPictureParameterBufferH264( VAEncPictureParameterBufferH264 *p = (VAEncPictureParameterBufferH264 *)data; DPY2INDEX(dpy); - va_TraceMsg(idx, "==========VAEncSequenceParameterBufferH264\n"); + va_TraceMsg(idx, "==========VAEncSequenceParameterBufferH264==========\n"); va_TraceMsg(idx, "\treference_picture = 0x%08x\n", p->reference_picture); va_TraceMsg(idx, "\treconstructed_picture = 0x%08x\n", p->reconstructed_picture); va_TraceMsg(idx, "\tcoded_buf = 0x%08x\n", p->coded_buf); @@ -863,7 +859,7 @@ static void va_TraceVAEncSliceParameterBuffer( VAEncSliceParameterBuffer* p = (VAEncSliceParameterBuffer*)data; DPY2INDEX(dpy); - va_TraceMsg(idx, "==========VAEncSliceParameterBuffer\n"); + va_TraceMsg(idx, "==========VAEncSliceParameterBuffer============\n"); va_TraceMsg(idx, "\tstart_row_number = %d\n", p->start_row_number); va_TraceMsg(idx, "\tslice_height = %d\n", p->slice_height); @@ -889,7 +885,7 @@ static void va_TraceVAEncMiscParameterBuffer( case VAEncMiscParameterTypeFrameRate: { VAEncMiscParameterFrameRate *p = (VAEncMiscParameterFrameRate *)tmp->data; - va_TraceMsg(idx, "==========VAEncMiscParameterFrameRate\n"); + va_TraceMsg(idx, "==========VAEncMiscParameterFrameRate==========\n"); va_TraceMsg(idx, "\tframerate = %d\n", p->framerate); break; @@ -898,7 +894,7 @@ static void va_TraceVAEncMiscParameterBuffer( { VAEncMiscParameterRateControl *p = (VAEncMiscParameterRateControl *)tmp->data; - va_TraceMsg(idx, "==========VAEncMiscParameterRateControl\n"); + va_TraceMsg(idx, "==========VAEncMiscParameterRateControl==========\n"); va_TraceMsg(idx, "\tbits_per_second = %d\n", p->bits_per_second); va_TraceMsg(idx, "\twindow_size = %d\n", p->window_size); va_TraceMsg(idx, "\tinitial_qp = %d\n", p->initial_qp); @@ -909,7 +905,7 @@ static void va_TraceVAEncMiscParameterBuffer( { VAEncMiscParameterMaxSliceSize *p = (VAEncMiscParameterMaxSliceSize *)tmp->data; - va_TraceMsg(idx, "==========VAEncMiscParameterTypeMaxSliceSize\n"); + va_TraceMsg(idx, "==========VAEncMiscParameterTypeMaxSliceSize============\n"); va_TraceMsg(idx, "\tmax_slice_size = %d\n", p->max_slice_size); break; } @@ -917,7 +913,7 @@ static void va_TraceVAEncMiscParameterBuffer( { VAEncMiscParameterAIR *p = (VAEncMiscParameterAIR *)tmp->data; - va_TraceMsg(idx, "==========VAEncMiscParameterAIR\n"); + va_TraceMsg(idx, "==========VAEncMiscParameterAIR============\n"); va_TraceMsg(idx, "\tair_num_mbs = %d\n", p->air_num_mbs); va_TraceMsg(idx, "\tair_threshold = %d\n", p->air_threshold); va_TraceMsg(idx, "\tair_auto = %d\n", p->air_auto); @@ -945,7 +941,7 @@ static void va_TraceVAPictureParameterBufferVC1( VAPictureParameterBufferVC1* p = (VAPictureParameterBufferVC1*)data; DPY2INDEX(dpy); - va_TraceMsg(idx, "==========VAPictureParameterBufferVC1\n"); + va_TraceMsg(idx, "==========VAPictureParameterBufferVC1============\n"); va_TraceMsg(idx, "\tforward_reference_picture = 0x%08x\n", p->forward_reference_picture); va_TraceMsg(idx, "\tbackward_reference_picture = 0x%08x\n", p->backward_reference_picture); @@ -1051,7 +1047,7 @@ static void va_TraceVASliceParameterBufferVC1( trace_context[idx].trace_slice_no++; trace_context[idx].trace_slice_size = p->slice_data_size; - va_TraceMsg(idx, "==========VASliceParameterBufferVC1\n"); + va_TraceMsg(idx, "==========VASliceParameterBufferVC1==========\n"); va_TraceMsg(idx, "\tslice_data_size = %d\n", p->slice_data_size); va_TraceMsg(idx, "\tslice_data_offset = %d\n", p->slice_data_offset); va_TraceMsg(idx, "\tslice_data_flag = %d\n", p->slice_data_flag); @@ -1361,7 +1357,7 @@ void va_TraceRenderPicture( case VAProfileMPEG2Simple: case VAProfileMPEG2Main: for (j=0; j<num_elements; j++) { - va_TraceMsg(idx, "===========element[%d]\n", j); + va_TraceMsg(idx, "===========element[%d]=========\n", j); va_TraceMPEG2Buf(dpy, context, buffers[i], type, size, num_elements, pbuf + size*j); } break; @@ -1412,17 +1408,21 @@ void va_TraceEndPicture( va_TraceMsg(idx, "\tcontext = 0x%08x\n", context); va_TraceMsg(idx, "\trender_targets = 0x%08x\n", trace_context[idx].trace_rendertarget); - if (trace_endpic_flush == 0) - return; - - /* force the pipleline finish rendering */ - vaSyncSurface(dpy, trace_context[idx].trace_rendertarget); - /* trace coded buffer for encode */ - if ((trace_context[idx].trace_entrypoint == VAEntrypointEncSlice) || - (trace_context[idx].trace_entrypoint == VAEntrypointEncPicture)) + /* want to trace codedbuf, and it is encode */ + if (trace_context[idx].trace_fp_codedbuf && + (trace_context[idx].trace_entrypoint == VAEntrypointEncSlice) || + (trace_context[idx].trace_entrypoint == VAEntrypointEncPicture)) { + /* force the pipleline finish rendering */ + vaSyncSurface(dpy, trace_context[idx].trace_rendertarget); va_TraceCodedBuf(dpy); + } /* trace decoded surface for decoding, or the source sourface for encoding */ - va_TraceSurface(dpy); + if (trace_context[idx].trace_fp_surface) { + /* force the pipleline finish rendering */ + vaSyncSurface(dpy, trace_context[idx].trace_rendertarget); + + va_TraceSurface(dpy); + } } |