Add a quality factor packet side data
[ffmpeg.git] / libavcodec / libxavs.c
index 9b802436120fc70383fda2014522440762c3f8e7..0cabe63f7ffe54dd7ca84edd8f526b4dadb3f055 100644 (file)
@@ -119,6 +119,7 @@ static int XAVS_frame(AVCodecContext *avctx, AVPacket *pkt,
     xavs_nal_t *nal;
     int nnal, i, ret;
     xavs_picture_t pic_out;
+    uint8_t *sd;
 
     x4->pic.img.i_csp   = XAVS_CSP_I420;
     x4->pic.img.i_plane = 3;
@@ -193,6 +194,11 @@ static int XAVS_frame(AVCodecContext *avctx, AVPacket *pkt,
 
     avctx->coded_frame->quality = (pic_out.i_qpplus1 - 1) * FF_QP2LAMBDA;
 
+    sd = av_packet_new_side_data(pkt, AV_PKT_DATA_QUALITY_FACTOR, sizeof(int));
+    if (!sd)
+        return AVERROR(ENOMEM);
+    *(int *)sd = (pic_out.i_qpplus1 - 1) * FF_QP2LAMBDA;
+
     x4->out_frame_count++;
     *got_packet = ret;
     return 0;