]> git.sesse.net Git - ffmpeg/blobdiff - libavcodec/mpeg4video.h
h264: rebuild the default ref list if the reference count changes
[ffmpeg] / libavcodec / mpeg4video.h
index 12a49f9fa6da8c882c5ed49a7dd584cf211f7475..59358eb5558dd275c3da2670e5756df3f7b0ca7b 100644 (file)
@@ -66,8 +66,38 @@ typedef struct Mpeg4DecContext {
     int time_increment_bits;
     int shape;
     int vol_sprite_usage;
+    int sprite_brightness_change;
+    int num_sprite_warping_points;
+    ///< sprite trajectory points
+    uint16_t sprite_traj[4][2];
+    ///< sprite shift [isChroma]
+    int sprite_shift[2];
+
     // reversible vlc
     int rvlc;
+    ///< could this stream contain resync markers
+    int resync_marker;
+    ///< time distance of first I -> B, used for interlaced b frames
+    int t_frame;
+
+    int new_pred;
+    int enhancement_type;
+    int scalability;
+    int use_intra_dc_vlc;
+    ///< QP above whch the ac VLC should be used for intra dc
+    int intra_dc_threshold;
+
+    /* bug workarounds */
+    int divx_version;
+    int divx_build;
+    int xvid_build;
+    int lavc_build;
+    ///< flag for having shown the warning about divxs invalid b frames
+    int showed_packed_warning;
+
+    int cplx_estimation_trash_i;
+    int cplx_estimation_trash_p;
+    int cplx_estimation_trash_b;
 } Mpeg4DecContext;
 
 /* dc encoding for mpeg4 */
@@ -116,6 +146,7 @@ int ff_mpeg4_decode_partitions(Mpeg4DecContext *ctx);
 int ff_mpeg4_get_video_packet_prefix_length(MpegEncContext *s);
 int ff_mpeg4_decode_video_packet_header(Mpeg4DecContext *ctx);
 void ff_mpeg4_init_direct_mv(MpegEncContext *s);
+int ff_mpeg4_frame_end(AVCodecContext *avctx, const uint8_t *buf, int buf_size);
 
 /**
  *