[FFmpeg-cvslog] libxvid: Do not entangle coded_frame

Vittorio Giovara git at videolan.org
Mon Jul 20 22:13:27 CEST 2015


ffmpeg | branch: master | Vittorio Giovara <vittorio.giovara at gmail.com> | Wed Jul 15 18:41:13 2015 +0100| [7fc8d8a1b3da1666176b3d92e989ee74f3ef014e] | committer: Vittorio Giovara

libxvid: Do not entangle coded_frame

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=7fc8d8a1b3da1666176b3d92e989ee74f3ef014e
---

 libavcodec/libxvid.c |   18 +++++++++---------
 1 file changed, 9 insertions(+), 9 deletions(-)

diff --git a/libavcodec/libxvid.c b/libavcodec/libxvid.c
index 97ff95b..0012876 100644
--- a/libavcodec/libxvid.c
+++ b/libavcodec/libxvid.c
@@ -663,7 +663,6 @@ static int xvid_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
 {
     int xerr, i, ret, user_packet = !!pkt->data;
     struct xvid_context *x = avctx->priv_data;
-    AVFrame *p             = avctx->coded_frame;
     int mb_width  = (avctx->width  + 15) / 16;
     int mb_height = (avctx->height + 15) / 16;
     char *tmp;
@@ -749,23 +748,24 @@ static int xvid_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
     if (xerr > 0) {
         *got_packet = 1;
 
-        p->quality = xvid_enc_stats.quant * FF_QP2LAMBDA;
+        avctx->coded_frame->quality = xvid_enc_stats.quant * FF_QP2LAMBDA;
         if (xvid_enc_stats.type == XVID_TYPE_PVOP)
-            p->pict_type = AV_PICTURE_TYPE_P;
+            avctx->coded_frame->pict_type = AV_PICTURE_TYPE_P;
         else if (xvid_enc_stats.type == XVID_TYPE_BVOP)
-            p->pict_type = AV_PICTURE_TYPE_B;
+            avctx->coded_frame->pict_type = AV_PICTURE_TYPE_B;
         else if (xvid_enc_stats.type == XVID_TYPE_SVOP)
-            p->pict_type = AV_PICTURE_TYPE_S;
+            avctx->coded_frame->pict_type = AV_PICTURE_TYPE_S;
         else
-            p->pict_type = AV_PICTURE_TYPE_I;
+            avctx->coded_frame->pict_type = AV_PICTURE_TYPE_I;
         if (xvid_enc_frame.out_flags & XVID_KEYFRAME) {
-            p->key_frame = 1;
+            avctx->coded_frame->key_frame = 1;
             pkt->flags  |= AV_PKT_FLAG_KEY;
             if (x->quicktime_format)
                 return xvid_strip_vol_header(avctx, pkt,
                                              xvid_enc_stats.hlength, xerr);
-        } else
-            p->key_frame = 0;
+        } else {
+            avctx->coded_frame->key_frame = 0;
+        }
 
         pkt->size = xerr;
 



More information about the ffmpeg-cvslog mailing list