summaryrefslogtreecommitdiff
path: root/libavcodec/libxvid.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavcodec/libxvid.c')
-rw-r--r--libavcodec/libxvid.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/libavcodec/libxvid.c b/libavcodec/libxvid.c
index 5282ea7a19..b440ac2d92 100644
--- a/libavcodec/libxvid.c
+++ b/libavcodec/libxvid.c
@@ -743,6 +743,12 @@ static int xvid_encode_frame(AVCodecContext *avctx, AVPacket *pkt,
}
if (xerr > 0) {
+ uint8_t *sd = av_packet_new_side_data(pkt, AV_PKT_DATA_QUALITY_FACTOR,
+ sizeof(int));
+ if (!sd)
+ return AVERROR(ENOMEM);
+ *(int *)sd = xvid_enc_stats.quant * FF_QP2LAMBDA;
+
*got_packet = 1;
avctx->coded_frame->quality = xvid_enc_stats.quant * FF_QP2LAMBDA;