mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-11-21 10:55:51 +02:00
lavc: deprecate FF_*_TYPE macros in favor of AV_PICTURE_TYPE_* enums
Also deprecate av_get_pict_type_char() in favor of av_get_picture_type_char(). The new enum and av_get_picture_type_char() are defined in libavutil. This allows the use in libavfilter without the need to link against libavcodec. Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it> Signed-off-by: Anton Khirnov <anton@khirnov.net>
This commit is contained in:
parent
30fe971934
commit
bebe72f4a0
@ -13,6 +13,11 @@ libavutil: 2011-04-18
|
||||
|
||||
API changes, most recent first:
|
||||
|
||||
2011-04-XX - XXXXXXX - lavu 51.1.0 - avutil.h
|
||||
Add AVPictureType enum and av_get_picture_type_char(), deprecate
|
||||
FF_*_TYPE defines and av_get_pict_type_char() defined in
|
||||
libavcodec/avcodec.h.
|
||||
|
||||
2011-04-xx - xxxxxx - lavfi 2.3.0 - avfilter.h
|
||||
Add pict_type and key_frame fields to AVFilterBufferRefVideo.
|
||||
|
||||
|
@ -762,7 +762,7 @@ typedef struct AVPanScan{
|
||||
* - encoding: Set by libavcodec. for coded_picture (and set by user for input).\
|
||||
* - decoding: Set by libavcodec.\
|
||||
*/\
|
||||
int pict_type;\
|
||||
enum AVPictureType pict_type;\
|
||||
\
|
||||
/**\
|
||||
* presentation timestamp in time_base units (time when frame should be shown to user)\
|
||||
@ -1004,14 +1004,16 @@ typedef struct AVPanScan{
|
||||
#define FF_BUFFER_TYPE_SHARED 4 ///< Buffer from somewhere else; don't deallocate image (data/base), all other tables are not shared.
|
||||
#define FF_BUFFER_TYPE_COPY 8 ///< Just a (modified) copy of some other buffer, don't deallocate anything.
|
||||
|
||||
|
||||
#define FF_I_TYPE 1 ///< Intra
|
||||
#define FF_P_TYPE 2 ///< Predicted
|
||||
#define FF_B_TYPE 3 ///< Bi-dir predicted
|
||||
#define FF_S_TYPE 4 ///< S(GMC)-VOP MPEG4
|
||||
#define FF_SI_TYPE 5 ///< Switching Intra
|
||||
#define FF_SP_TYPE 6 ///< Switching Predicted
|
||||
#define FF_BI_TYPE 7
|
||||
#if FF_API_OLD_FF_PICT_TYPES
|
||||
/* DEPRECATED, directly use the AV_PICTURE_TYPE_* enum values */
|
||||
#define FF_I_TYPE AV_PICTURE_TYPE_I ///< Intra
|
||||
#define FF_P_TYPE AV_PICTURE_TYPE_P ///< Predicted
|
||||
#define FF_B_TYPE AV_PICTURE_TYPE_B ///< Bi-dir predicted
|
||||
#define FF_S_TYPE AV_PICTURE_TYPE_S ///< S(GMC)-VOP MPEG4
|
||||
#define FF_SI_TYPE AV_PICTURE_TYPE_SI ///< Switching Intra
|
||||
#define FF_SP_TYPE AV_PICTURE_TYPE_SP ///< Switching Predicted
|
||||
#define FF_BI_TYPE AV_PICTURE_TYPE_BI
|
||||
#endif
|
||||
|
||||
#define FF_BUFFER_HINTS_VALID 0x01 // Buffer hints value is meaningful (if 0 ignore).
|
||||
#define FF_BUFFER_HINTS_READABLE 0x02 // Codec will read from buffer.
|
||||
@ -3766,13 +3768,17 @@ void avcodec_default_free_buffers(AVCodecContext *s);
|
||||
|
||||
/* misc useful functions */
|
||||
|
||||
#if FF_API_OLD_FF_PICT_TYPES
|
||||
/**
|
||||
* Return a single letter to describe the given picture type pict_type.
|
||||
*
|
||||
* @param[in] pict_type the picture type
|
||||
* @return A single character representing the picture type.
|
||||
* @deprecated Use av_get_picture_type_char() instead.
|
||||
*/
|
||||
attribute_deprecated
|
||||
char av_get_pict_type_char(int pict_type);
|
||||
#endif
|
||||
|
||||
/**
|
||||
* Return codec bits per sample.
|
||||
|
@ -1030,18 +1030,11 @@ void avcodec_default_free_buffers(AVCodecContext *s){
|
||||
s->internal_buffer_count=0;
|
||||
}
|
||||
|
||||
#if FF_API_OLD_FF_PICT_TYPES
|
||||
char av_get_pict_type_char(int pict_type){
|
||||
switch(pict_type){
|
||||
case FF_I_TYPE: return 'I';
|
||||
case FF_P_TYPE: return 'P';
|
||||
case FF_B_TYPE: return 'B';
|
||||
case FF_S_TYPE: return 'S';
|
||||
case FF_SI_TYPE:return 'i';
|
||||
case FF_SP_TYPE:return 'p';
|
||||
case FF_BI_TYPE:return 'b';
|
||||
default: return '?';
|
||||
}
|
||||
return av_get_picture_type_char(pict_type);
|
||||
}
|
||||
#endif
|
||||
|
||||
int av_get_bits_per_sample(enum CodecID codec_id){
|
||||
switch(codec_id){
|
||||
|
@ -22,7 +22,7 @@
|
||||
|
||||
#define LIBAVCODEC_VERSION_MAJOR 53
|
||||
#define LIBAVCODEC_VERSION_MINOR 1
|
||||
#define LIBAVCODEC_VERSION_MICRO 0
|
||||
#define LIBAVCODEC_VERSION_MICRO 1
|
||||
|
||||
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
|
||||
LIBAVCODEC_VERSION_MINOR, \
|
||||
@ -59,5 +59,8 @@
|
||||
#ifndef FF_API_THREAD_INIT
|
||||
#define FF_API_THREAD_INIT (LIBAVCODEC_VERSION_MAJOR < 54)
|
||||
#endif
|
||||
#ifndef FF_API_OLD_FF_PICT_TYPES
|
||||
#define FF_API_OLD_FF_PICT_TYPES (LIBAVCODEC_VERSION_MAJOR < 54)
|
||||
#endif
|
||||
|
||||
#endif /* AVCODEC_VERSION_H */
|
||||
|
@ -27,7 +27,7 @@
|
||||
|
||||
#define LIBAVFILTER_VERSION_MAJOR 2
|
||||
#define LIBAVFILTER_VERSION_MINOR 3
|
||||
#define LIBAVFILTER_VERSION_MICRO 0
|
||||
#define LIBAVFILTER_VERSION_MICRO 1
|
||||
|
||||
#define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
|
||||
LIBAVFILTER_VERSION_MINOR, \
|
||||
@ -115,7 +115,7 @@ typedef struct AVFilterBufferRefVideoProps {
|
||||
AVRational pixel_aspect; ///< pixel aspect ratio
|
||||
int interlaced; ///< is frame interlaced
|
||||
int top_field_first; ///< field order
|
||||
int pict_type; ///< Picture type of the frame
|
||||
enum AVPictureType pict_type; ///< picture type of the frame
|
||||
int key_frame; ///< 1 -> keyframe, 0-> not
|
||||
} AVFilterBufferRefVideoProps;
|
||||
|
||||
|
@ -40,7 +40,7 @@
|
||||
#define AV_VERSION(a, b, c) AV_VERSION_DOT(a, b, c)
|
||||
|
||||
#define LIBAVUTIL_VERSION_MAJOR 51
|
||||
#define LIBAVUTIL_VERSION_MINOR 0
|
||||
#define LIBAVUTIL_VERSION_MINOR 1
|
||||
#define LIBAVUTIL_VERSION_MICRO 0
|
||||
|
||||
#define LIBAVUTIL_VERSION_INT AV_VERSION_INT(LIBAVUTIL_VERSION_MAJOR, \
|
||||
@ -94,6 +94,25 @@ enum AVMediaType {
|
||||
#define AV_TIME_BASE 1000000
|
||||
#define AV_TIME_BASE_Q (AVRational){1, AV_TIME_BASE}
|
||||
|
||||
enum AVPictureType {
|
||||
AV_PICTURE_TYPE_I = 1, ///< Intra
|
||||
AV_PICTURE_TYPE_P, ///< Predicted
|
||||
AV_PICTURE_TYPE_B, ///< Bi-dir predicted
|
||||
AV_PICTURE_TYPE_S, ///< S(GMC)-VOP MPEG4
|
||||
AV_PICTURE_TYPE_SI, ///< Switching Intra
|
||||
AV_PICTURE_TYPE_SP, ///< Switching Predicted
|
||||
AV_PICTURE_TYPE_BI, ///< BI type
|
||||
};
|
||||
|
||||
/**
|
||||
* Return a single letter to describe the given picture type
|
||||
* pict_type.
|
||||
*
|
||||
* @param[in] pict_type the picture type @return a single character
|
||||
* representing the picture type, '?' if pict_type is unknown
|
||||
*/
|
||||
char av_get_picture_type_char(enum AVPictureType pict_type);
|
||||
|
||||
#include "common.h"
|
||||
#include "error.h"
|
||||
#include "mathematics.h"
|
||||
|
@ -39,3 +39,17 @@ const char *avutil_license(void)
|
||||
#define LICENSE_PREFIX "libavutil license: "
|
||||
return LICENSE_PREFIX LIBAV_LICENSE + sizeof(LICENSE_PREFIX) - 1;
|
||||
}
|
||||
|
||||
char av_get_picture_type_char(enum AVPictureType pict_type)
|
||||
{
|
||||
switch (pict_type) {
|
||||
case AV_PICTURE_TYPE_I: return 'I';
|
||||
case AV_PICTURE_TYPE_P: return 'P';
|
||||
case AV_PICTURE_TYPE_B: return 'B';
|
||||
case AV_PICTURE_TYPE_S: return 'S';
|
||||
case AV_PICTURE_TYPE_SI: return 'i';
|
||||
case AV_PICTURE_TYPE_SP: return 'p';
|
||||
case AV_PICTURE_TYPE_BI: return 'b';
|
||||
default: return '?';
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user