mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-02-04 06:08:26 +02:00
avutil/frame: deprecate AVFrame.coded_picture_number and display_picture_number
Their usefulness is questionable, very few decoders set them, and their type should have been int64_t. A replacement field can be added later if a valid use case is found. Signed-off-by: Marton Balint <cus@passwd.hu>
This commit is contained in:
parent
8e2c124904
commit
2296078397
@ -2,6 +2,10 @@ The last version increases of all libraries were on 2023-02-09
|
||||
|
||||
API changes, most recent first:
|
||||
|
||||
2023-02-13 - xxxxxxxxxx - lavu 58.1.100 - frame.h
|
||||
Deprecate AVFrame.coded_picture_number and display_picture_number.
|
||||
Their usefulness is questionable and very few decoders set them.
|
||||
|
||||
2023-02-13 - xxxxxxxxxx - lavc 60.2.100 - avcodec.h
|
||||
Add AVCodecContext.frame_num as a 64bit version of frame_number.
|
||||
Deprecate AVCodecContext.frame_number.
|
||||
|
@ -73,8 +73,8 @@ static int output_video_frame(AVFrame *frame)
|
||||
return -1;
|
||||
}
|
||||
|
||||
printf("video_frame n:%d coded_n:%d\n",
|
||||
video_frame_count++, frame->coded_picture_number);
|
||||
printf("video_frame n:%d\n",
|
||||
video_frame_count++);
|
||||
|
||||
/* copy decoded frame to destination buffer:
|
||||
* this is required since rawvideo expects non aligned data */
|
||||
|
@ -2618,8 +2618,12 @@ static void show_frame(WriterContext *w, AVFrame *frame, AVStream *stream,
|
||||
print_str_opt("sample_aspect_ratio", "N/A");
|
||||
}
|
||||
print_fmt("pict_type", "%c", av_get_picture_type_char(frame->pict_type));
|
||||
#if LIBAVUTIL_VERSION_MAJOR < 59
|
||||
AV_NOWARN_DEPRECATED(
|
||||
print_int("coded_picture_number", frame->coded_picture_number);
|
||||
print_int("display_picture_number", frame->display_picture_number);
|
||||
)
|
||||
#endif
|
||||
print_int("interlaced_frame", frame->interlaced_frame);
|
||||
print_int("top_field_first", frame->top_field_first);
|
||||
print_int("repeat_pict", frame->repeat_pict);
|
||||
|
@ -2103,7 +2103,11 @@ static int get_delayed_pic(DiracContext *s, AVFrame *picture, int *got_frame)
|
||||
out->reference ^= DELAYED_PIC_REF;
|
||||
if((ret = av_frame_ref(picture, out->avframe)) < 0)
|
||||
return ret;
|
||||
#if FF_API_FRAME_PICTURE_NUMBER
|
||||
FF_DISABLE_DEPRECATION_WARNINGS
|
||||
picture->display_picture_number = out->picture_number;
|
||||
FF_ENABLE_DEPRECATION_WARNINGS
|
||||
#endif
|
||||
*got_frame = 1;
|
||||
}
|
||||
|
||||
@ -2343,7 +2347,11 @@ static int dirac_decode_frame(AVCodecContext *avctx, AVFrame *picture,
|
||||
if((ret = av_frame_ref(picture, delayed_frame->avframe)) < 0)
|
||||
return ret;
|
||||
s->frame_number = delayed_frame->picture_number + 1LL;
|
||||
#if FF_API_FRAME_PICTURE_NUMBER
|
||||
FF_DISABLE_DEPRECATION_WARNINGS
|
||||
picture->display_picture_number = delayed_frame->picture_number;
|
||||
FF_ENABLE_DEPRECATION_WARNINGS
|
||||
#endif
|
||||
*got_frame = 1;
|
||||
}
|
||||
} else if (s->current_picture->picture_number == s->frame_number) {
|
||||
@ -2351,7 +2359,11 @@ static int dirac_decode_frame(AVCodecContext *avctx, AVFrame *picture,
|
||||
if((ret = av_frame_ref(picture, s->current_picture->avframe)) < 0)
|
||||
return ret;
|
||||
s->frame_number = s->current_picture->picture_number + 1LL;
|
||||
#if FF_API_FRAME_PICTURE_NUMBER
|
||||
FF_DISABLE_DEPRECATION_WARNINGS
|
||||
picture->display_picture_number = s->current_picture->picture_number;
|
||||
FF_ENABLE_DEPRECATION_WARNINGS
|
||||
#endif
|
||||
*got_frame = 1;
|
||||
}
|
||||
|
||||
|
@ -489,7 +489,11 @@ static int h264_frame_start(H264Context *h)
|
||||
pic = &h->DPB[i];
|
||||
|
||||
pic->reference = h->droppable ? 0 : h->picture_structure;
|
||||
#if FF_API_FRAME_PICTURE_NUMBER
|
||||
FF_DISABLE_DEPRECATION_WARNINGS
|
||||
pic->f->coded_picture_number = h->coded_picture_number++;
|
||||
FF_ENABLE_DEPRECATION_WARNINGS
|
||||
#endif
|
||||
pic->field_picture = h->picture_structure != PICT_FRAME;
|
||||
pic->frame_num = h->poc.frame_num;
|
||||
/*
|
||||
|
@ -81,8 +81,12 @@ static void uavs3d_output_callback(uavs3d_io_frm_t *dec_frame) {
|
||||
frm->pkt_dts = dec_frame->dts;
|
||||
frm->pkt_pos = dec_frame->pkt_pos;
|
||||
frm->pkt_size = dec_frame->pkt_size;
|
||||
#if FF_API_FRAME_PICTURE_NUMBER
|
||||
FF_DISABLE_DEPRECATION_WARNINGS
|
||||
frm->coded_picture_number = dec_frame->dtr;
|
||||
frm->display_picture_number = dec_frame->ptr;
|
||||
FF_ENABLE_DEPRECATION_WARNINGS
|
||||
#endif
|
||||
|
||||
if (dec_frame->type < 0 || dec_frame->type >= FF_ARRAY_ELEMS(ff_avs3_image_type)) {
|
||||
av_log(NULL, AV_LOG_WARNING, "Error frame type in uavs3d: %d.\n", dec_frame->type);
|
||||
|
@ -320,7 +320,11 @@ int ff_mpv_frame_start(MpegEncContext *s, AVCodecContext *avctx)
|
||||
pic->reference = 3;
|
||||
}
|
||||
|
||||
#if FF_API_FRAME_PICTURE_NUMBER
|
||||
FF_DISABLE_DEPRECATION_WARNINGS
|
||||
pic->f->coded_picture_number = s->coded_picture_number++;
|
||||
FF_ENABLE_DEPRECATION_WARNINGS
|
||||
#endif
|
||||
|
||||
if (alloc_picture(s, pic) < 0)
|
||||
return -1;
|
||||
|
@ -294,8 +294,12 @@ FF_ENABLE_DEPRECATION_WARNINGS
|
||||
#endif
|
||||
dst->quality = src->quality;
|
||||
dst->best_effort_timestamp = src->best_effort_timestamp;
|
||||
#if FF_API_FRAME_PICTURE_NUMBER
|
||||
FF_DISABLE_DEPRECATION_WARNINGS
|
||||
dst->coded_picture_number = src->coded_picture_number;
|
||||
dst->display_picture_number = src->display_picture_number;
|
||||
FF_ENABLE_DEPRECATION_WARNINGS
|
||||
#endif
|
||||
dst->flags = src->flags;
|
||||
dst->decode_error_flags = src->decode_error_flags;
|
||||
dst->color_primaries = src->color_primaries;
|
||||
|
@ -451,14 +451,18 @@ typedef struct AVFrame {
|
||||
*/
|
||||
AVRational time_base;
|
||||
|
||||
#if FF_API_FRAME_PICTURE_NUMBER
|
||||
/**
|
||||
* picture number in bitstream order
|
||||
*/
|
||||
attribute_deprecated
|
||||
int coded_picture_number;
|
||||
/**
|
||||
* picture number in display order
|
||||
*/
|
||||
attribute_deprecated
|
||||
int display_picture_number;
|
||||
#endif
|
||||
|
||||
/**
|
||||
* quality (between 1 (good) and FF_LAMBDA_MAX (bad))
|
||||
|
@ -79,7 +79,7 @@
|
||||
*/
|
||||
|
||||
#define LIBAVUTIL_VERSION_MAJOR 58
|
||||
#define LIBAVUTIL_VERSION_MINOR 0
|
||||
#define LIBAVUTIL_VERSION_MINOR 1
|
||||
#define LIBAVUTIL_VERSION_MICRO 100
|
||||
|
||||
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
|
||||
@ -112,6 +112,7 @@
|
||||
#define FF_API_AV_FOPEN_UTF8 (LIBAVUTIL_VERSION_MAJOR < 59)
|
||||
#define FF_API_PKT_DURATION (LIBAVUTIL_VERSION_MAJOR < 59)
|
||||
#define FF_API_REORDERED_OPAQUE (LIBAVUTIL_VERSION_MAJOR < 59)
|
||||
#define FF_API_FRAME_PICTURE_NUMBER (LIBAVUTIL_VERSION_MAJOR < 59)
|
||||
|
||||
/**
|
||||
* @}
|
||||
|
Loading…
x
Reference in New Issue
Block a user