mirror of https://git.ffmpeg.org/ffmpeg.git
libvpxenc: report pict_type/error via side-data
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: James Zern <jzern@google.com>
This commit is contained in:
parent
88df16fe6d
commit
9723d439fd
|
@ -690,6 +690,7 @@ static int storeframe(AVCodecContext *avctx, struct FrameListData *cx_frame,
|
|||
int ret = ff_alloc_packet2(avctx, pkt, cx_frame->sz, 0);
|
||||
uint8_t *side_data;
|
||||
if (ret >= 0) {
|
||||
int pict_type;
|
||||
memcpy(pkt->data, cx_frame->buf, pkt->size);
|
||||
pkt->pts = pkt->dts = cx_frame->pts;
|
||||
#if FF_API_CODED_FRAME
|
||||
|
@ -700,20 +701,25 @@ FF_ENABLE_DEPRECATION_WARNINGS
|
|||
#endif
|
||||
|
||||
if (!!(cx_frame->flags & VPX_FRAME_IS_KEY)) {
|
||||
pict_type = AV_PICTURE_TYPE_I;
|
||||
#if FF_API_CODED_FRAME
|
||||
FF_DISABLE_DEPRECATION_WARNINGS
|
||||
avctx->coded_frame->pict_type = AV_PICTURE_TYPE_I;
|
||||
avctx->coded_frame->pict_type = pict_type;
|
||||
FF_ENABLE_DEPRECATION_WARNINGS
|
||||
#endif
|
||||
pkt->flags |= AV_PKT_FLAG_KEY;
|
||||
} else {
|
||||
pict_type = AV_PICTURE_TYPE_P;
|
||||
#if FF_API_CODED_FRAME
|
||||
FF_DISABLE_DEPRECATION_WARNINGS
|
||||
avctx->coded_frame->pict_type = AV_PICTURE_TYPE_P;
|
||||
avctx->coded_frame->pict_type = pict_type;
|
||||
FF_ENABLE_DEPRECATION_WARNINGS
|
||||
#endif
|
||||
}
|
||||
|
||||
ff_side_data_set_encoder_stats(pkt, 0, cx_frame->sse + 1,
|
||||
cx_frame->have_sse ? 3 : 0, pict_type);
|
||||
|
||||
if (cx_frame->have_sse) {
|
||||
int i;
|
||||
/* Beware of the Y/U/V/all order! */
|
||||
|
|
Loading…
Reference in New Issue