[FFmpeg-devel] [PATCH 3/5] mjpegdec: export qp table

Michael Niedermayer michaelni at gmx.at
Thu Mar 14 02:15:53 CET 2013


Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
---
 libavcodec/mjpegdec.c |   19 +++++++++++++------
 1 file changed, 13 insertions(+), 6 deletions(-)

diff --git a/libavcodec/mjpegdec.c b/libavcodec/mjpegdec.c
index b7d4cf5..dc61aef 100644
--- a/libavcodec/mjpegdec.c
+++ b/libavcodec/mjpegdec.c
@@ -1740,12 +1740,19 @@ eoi_parser:
                 *got_frame = 1;
                 s->got_picture = 0;
 
-                if (!s->lossless &&
-                    avctx->debug & FF_DEBUG_QP) {
-                    av_log(avctx, AV_LOG_DEBUG,
-                           "QP: %d\n", FFMAX3(s->qscale[0],
-                                              s->qscale[1],
-                                              s->qscale[2]));
+                if (!s->lossless) {
+                    int qp = FFMAX3(s->qscale[0],
+                                    s->qscale[1],
+                                    s->qscale[2]);
+                    int qpw = (s->width + 15) / 16;
+                    AVBufferRef *qp_table_buf = av_buffer_alloc(qpw);
+                    if (qp_table_buf) {
+                        memset(qp_table_buf->data, qp, qpw);
+                        av_frame_set_qp_table(data, qp_table_buf, 0, FF_QSCALE_TYPE_MPEG1);
+                    }
+
+                    if(avctx->debug & FF_DEBUG_QP)
+                        av_log(avctx, AV_LOG_DEBUG, "QP: %d\n", qp);
                 }
 
                 goto the_end;
-- 
1.7.9.5



More information about the ffmpeg-devel mailing list