From 4fd1f1876a69af1b3dc9cc039fad088943f498bb Mon Sep 17 00:00:00 2001
From: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Date: Sun, 3 Jan 2010 22:26:59 +0000
Subject: [PATCH] Implement avfilter_add_colorspace().

Originally committed as revision 21007 to svn://svn.ffmpeg.org/ffmpeg/trunk
---
 libavfilter/avfilter.h | 10 +++++++++-
 libavfilter/formats.c  | 13 +++++++++++++
 2 files changed, 22 insertions(+), 1 deletion(-)

diff --git a/libavfilter/avfilter.h b/libavfilter/avfilter.h
index dba73f8f4b0..8315a3bb18e 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, \
@@ -191,6 +191,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.
  */
diff --git a/libavfilter/formats.c b/libavfilter/formats.c
index 8747bb6fffb..0b0311087a3 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;
-- 
GitLab