[FFmpeg-cvslog] avio: introduce avio_closep
Luca Barbato
git at videolan.org
Thu Oct 11 14:08:56 CEST 2012
ffmpeg | branch: master | Luca Barbato <lu_zero at gentoo.org> | Wed Oct 10 01:39:06 2012 +0200| [b522000e9b2ca36fe5b2751096b9a5f5ed8f87e6] | committer: Luca Barbato
avio: introduce avio_closep
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b522000e9b2ca36fe5b2751096b9a5f5ed8f87e6
---
doc/APIchanges | 3 +++
libavformat/avio.h | 15 +++++++++++++++
libavformat/aviobuf.c | 7 +++++++
libavformat/version.h | 4 ++--
4 files changed, 27 insertions(+), 2 deletions(-)
diff --git a/doc/APIchanges b/doc/APIchanges
index 76475da..3e93354 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -13,6 +13,9 @@ libavutil: 2011-04-18
API changes, most recent first:
+2012-10-xx - xxxxxxx - lavf 54.18.0 - avio.h
+ Add avio_closep to complement avio_close.
+
2012-10-xx - xxxxxxx - lavu 51.42.0 - pixfmt.h
Rename PixelFormat to AVPixelFormat and all PIX_FMT_* to AV_PIX_FMT_*.
To provide backwards compatibility, PixelFormat is now #defined as
diff --git a/libavformat/avio.h b/libavformat/avio.h
index 96e8e1c..b6d3cb3 100644
--- a/libavformat/avio.h
+++ b/libavformat/avio.h
@@ -353,10 +353,25 @@ int avio_open2(AVIOContext **s, const char *url, int flags,
* resource.
*
* @return 0 on success, an AVERROR < 0 on error.
+ * @see avio_closep
*/
int avio_close(AVIOContext *s);
/**
+ * Close the resource accessed by the AVIOContext *s, free it
+ * and set the pointer pointing to it to NULL.
+ * This function can only be used if s was opened by avio_open().
+ *
+ * The internal buffer is automatically flushed before closing the
+ * resource.
+ *
+ * @return 0 on success, an AVERROR < 0 on error.
+ * @see avio_close
+ */
+int avio_closep(AVIOContext **s);
+
+
+/**
* Open a write only memory stream.
*
* @param s new IO context
diff --git a/libavformat/aviobuf.c b/libavformat/aviobuf.c
index 7dc66e2..da836c6 100644
--- a/libavformat/aviobuf.c
+++ b/libavformat/aviobuf.c
@@ -768,6 +768,13 @@ int avio_close(AVIOContext *s)
return ffurl_close(h);
}
+int avio_closep(AVIOContext **s)
+{
+ int ret = avio_close(*s);
+ *s = NULL;
+ return ret;
+}
+
int avio_printf(AVIOContext *s, const char *fmt, ...)
{
va_list ap;
diff --git a/libavformat/version.h b/libavformat/version.h
index 4a4cfe3..79dc7d1 100644
--- a/libavformat/version.h
+++ b/libavformat/version.h
@@ -30,8 +30,8 @@
#include "libavutil/avutil.h"
#define LIBAVFORMAT_VERSION_MAJOR 54
-#define LIBAVFORMAT_VERSION_MINOR 17
-#define LIBAVFORMAT_VERSION_MICRO 3
+#define LIBAVFORMAT_VERSION_MINOR 18
+#define LIBAVFORMAT_VERSION_MICRO 0
#define LIBAVFORMAT_VERSION_INT AV_VERSION_INT(LIBAVFORMAT_VERSION_MAJOR, \
LIBAVFORMAT_VERSION_MINOR, \
More information about the ffmpeg-cvslog
mailing list