h263: Convert function to macro
authorVittorio Giovara <vittorio.giovara@gmail.com>
Tue, 28 Apr 2015 09:38:29 +0000 (10:38 +0100)
committerVittorio Giovara <vittorio.giovara@gmail.com>
Tue, 28 Apr 2015 15:33:09 +0000 (16:33 +0100)
libavcodec/h263.c
libavcodec/h263.h
libavcodec/h263dec.c
libavcodec/mpegvideo_enc.c
libavcodec/vaapi_mpeg4.c

index 9019548..6eaab41 100644 (file)
@@ -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;
-}
index 1e49100..dace2ae 100644 (file)
@@ -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);
 
 
index a04db5c..f6f91f3 100644 (file)
@@ -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;
index b0d80b1..428ff72 100644 (file)
@@ -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)
index 1cf1ea7..49d5f07 100644 (file)
@@ -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;