ffmpeg | branch: master | Danil Chapovalov <[email protected]> | Tue Apr 5 16:20:46 2022 +0200| [53fd2d2203451434abd4ce22a758b1137edbe3fe] | committer: James Almer
avcodec/libvpxenc: return quantizer parameter for an encoded frame > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=53fd2d2203451434abd4ce22a758b1137edbe3fe --- libavcodec/libvpxenc.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/libavcodec/libvpxenc.c b/libavcodec/libvpxenc.c index dff1d06b0e..302f3bc55b 100644 --- a/libavcodec/libvpxenc.c +++ b/libavcodec/libvpxenc.c @@ -1247,9 +1247,11 @@ static inline void cx_pktcpy(struct FrameListData *dst, static int storeframe(AVCodecContext *avctx, struct FrameListData *cx_frame, AVPacket *pkt) { + VPxContext *ctx = avctx->priv_data; int ret = ff_get_encode_buffer(avctx, pkt, cx_frame->sz, 0); uint8_t *side_data; int pict_type; + int quality; if (ret < 0) return ret; @@ -1264,7 +1266,10 @@ static int storeframe(AVCodecContext *avctx, struct FrameListData *cx_frame, pict_type = AV_PICTURE_TYPE_P; } - ff_side_data_set_encoder_stats(pkt, 0, cx_frame->sse + 1, + ret = vpx_codec_control(&ctx->encoder, VP8E_GET_LAST_QUANTIZER_64, &quality); + if (ret != VPX_CODEC_OK) + quality = 0; + ff_side_data_set_encoder_stats(pkt, quality * FF_QP2LAMBDA, cx_frame->sse + 1, cx_frame->have_sse ? 3 : 0, pict_type); if (cx_frame->have_sse) { _______________________________________________ ffmpeg-cvslog mailing list [email protected] https://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog To unsubscribe, visit link above, or email [email protected] with subject "unsubscribe".
