summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--doc/APIchanges3
-rw-r--r--libavcodec/avcodec.h6
-rw-r--r--libavcodec/bsf.c10
-rw-r--r--libavcodec/version.h4
4 files changed, 21 insertions, 2 deletions
diff --git a/doc/APIchanges b/doc/APIchanges
index efe15ba..468cc12 100644
--- a/doc/APIchanges
+++ b/doc/APIchanges
@@ -15,6 +15,9 @@ libavutil: 2017-10-21
API changes, most recent first:
+2018-08-16 - xxxxxxxxxx - lavc 58.23.100 - avcodec.h
+ Add av_bsf_flush().
+
2018-05-xx - xxxxxxxxxx - lavf 58.15.100 - avformat.h
Add pmt_version field to AVProgram
diff --git a/libavcodec/avcodec.h b/libavcodec/avcodec.h
index 1266879..56be65b 100644
--- a/libavcodec/avcodec.h
+++ b/libavcodec/avcodec.h
@@ -5769,6 +5769,7 @@ typedef struct AVBitStreamFilter {
int (*init)(AVBSFContext *ctx);
int (*filter)(AVBSFContext *ctx, AVPacket *pkt);
void (*close)(AVBSFContext *ctx);
+ void (*flush)(AVBSFContext *ctx);
} AVBitStreamFilter;
#if FF_API_OLD_BSF
@@ -5896,6 +5897,11 @@ int av_bsf_send_packet(AVBSFContext *ctx, AVPacket *pkt);
int av_bsf_receive_packet(AVBSFContext *ctx, AVPacket *pkt);
/**
+ * Reset the internal bitstream filter state / flush internal buffers.
+ */
+void av_bsf_flush(AVBSFContext *ctx);
+
+/**
* Free a bitstream filter context and everything associated with it; write NULL
* into the supplied pointer.
*/
diff --git a/libavcodec/bsf.c b/libavcodec/bsf.c
index bd611ea..03841da 100644
--- a/libavcodec/bsf.c
+++ b/libavcodec/bsf.c
@@ -172,6 +172,16 @@ int av_bsf_init(AVBSFContext *ctx)
return 0;
}
+void av_bsf_flush(AVBSFContext *ctx)
+{
+ ctx->internal->eof = 0;
+
+ av_packet_unref(ctx->internal->buffer_pkt);
+
+ if (ctx->filter->flush)
+ ctx->filter->flush(ctx);
+}
+
int av_bsf_send_packet(AVBSFContext *ctx, AVPacket *pkt)
{
int ret;
diff --git a/libavcodec/version.h b/libavcodec/version.h
index 907c6fb..a91e5f0 100644
--- a/libavcodec/version.h
+++ b/libavcodec/version.h
@@ -28,8 +28,8 @@
#include "libavutil/version.h"
#define LIBAVCODEC_VERSION_MAJOR 58
-#define LIBAVCODEC_VERSION_MINOR 22
-#define LIBAVCODEC_VERSION_MICRO 101
+#define LIBAVCODEC_VERSION_MINOR 23
+#define LIBAVCODEC_VERSION_MICRO 100
#define LIBAVCODEC_VERSION_INT AV_VERSION_INT(LIBAVCODEC_VERSION_MAJOR, \
LIBAVCODEC_VERSION_MINOR, \
OpenPOWER on IntegriCloud