h264: put visualization and debug support back

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
Michael Niedermayer 2013-02-19 02:47:47 +01:00
parent a3a97129e7
commit d41efc1f26
2 changed files with 8 additions and 0 deletions

View File

@ -1003,6 +1003,9 @@ static void free_tables(H264Context *h, int free_rbsp)
av_freep(&h->mb2b_xy); av_freep(&h->mb2b_xy);
av_freep(&h->mb2br_xy); av_freep(&h->mb2br_xy);
for (i = 0; i < 3; i++)
av_freep(&h->visualization_buffer[i]);
if (free_rbsp) { if (free_rbsp) {
for (i = 0; i < h->picture_count && !h->avctx->internal->is_copy; i++) for (i = 0; i < h->picture_count && !h->avctx->internal->is_copy; i++)
free_picture(h, &h->DPB[i]); free_picture(h, &h->DPB[i]);
@ -4781,6 +4784,9 @@ not_extra:
assert(pict->data[0] || !*got_frame); assert(pict->data[0] || !*got_frame);
ff_print_debug_info2(h->avctx, pict, h->er.mbskip_table, h->visualization_buffer, &h->low_delay,
h->mb_width, h->mb_height, h->mb_stride, 1);
return get_consumed_bytes(buf_index, buf_size); return get_consumed_bytes(buf_index, buf_size);
} }

View File

@ -644,6 +644,8 @@ typedef struct H264Context {
int parse_last_mb; int parse_last_mb;
uint8_t *edge_emu_buffer; uint8_t *edge_emu_buffer;
int16_t *dc_val_base; int16_t *dc_val_base;
uint8_t *visualization_buffer[3]; ///< temporary buffer vor MV visualization
} H264Context; } H264Context;
extern const uint8_t ff_h264_chroma_qp[7][QP_MAX_NUM + 1]; ///< One chroma qp table for each possible bit depth (8-14). extern const uint8_t ff_h264_chroma_qp[7][QP_MAX_NUM + 1]; ///< One chroma qp table for each possible bit depth (8-14).