]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/mpeg4videoenc.c
h264: Remove MotionEstContext and move the relevant fields to H264Context
[ffmpeg] / libavcodec / mpeg4videoenc.c
index 2b7d89fe99a6de536f620ec3dd4f0f01f9327e74..0063f5894930e159c85a77f654dbe310e5cb4a0d 100644 (file)
@@ -42,9 +42,9 @@ static uint8_t  uni_mpeg4_intra_rl_len[64 * 64 * 2 * 2];
 static uint32_t uni_mpeg4_inter_rl_bits[64 * 64 * 2 * 2];
 static uint8_t  uni_mpeg4_inter_rl_len[64 * 64 * 2 * 2];
 
-//#define UNI_MPEG4_ENC_INDEX(last, run, level) (last * 128 + run * 256 + level)
-//#define UNI_MPEG4_ENC_INDEX(last, run, level) (last * 128 * 64 + run + level * 64)
-#define UNI_MPEG4_ENC_INDEX(last, run, level) (last * 128 * 64 + run * 128 + (level))
+//#define UNI_MPEG4_ENC_INDEX(last, run, level) ((last) * 128 + (run) * 256 + (level))
+//#define UNI_MPEG4_ENC_INDEX(last, run, level) ((last) * 128 * 64 + (run) + (level) * 64)
+#define UNI_MPEG4_ENC_INDEX(last, run, level) ((last) * 128 * 64 + (run) * 128 + (level))
 
 /* mpeg4
  * inter
@@ -1039,9 +1039,9 @@ static void mpeg4_encode_vol_header(MpegEncContext *s,
     put_bits(&s->pb, 1, s->progressive_sequence ? 0 : 1);
     put_bits(&s->pb, 1, 1);             /* obmc disable */
     if (vo_ver_id == 1)
-        put_bits(&s->pb, 1, s->vol_sprite_usage);       /* sprite enable */
+        put_bits(&s->pb, 1, 0);       /* sprite enable */
     else
-        put_bits(&s->pb, 2, s->vol_sprite_usage);       /* sprite enable */
+        put_bits(&s->pb, 2, 0);       /* sprite enable */
 
     put_bits(&s->pb, 1, 0);             /* not 8 bit == false */
     put_bits(&s->pb, 1, s->mpeg_quant); /* quant type= (0=h263 style)*/
@@ -1054,8 +1054,7 @@ static void mpeg4_encode_vol_header(MpegEncContext *s,
     if (vo_ver_id != 1)
         put_bits(&s->pb, 1, s->quarter_sample);
     put_bits(&s->pb, 1, 1);             /* complexity estimation disable */
-    s->resync_marker = s->rtp_mode;
-    put_bits(&s->pb, 1, s->resync_marker ? 0 : 1); /* resync marker disable */
+    put_bits(&s->pb, 1, s->rtp_mode ? 0 : 1); /* resync marker disable */
     put_bits(&s->pb, 1, s->data_partitioning ? 1 : 0);
     if (s->data_partitioning)
         put_bits(&s->pb, 1, 0);         /* no rvlc */
@@ -1113,8 +1112,7 @@ void ff_mpeg4_encode_picture_header(MpegEncContext *s, int picture_number)
     put_bits(&s->pb, s->time_increment_bits, time_mod); /* time increment */
     put_bits(&s->pb, 1, 1);                             /* marker */
     put_bits(&s->pb, 1, 1);                             /* vop coded */
-    if (s->pict_type == AV_PICTURE_TYPE_P ||
-        (s->pict_type == AV_PICTURE_TYPE_S && s->vol_sprite_usage == GMC_SPRITE)) {
+    if (s->pict_type == AV_PICTURE_TYPE_P) {
         put_bits(&s->pb, 1, s->no_rounding);    /* rounding type */
     }
     put_bits(&s->pb, 3, 0);     /* intra dc VLC threshold */