You've already forked FFmpeg
mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-08-10 06:10:52 +02:00
avformat: keep r_frame_rate
This field is used and nothing equivalent exists Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
@@ -663,17 +663,6 @@ typedef struct AVStream {
|
|||||||
* not actually used for encoding.
|
* not actually used for encoding.
|
||||||
*/
|
*/
|
||||||
AVCodecContext *codec;
|
AVCodecContext *codec;
|
||||||
#if FF_API_R_FRAME_RATE
|
|
||||||
/**
|
|
||||||
* Real base framerate of the stream.
|
|
||||||
* This is the lowest framerate with which all timestamps can be
|
|
||||||
* represented accurately (it is the least common multiple of all
|
|
||||||
* framerates in the stream). Note, this value is just a guess!
|
|
||||||
* For example, if the time base is 1/90000 and all frames have either
|
|
||||||
* approximately 3600 or 1800 timer ticks, then r_frame_rate will be 50/1.
|
|
||||||
*/
|
|
||||||
AVRational r_frame_rate;
|
|
||||||
#endif
|
|
||||||
void *priv_data;
|
void *priv_data;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -738,6 +727,19 @@ typedef struct AVStream {
|
|||||||
*/
|
*/
|
||||||
AVPacket attached_pic;
|
AVPacket attached_pic;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Real base framerate of the stream.
|
||||||
|
* This is the lowest framerate with which all timestamps can be
|
||||||
|
* represented accurately (it is the least common multiple of all
|
||||||
|
* framerates in the stream). Note, this value is just a guess!
|
||||||
|
* For example, if the time base is 1/90000 and all frames have either
|
||||||
|
* approximately 3600 or 1800 timer ticks, then r_frame_rate will be 50/1.
|
||||||
|
*
|
||||||
|
* Code outside avformat should access this field using:
|
||||||
|
* av_stream_get/set_r_frame_rate(stream)
|
||||||
|
*/
|
||||||
|
AVRational r_frame_rate;
|
||||||
|
|
||||||
/*****************************************************************
|
/*****************************************************************
|
||||||
* All fields below this line are not part of the public API. They
|
* All fields below this line are not part of the public API. They
|
||||||
* may not be used outside of libavformat and can be changed and
|
* may not be used outside of libavformat and can be changed and
|
||||||
@@ -875,6 +877,9 @@ typedef struct AVStream {
|
|||||||
|
|
||||||
} AVStream;
|
} AVStream;
|
||||||
|
|
||||||
|
AVRational av_stream_get_r_frame_rate(const AVStream *s);
|
||||||
|
void av_stream_set_r_frame_rate(AVStream *s, AVRational r);
|
||||||
|
|
||||||
#define AV_PROGRAM_RUNNING 1
|
#define AV_PROGRAM_RUNNING 1
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@@ -99,6 +99,12 @@ static int64_t wrap_timestamp(AVStream *st, int64_t timestamp)
|
|||||||
return timestamp;
|
return timestamp;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#define MAKE_ACCESSORS(str, name, type, field) \
|
||||||
|
type av_##name##_get_##field(const str *s) { return s->field; } \
|
||||||
|
void av_##name##_set_##field(str *s, type v) { s->field = v; }
|
||||||
|
|
||||||
|
MAKE_ACCESSORS(AVStream, stream, AVRational, r_frame_rate)
|
||||||
|
|
||||||
/** head of registered input format linked list */
|
/** head of registered input format linked list */
|
||||||
static AVInputFormat *first_iformat = NULL;
|
static AVInputFormat *first_iformat = NULL;
|
||||||
/** head of registered output format linked list */
|
/** head of registered output format linked list */
|
||||||
|
Reference in New Issue
Block a user