[FFmpeg-devel] [PATCH] Attach quantizer parameter to an encoded frame in libvpx wrapper
Danil Chapovalov
danilchap at webrtc.org
Wed Mar 9 16:13:27 EET 2022
Signed-off-by: Danil Chapovalov <danilchap at webrtc.org>
---
libavcodec/libvpxenc.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/libavcodec/libvpxenc.c b/libavcodec/libvpxenc.c
index 8f94ba15dc..581282682c 100644
--- a/libavcodec/libvpxenc.c
+++ b/libavcodec/libvpxenc.c
@@ -1247,6 +1247,7 @@ static int storeframe(AVCodecContext *avctx,
struct FrameListData *cx_frame,
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;
@@ -1261,7 +1262,13 @@ 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(&((VPxContext *)avctx->priv_data)->encoder,
+ VP8E_GET_LAST_QUANTIZER_64, &quality);
+ if (ret != VPX_CODEC_OK) {
+ quality = 0;
+ }
+
+ ff_side_data_set_encoder_stats(pkt, quality, cx_frame->sse + 1,
cx_frame->have_sse ? 3 : 0, pict_type);
if (cx_frame->have_sse) {
--
2.35.1.616.g0bdcbb4464-goog
More information about the ffmpeg-devel
mailing list