summaryrefslogtreecommitdiff
path: root/libavformat/img2enc.c
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2013-04-04 22:57:58 +0200
committerAnton Khirnov <anton@khirnov.net>2013-04-11 12:30:44 +0200
commit9e6b5e61a0c91e25e298d0a21b189c4c95443795 (patch)
treec3c777417919c3db65daf0a8c5be563796e09752 /libavformat/img2enc.c
parentac9362c5d985ca37d4debb4e0e12497d248ec9d1 (diff)
img2enc: add an option for overwriting one file with subsequent images
Based on a patch by Michael Niedermayer <michaelni@gmx.at>.
Diffstat (limited to 'libavformat/img2enc.c')
-rw-r--r--libavformat/img2enc.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/libavformat/img2enc.c b/libavformat/img2enc.c
index aed61d97f9..7b94869c56 100644
--- a/libavformat/img2enc.c
+++ b/libavformat/img2enc.c
@@ -33,6 +33,7 @@ typedef struct {
int img_number;
int is_pipe;
char path[1024];
+ int update;
} VideoMuxData;
static int write_header(AVFormatContext *s)
@@ -59,8 +60,10 @@ static int write_packet(AVFormatContext *s, AVPacket *pkt)
int i;
if (!img->is_pipe) {
- if (av_get_frame_filename(filename, sizeof(filename),
- img->path, img->img_number) < 0 && img->img_number > 1) {
+ if (img->update) {
+ av_strlcpy(filename, img->path, sizeof(filename));
+ } else if (av_get_frame_filename(filename, sizeof(filename), img->path, img->img_number) < 0 &&
+ img->img_number > 1) {
av_log(s, AV_LOG_ERROR,
"Could not get frame filename number %d from pattern '%s'\n",
img->img_number, img->path);
@@ -128,6 +131,7 @@ error:
#define ENC AV_OPT_FLAG_ENCODING_PARAM
static const AVOption muxoptions[] = {
{ "start_number", "first number in the sequence", OFFSET(img_number), AV_OPT_TYPE_INT, { .i64 = 1 }, 1, INT_MAX, ENC },
+ { "update", "continuously overwrite one file", OFFSET(update), AV_OPT_TYPE_INT, { .i64 = 0 }, 0, 1, ENC },
{ NULL },
};