diff options
-rw-r--r-- | libavfilter/avfilter.h | 10 | ||||
-rw-r--r-- | libavfilter/formats.c | 13 |
2 files changed, 22 insertions, 1 deletions
diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h index dba73f8..8315a3b 100644 --- a/libavfilter/avfilter.h +++ b/libavfilter/avfilter.h @@ -25,7 +25,7 @@ #include "libavutil/avutil.h" #define LIBAVFILTER_VERSION_MAJOR 1 -#define LIBAVFILTER_VERSION_MINOR 12 +#define LIBAVFILTER_VERSION_MINOR 13 #define LIBAVFILTER_VERSION_MICRO 0 #define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \ @@ -192,6 +192,14 @@ struct AVFilterFormats AVFilterFormats *avfilter_make_format_list(const enum PixelFormat *pix_fmts); /** + * Adds pix_fmt to the list of pixel formats contained in avff. + * + * @return a non negative value in case of success, or a negative + * value corresponding to an AVERROR code in case of error + */ +int avfilter_add_colorspace(AVFilterFormats *avff, enum PixelFormat pix_fmt); + +/** * Returns a list of all colorspaces supported by FFmpeg. */ AVFilterFormats *avfilter_all_colorspaces(void); diff --git a/libavfilter/formats.c b/libavfilter/formats.c index 8747bb6..0b03110 100644 --- a/libavfilter/formats.c +++ b/libavfilter/formats.c @@ -85,6 +85,19 @@ AVFilterFormats *avfilter_make_format_list(const enum PixelFormat *pix_fmts) return formats; } +int avfilter_add_colorspace(AVFilterFormats *avff, enum PixelFormat pix_fmt) +{ + enum PixelFormat *pix_fmts = + av_realloc(avff->formats, sizeof(avff->formats) * (avff->format_count+1)); + + if (!pix_fmts) + return AVERROR(ENOMEM); + + avff->formats = pix_fmts; + avff->formats[avff->format_count++] = pix_fmt; + return 0; +} + AVFilterFormats *avfilter_all_colorspaces(void) { AVFilterFormats *ret; |