diff --git a/libavformat/avformat.h b/libavformat/avformat.h index 9a9125a9c5..54dfdbf39a 100644 --- a/libavformat/avformat.h +++ b/libavformat/avformat.h @@ -22,7 +22,7 @@ #define FFMPEG_AVFORMAT_H #define LIBAVFORMAT_VERSION_MAJOR 52 -#define LIBAVFORMAT_VERSION_MINOR 8 +#define LIBAVFORMAT_VERSION_MINOR 9 #define LIBAVFORMAT_VERSION_MICRO 0 #define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \ @@ -508,6 +508,12 @@ typedef struct AVFormatContext { * demuxing: set by user */ unsigned int max_index_size; + + /** + * Maximum ammount of memory in bytes to use for buffering frames that are + * obtained from real-time capture devices. + */ + unsigned int max_picture_buffer; } AVFormatContext; typedef struct AVPacketList { diff --git a/libavformat/utils.c b/libavformat/utils.c index d032baaf95..b37db35b88 100644 --- a/libavformat/utils.c +++ b/libavformat/utils.c @@ -324,6 +324,7 @@ static const AVOption options[]={ {"analyzeduration", "how many microseconds are analyzed to estimate duration", OFFSET(max_analyze_duration), FF_OPT_TYPE_INT, 3*AV_TIME_BASE, 0, INT_MAX, D}, {"cryptokey", "decryption key", OFFSET(key), FF_OPT_TYPE_BINARY, 0, 0, 0, D}, {"indexmem", "max memory used for timestamp index (per stream)", OFFSET(max_index_size), FF_OPT_TYPE_INT, 1<<20, 0, INT_MAX, D}, +{"rtbufsize", "max memory used for buffering real-time frames", OFFSET(max_picture_buffer), FF_OPT_TYPE_INT, 3041280, 0, INT_MAX, D}, /* defaults to 1s of 15fps 352x288 YUYV422 video */ {NULL}, };