From 0c69164f451cc9ca6ce9d6e7568083e2776bc845 Mon Sep 17 00:00:00 2001 From: Vittorio Giovara Date: Tue, 28 Apr 2015 10:38:29 +0100 Subject: [PATCH] h263: Convert function to macro --- libavcodec/h263.c | 13 ------------- libavcodec/h263.h | 3 ++- libavcodec/h263dec.c | 2 +- libavcodec/mpegvideo_enc.c | 2 +- libavcodec/vaapi_mpeg4.c | 2 +- 5 files changed, 5 insertions(+), 17 deletions(-) diff --git a/libavcodec/h263.c b/libavcodec/h263.c index 9019548a9e..6eaab41394 100644 --- a/libavcodec/h263.c +++ b/libavcodec/h263.c @@ -367,16 +367,3 @@ int16_t *ff_h263_pred_motion(MpegEncContext * s, int block, int dir, } return *mot_val; } - - -/** - * Get the GOB height based on picture height. - */ -int ff_h263_get_gob_height(MpegEncContext *s){ - if (s->height <= 400) - return 1; - else if (s->height <= 800) - return 2; - else - return 4; -} diff --git a/libavcodec/h263.h b/libavcodec/h263.h index 1e49100485..dace2aee4d 100644 --- a/libavcodec/h263.h +++ b/libavcodec/h263.h @@ -40,6 +40,8 @@ #define CBPY_VLC_BITS 6 #define TEX_VLC_BITS 9 +#define H263_GOB_HEIGHT(h) ((h) <= 400 ? 1 : (h) <= 800 ? 2 : 4) + extern const AVRational ff_h263_pixel_aspect[16]; extern const uint8_t ff_h263_cbpy_tab[16][2]; @@ -122,7 +124,6 @@ int av_const h263_get_picture_format(int width, int height); void ff_clean_h263_qscales(MpegEncContext *s); int ff_h263_resync(MpegEncContext *s); const uint8_t *ff_h263_find_resync_marker(const uint8_t *p, const uint8_t *end); -int ff_h263_get_gob_height(MpegEncContext *s); void ff_h263_encode_motion(MpegEncContext * s, int val, int f_code); diff --git a/libavcodec/h263dec.c b/libavcodec/h263dec.c index a04db5cd8f..f6f91f3167 100644 --- a/libavcodec/h263dec.c +++ b/libavcodec/h263dec.c @@ -524,7 +524,7 @@ int ff_h263_decode_frame(AVCodecContext *avctx, void *data, int *got_frame, if (s->codec_id == AV_CODEC_ID_H263 || s->codec_id == AV_CODEC_ID_H263P || s->codec_id == AV_CODEC_ID_H263I) - s->gob_index = ff_h263_get_gob_height(s); + s->gob_index = H263_GOB_HEIGHT(s->height); // for skipping the frame s->current_picture.f->pict_type = s->pict_type; diff --git a/libavcodec/mpegvideo_enc.c b/libavcodec/mpegvideo_enc.c index b0d80b1079..428ff722a9 100644 --- a/libavcodec/mpegvideo_enc.c +++ b/libavcodec/mpegvideo_enc.c @@ -2577,7 +2577,7 @@ static int encode_thread(AVCodecContext *c, void *arg){ case AV_CODEC_ID_H263P: case AV_CODEC_ID_FLV1: if (CONFIG_H263_ENCODER) - s->gob_index = ff_h263_get_gob_height(s); + s->gob_index = H263_GOB_HEIGHT(s->height); break; case AV_CODEC_ID_MPEG4: if(CONFIG_MPEG4_ENCODER && s->partitioned_frame) diff --git a/libavcodec/vaapi_mpeg4.c b/libavcodec/vaapi_mpeg4.c index 1cf1ea7e1d..49d5f07e43 100644 --- a/libavcodec/vaapi_mpeg4.c +++ b/libavcodec/vaapi_mpeg4.c @@ -90,7 +90,7 @@ static int vaapi_mpeg4_start_frame(AVCodecContext *avctx, av_unused const uint8_ pic_param->vop_fcode_forward = s->f_code; pic_param->vop_fcode_backward = s->b_code; pic_param->vop_time_increment_resolution = avctx->framerate.num; - pic_param->num_macroblocks_in_gob = s->mb_width * ff_h263_get_gob_height(s); + pic_param->num_macroblocks_in_gob = s->mb_width * H263_GOB_HEIGHT(s->height); pic_param->num_gobs_in_vop = (s->mb_width * s->mb_height) / pic_param->num_macroblocks_in_gob; pic_param->TRB = s->pb_time; pic_param->TRD = s->pp_time;