diff options
author | Anton Khirnov <anton@khirnov.net> | 2013-11-26 12:18:44 +0100 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2013-11-29 14:19:47 +0100 |
commit | 48e139409556861c9e561ce34133891d8eecc3cf (patch) | |
tree | f6ac4af6aa5b17856d4e78713a0d2c4f3b27286e | |
parent | c2f7417eeb9cc31f75e71f7be2780f90f1628d7e (diff) | |
download | ffmpeg-48e139409556861c9e561ce34133891d8eecc3cf.tar.gz |
mpeg4videodec: move MpegEncContext.resync_marker into Mpeg4DecContext.
-rw-r--r-- | libavcodec/mpeg4video.h | 2 | ||||
-rw-r--r-- | libavcodec/mpeg4videodec.c | 4 | ||||
-rw-r--r-- | libavcodec/mpegvideo.h | 1 | ||||
-rw-r--r-- | libavcodec/vaapi_mpeg4.c | 2 | ||||
-rw-r--r-- | libavcodec/vdpau_mpeg4.c | 6 |
5 files changed, 9 insertions, 6 deletions
diff --git a/libavcodec/mpeg4video.h b/libavcodec/mpeg4video.h index 12a49f9fa6..1bdae38997 100644 --- a/libavcodec/mpeg4video.h +++ b/libavcodec/mpeg4video.h @@ -68,6 +68,8 @@ typedef struct Mpeg4DecContext { int vol_sprite_usage; // reversible vlc int rvlc; + ///< could this stream contain resync markers + int resync_marker; } Mpeg4DecContext; /* dc encoding for mpeg4 */ diff --git a/libavcodec/mpeg4videodec.c b/libavcodec/mpeg4videodec.c index 65d51e2c41..8511dc3d0d 100644 --- a/libavcodec/mpeg4videodec.c +++ b/libavcodec/mpeg4videodec.c @@ -1931,7 +1931,7 @@ no_cplx_est: s->cplx_estimation_trash_b = 0; } - s->resync_marker = !get_bits1(gb); /* resync_marker_disabled */ + ctx->resync_marker = !get_bits1(gb); /* resync_marker_disabled */ s->data_partitioning = get_bits1(gb); if (s->data_partitioning) @@ -2240,7 +2240,7 @@ static int decode_vop_header(Mpeg4DecContext *ctx, GetBitContext *gb) s->pict_type == AV_PICTURE_TYPE_I ? "I" : (s->pict_type == AV_PICTURE_TYPE_P ? "P" : (s->pict_type == AV_PICTURE_TYPE_B ? "B" : "S")), gb->size_in_bits, s->progressive_sequence, s->alternate_scan, s->top_field_first, s->quarter_sample ? "q" : "h", - s->data_partitioning, s->resync_marker, + s->data_partitioning, ctx->resync_marker, s->num_sprite_warping_points, s->sprite_warping_accuracy, 1 - s->no_rounding, s->vo_type, s->vol_control_parameters ? " VOLC" : " ", s->intra_dc_threshold, diff --git a/libavcodec/mpegvideo.h b/libavcodec/mpegvideo.h index a83241a6b2..e8a9ec2dcd 100644 --- a/libavcodec/mpegvideo.h +++ b/libavcodec/mpegvideo.h @@ -599,7 +599,6 @@ typedef struct MpegEncContext { int low_latency_sprite; int data_partitioning; ///< data partitioning flag from header int partitioned_frame; ///< is current frame partitioned - int resync_marker; ///< could this stream contain resync markers int low_delay; ///< no reordering needed / has no b-frames int vo_type; int vol_control_parameters; ///< does the stream contain the low_delay flag, used to workaround buggy encoders diff --git a/libavcodec/vaapi_mpeg4.c b/libavcodec/vaapi_mpeg4.c index 75bfb22a0a..f01285abee 100644 --- a/libavcodec/vaapi_mpeg4.c +++ b/libavcodec/vaapi_mpeg4.c @@ -72,7 +72,7 @@ static int vaapi_mpeg4_start_frame(AVCodecContext *avctx, av_unused const uint8_ pic_param->vol_fields.bits.quarter_sample = s->quarter_sample; pic_param->vol_fields.bits.data_partitioned = s->data_partitioning; pic_param->vol_fields.bits.reversible_vlc = ctx->rvlc; - pic_param->vol_fields.bits.resync_marker_disable = !s->resync_marker; + pic_param->vol_fields.bits.resync_marker_disable = !ctx->resync_marker; pic_param->no_of_sprite_warping_points = s->num_sprite_warping_points; for (i = 0; i < s->num_sprite_warping_points && i < 3; i++) { pic_param->sprite_trajectory_du[i] = s->sprite_traj[i][0]; diff --git a/libavcodec/vdpau_mpeg4.c b/libavcodec/vdpau_mpeg4.c index 8ccb3d6d6a..17205fe317 100644 --- a/libavcodec/vdpau_mpeg4.c +++ b/libavcodec/vdpau_mpeg4.c @@ -24,13 +24,15 @@ #include <vdpau/vdpau.h> #include "avcodec.h" +#include "mpeg4video.h" #include "vdpau.h" #include "vdpau_internal.h" static int vdpau_mpeg4_start_frame(AVCodecContext *avctx, const uint8_t *buffer, uint32_t size) { - MpegEncContext * const s = avctx->priv_data; + Mpeg4DecContext *ctx = avctx->priv_data; + MpegEncContext * const s = &ctx->m; Picture *pic = s->current_picture_ptr; struct vdpau_picture_context *pic_ctx = pic->hwaccel_picture_private; VdpPictureInfoMPEG4Part2 *info = &pic_ctx->info.mpeg4; @@ -62,7 +64,7 @@ static int vdpau_mpeg4_start_frame(AVCodecContext *avctx, info->vop_time_increment_resolution = s->avctx->time_base.den; info->vop_fcode_forward = s->f_code; info->vop_fcode_backward = s->b_code; - info->resync_marker_disable = !s->resync_marker; + info->resync_marker_disable = !ctx->resync_marker; info->interlaced = !s->progressive_sequence; info->quant_type = s->mpeg_quant; info->quarter_sample = s->quarter_sample; |