[FFmpeg-cvslog] network: Use ff_neterrno instead of AVERROR(errno) for poll errors

2018-09-11 Thread Simon Thelen
ffmpeg | branch: master | Simon Thelen  | Sat Apr  8 
14:21:28 2017 +0200| [c194b9ad6dbe65f5abd68158c4811ed84e2a2b95] | committer: 
Martin Storsjö

network: Use ff_neterrno instead of AVERROR(errno) for poll errors

This makes sure to pick up the actual error codes on windows.

Signed-off-by: Martin Storsjö 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c194b9ad6dbe65f5abd68158c4811ed84e2a2b95
---

 libavformat/network.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavformat/network.c b/libavformat/network.c
index 86d79553f7..1e02668ecf 100644
--- a/libavformat/network.c
+++ b/libavformat/network.c
@@ -138,7 +138,7 @@ static int ff_poll_interrupt(struct pollfd *p, nfds_t nfds, 
int timeout,
 if (!ret)
 return AVERROR(ETIMEDOUT);
 if (ret < 0)
-return AVERROR(errno);
+return ff_neterrno();
 return ret;
 }
 

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] avcodec/imgconvert: fix possible null pointer dereference

2018-07-16 Thread Simon Thelen
ffmpeg | branch: release/3.3 | Simon Thelen  | Tue Apr  3 
14:41:33 2018 +0200| [28e0e494ee6499e7c37255e54453d791ff79ae54] | committer: 
Michael Niedermayer

avcodec/imgconvert: fix possible null pointer dereference

regression since 354b26a3945eadd4ed8fcd801dfefad2566241de

(cherry picked from commit 8c2c97403baf95d0facb53f03e468f023eb943e1)
(cherry picked from commit c1e172c2e14ef059dac632f7c67f081dfecd30dc)
Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=28e0e494ee6499e7c37255e54453d791ff79ae54
---

 libavcodec/imgconvert.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/libavcodec/imgconvert.c b/libavcodec/imgconvert.c
index 7b0005b308..1fd636c83d 100644
--- a/libavcodec/imgconvert.c
+++ b/libavcodec/imgconvert.c
@@ -72,11 +72,12 @@ enum AVPixelFormat avcodec_find_best_pix_fmt_of_list(const 
enum AVPixelFormat *p
 int loss;
 
 for (i=0; pix_fmt_list[i] != AV_PIX_FMT_NONE; i++) {
-loss = *loss_ptr;
+loss = loss_ptr ? *loss_ptr : 0;
 best = avcodec_find_best_pix_fmt_of_2(best, pix_fmt_list[i], 
src_pix_fmt, has_alpha, );
 }
 
-*loss_ptr = loss;
+if (loss_ptr)
+*loss_ptr = loss;
 return best;
 }
 

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] avcodec/imgconvert: fix possible null pointer dereference

2018-07-15 Thread Simon Thelen
ffmpeg | branch: release/2.8 | Simon Thelen  | Tue Apr  3 
14:41:33 2018 +0200| [03af6ab540ccf0987da27dab71cf65eb5aa6136d] | committer: 
Michael Niedermayer

avcodec/imgconvert: fix possible null pointer dereference

regression since 354b26a3945eadd4ed8fcd801dfefad2566241de

(cherry picked from commit 8c2c97403baf95d0facb53f03e468f023eb943e1)
(cherry picked from commit c1e172c2e14ef059dac632f7c67f081dfecd30dc)
Signed-off-by: Michael Niedermayer 

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=03af6ab540ccf0987da27dab71cf65eb5aa6136d
---

 libavcodec/imgconvert.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/libavcodec/imgconvert.c b/libavcodec/imgconvert.c
index 0abe6cdf48..2402718b1f 100644
--- a/libavcodec/imgconvert.c
+++ b/libavcodec/imgconvert.c
@@ -84,11 +84,12 @@ enum AVPixelFormat avcodec_find_best_pix_fmt_of_list(const 
enum AVPixelFormat *p
 int loss;
 
 for (i=0; pix_fmt_list[i] != AV_PIX_FMT_NONE; i++) {
-loss = *loss_ptr;
+loss = loss_ptr ? *loss_ptr : 0;
 best = avcodec_find_best_pix_fmt_of_2(best, pix_fmt_list[i], 
src_pix_fmt, has_alpha, );
 }
 
-*loss_ptr = loss;
+if (loss_ptr)
+*loss_ptr = loss;
 return best;
 }
 

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] avcodec/imgconvert: fix possible null pointer dereference

2018-07-15 Thread Simon Thelen
ffmpeg | branch: release/3.2 | Simon Thelen  | Tue Apr  3 
14:41:33 2018 +0200| [c773ce32e1f0213117cb12534289c65954d26455] | committer: 
Jan Ekström

avcodec/imgconvert: fix possible null pointer dereference

regression since 354b26a3945eadd4ed8fcd801dfefad2566241de

(cherry picked from commit 8c2c97403baf95d0facb53f03e468f023eb943e1)

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c773ce32e1f0213117cb12534289c65954d26455
---

 libavcodec/imgconvert.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/libavcodec/imgconvert.c b/libavcodec/imgconvert.c
index 7b0005b308..1fd636c83d 100644
--- a/libavcodec/imgconvert.c
+++ b/libavcodec/imgconvert.c
@@ -72,11 +72,12 @@ enum AVPixelFormat avcodec_find_best_pix_fmt_of_list(const 
enum AVPixelFormat *p
 int loss;
 
 for (i=0; pix_fmt_list[i] != AV_PIX_FMT_NONE; i++) {
-loss = *loss_ptr;
+loss = loss_ptr ? *loss_ptr : 0;
 best = avcodec_find_best_pix_fmt_of_2(best, pix_fmt_list[i], 
src_pix_fmt, has_alpha, );
 }
 
-*loss_ptr = loss;
+if (loss_ptr)
+*loss_ptr = loss;
 return best;
 }
 

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] avcodec/imgconvert: fix possible null pointer dereference

2018-07-15 Thread Simon Thelen
ffmpeg | branch: release/3.4 | Simon Thelen  | Tue Apr  3 
14:41:33 2018 +0200| [c1e172c2e14ef059dac632f7c67f081dfecd30dc] | committer: 
Jan Ekström

avcodec/imgconvert: fix possible null pointer dereference

regression since 354b26a3945eadd4ed8fcd801dfefad2566241de

(cherry picked from commit 8c2c97403baf95d0facb53f03e468f023eb943e1)

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c1e172c2e14ef059dac632f7c67f081dfecd30dc
---

 libavcodec/imgconvert.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/libavcodec/imgconvert.c b/libavcodec/imgconvert.c
index 7b0005b308..1fd636c83d 100644
--- a/libavcodec/imgconvert.c
+++ b/libavcodec/imgconvert.c
@@ -72,11 +72,12 @@ enum AVPixelFormat avcodec_find_best_pix_fmt_of_list(const 
enum AVPixelFormat *p
 int loss;
 
 for (i=0; pix_fmt_list[i] != AV_PIX_FMT_NONE; i++) {
-loss = *loss_ptr;
+loss = loss_ptr ? *loss_ptr : 0;
 best = avcodec_find_best_pix_fmt_of_2(best, pix_fmt_list[i], 
src_pix_fmt, has_alpha, );
 }
 
-*loss_ptr = loss;
+if (loss_ptr)
+*loss_ptr = loss;
 return best;
 }
 

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] avcodec/imgconvert: fix possible null pointer dereference

2018-04-03 Thread Simon Thelen
ffmpeg | branch: master | Simon Thelen <ffmpeg-...@c-14.de> | Tue Apr  3 
14:41:33 2018 +0200| [8c2c97403baf95d0facb53f03e468f023eb943e1] | committer: 
Paul B Mahol

avcodec/imgconvert: fix possible null pointer dereference

regression since 354b26a3945eadd4ed8fcd801dfefad2566241de

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=8c2c97403baf95d0facb53f03e468f023eb943e1
---

 libavcodec/imgconvert.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/libavcodec/imgconvert.c b/libavcodec/imgconvert.c
index 7b0005b308..1fd636c83d 100644
--- a/libavcodec/imgconvert.c
+++ b/libavcodec/imgconvert.c
@@ -72,11 +72,12 @@ enum AVPixelFormat avcodec_find_best_pix_fmt_of_list(const 
enum AVPixelFormat *p
 int loss;
 
 for (i=0; pix_fmt_list[i] != AV_PIX_FMT_NONE; i++) {
-loss = *loss_ptr;
+loss = loss_ptr ? *loss_ptr : 0;
 best = avcodec_find_best_pix_fmt_of_2(best, pix_fmt_list[i], 
src_pix_fmt, has_alpha, );
 }
 
-*loss_ptr = loss;
+if (loss_ptr)
+*loss_ptr = loss;
 return best;
 }
 

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] libavformat/tcp: fix return code for tcp_accept

2017-05-10 Thread Simon Thelen
ffmpeg | branch: master | Simon Thelen <ffmpeg-...@c-14.de> | Sat Apr  8 
14:21:28 2017 +0200| [54b6bef6e13adf377c78c28ede22a4322ab28865] | committer: 
Michael Niedermayer

libavformat/tcp: fix return code for tcp_accept

ff_accept can return AVERROR(ETIMEDOUT) and errno will be 0 (or
undefined), return ret instead and return ff_neterror() in
ff_poll_interrupt instead of AVERROR(errno) to parse WSAGetLastError on
Windows.

Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=54b6bef6e13adf377c78c28ede22a4322ab28865
---

 libavformat/network.c | 2 +-
 libavformat/tcp.c | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/libavformat/network.c b/libavformat/network.c
index 2fb1c8b02a..b3987a4d11 100644
--- a/libavformat/network.c
+++ b/libavformat/network.c
@@ -159,7 +159,7 @@ static int ff_poll_interrupt(struct pollfd *p, nfds_t nfds, 
int timeout,
 if (!ret)
 return AVERROR(ETIMEDOUT);
 if (ret < 0)
-return AVERROR(errno);
+return ff_neterrno();
 return ret;
 }
 
diff --git a/libavformat/tcp.c b/libavformat/tcp.c
index 3055e48015..07b4ed9fa3 100644
--- a/libavformat/tcp.c
+++ b/libavformat/tcp.c
@@ -204,7 +204,7 @@ static int tcp_accept(URLContext *s, URLContext **c)
 cc = (*c)->priv_data;
 ret = ff_accept(sc->fd, sc->listen_timeout, s);
 if (ret < 0)
-return ff_neterrno();
+return ret;
 cc->fd = ret;
 return 0;
 }

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] doc/ffmpeg: add documentation for the disposition option

2016-11-13 Thread Simon Thelen
ffmpeg | branch: master | Simon Thelen <ffmpeg-...@c-14.de> | Fri Nov 11 
01:27:12 2016 +0100| [cd5da01daab7813f8215b1215cfe4cfcdc7a1ab4] | committer: 
Michael Niedermayer

doc/ffmpeg: add documentation for the disposition option

Signed-off-by: Simon Thelen <ffmpeg-...@c-14.de>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=cd5da01daab7813f8215b1215cfe4cfcdc7a1ab4
---

 doc/ffmpeg.texi | 34 ++
 1 file changed, 34 insertions(+)

diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
index fd8a0c1..4b159fd 100644
--- a/doc/ffmpeg.texi
+++ b/doc/ffmpeg.texi
@@ -357,6 +357,40 @@ To set the language of the first audio stream:
 ffmpeg -i INPUT -metadata:s:a:0 language=eng OUTPUT
 @end example
 
+@item -disposition[:stream_specifier] @var{value} (@emph{output,per-stream})
+Sets the disposition for a stream.
+
+This option overrides the disposition copied from the input stream. It is also
+possible to delete the disposition by setting it to 0.
+
+The following dispositions are recognized:
+@table @option
+@item default
+@item dub
+@item original
+@item comment
+@item lyrics
+@item karaoke
+@item forced
+@item hearing_impaired
+@item visual_impaired
+@item clean_effects
+@item captions
+@item descriptions
+@item metadata
+@end table
+
+For example, to make the second audio stream the default stream:
+@example
+ffmpeg -i in.mkv -disposition:a:1 default out.mkv
+@end example
+
+To make the second subtitle stream the default stream and remove the default
+disposition from the first subtitle stream:
+@example
+ffmpeg -i INPUT -disposition:s:0 0 -disposition:s:1 default OUTPUT
+@end example
+
 @item -program 
[title=@var{title}:][program_num=@var{program_num}:]st=@var{stream}[:st=@var{stream}...]
 (@emph{output})
 
 Creates a program with the specified @var{title}, @var{program_num} and adds 
the specified

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


Re: [FFmpeg-cvslog] Merge commit '81306fd4bdeb5c17d4db771e4fec684773b5790f'

2016-03-13 Thread Simon Thelen
On 16-02-16 at 17:27, Derek Buitenhuis wrote:
> ffmpeg | branch: master | Derek Buitenhuis <derek.buitenh...@gmail.com> | Tue 
> Feb 16 16:26:49 2016 +| [d0fc5de3a643fe7f974ed14e410c2ac2f4147d7e] | 
> committer: Derek Buitenhuis
> 
> Merge commit '81306fd4bdeb5c17d4db771e4fec684773b5790f'
> 
> * commit '81306fd4bdeb5c17d4db771e4fec684773b5790f':
>   hls: eliminate ffurl_* usage
> 
> Merged-by: Derek Buitenhuis <derek.buitenh...@gmail.com>
> 
> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d0fc5de3a643fe7f974ed14e410c2ac2f4147d7e
> ---
At least this change in hls.c seems to be incorrect, it breaks setting
the user-agent option for hls. Initially the correct user agent is used
when querying the hls, but when refreshing the playlist the user agent
is reset to Lavf/57.25.100. Reverting this specific hunk seems to fix
the issue. I assume the other changed call to update_options in open_url
is also broken, but didn't test.

diff --git a/libavformat/hls.c b/libavformat/hls.c
index fc1ff38..762e140 100644 (file)
--- a/libavformat/hls.c
+++ b/libavformat/hls.c
@@ -1513,7 +1486,7 @@ static int save_avio_options(AVFormatContext *s)

 static int hls_read_header(AVFormatContext *s)
 {
-URLContext *u = (s->flags & AVFMT_FLAG_CUSTOM_IO) ? NULL : s->pb->opaque;
+void *u = (s->flags & AVFMT_FLAG_CUSTOM_IO) ? NULL : s->pb->opaque;
 HLSContext *c = s->priv_data;
 int ret = 0, i, j, stream_offset = 0;
 
@@ -1525,19 +1498,18 @@ static int hls_read_header(AVFormatContext *s)
 c->first_timestamp = AV_NOPTS_VALUE;
 c->cur_timestamp = AV_NOPTS_VALUE;
 
-// if the URL context is good, read important options we must broker later
-if (u && u->prot->priv_data_class) {
+if (u) {
 // get the previous user agent & set back to null if string size is 
zero
-update_options(>user_agent, "user-agent", u->priv_data);
+update_options(>user_agent, "user-agent", u);
 
 // get the previous cookies & set back to null if string size is zero
-update_options(>cookies, "cookies", u->priv_data);
+update_options(>cookies, "cookies", u);
 
 // get the previous headers & set back to null if string size is zero
-update_options(>headers, "headers", u->priv_data);
+update_options(>headers, "headers", u);
 
 // get the previous http proxt & set back to null if string size is 
zero
-update_options(>http_proxy, "http_proxy", u->priv_data);
+update_options(>http_proxy, "http_proxy", u);
 }
-- 
Simon Thelen
___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] fate: add limited_input_seek tests

2015-12-07 Thread Simon Thelen
ffmpeg | branch: master | Simon Thelen <ffmpeg-...@c-14.de> | Sun Dec  6 
05:00:54 2015 +0100| [6596c6fca7e8d94cca1eec21c692c8dd83aaf9cd] | committer: 
Michael Niedermayer

fate: add limited_input_seek tests

Signed-off-by: Simon Thelen <ffmpeg-...@c-14.de>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=6596c6fca7e8d94cca1eec21c692c8dd83aaf9cd
---

 tests/fate/ffmpeg.mak|6 ++
 tests/ref/fate/limited_input_seek|1 +
 tests/ref/fate/limited_input_seek-copyts |1 +
 3 files changed, 8 insertions(+)

diff --git a/tests/fate/ffmpeg.mak b/tests/fate/ffmpeg.mak
index 551d8e7..2061cd7 100644
--- a/tests/fate/ffmpeg.mak
+++ b/tests/fate/ffmpeg.mak
@@ -46,3 +46,9 @@ fate-unknown_layout-ac3: $(AREF)
 fate-unknown_layout-ac3: CMD = md5 \
   -guess_layout_max 0 -f s16le -ac 1 -ar 44100 -i $(TARGET_PATH)/$(AREF) \
   -f ac3 -flags +bitexact -c ac3_fixed
+
+FATE_SAMPLES_FFMPEG-$(call DEMMUX, OGG, OGG) += fate-limited_input_seek 
fate-limited_input_seek-copyts
+fate-limited_input_seek: $(TARGET_SAMPLES)/vorbis/moog_small.ogg
+fate-limited_input_seek: CMD = md5 -ss 1.5 -t 1.3 -i 
$(TARGET_SAMPLES)/vorbis/moog_small.ogg -c:a copy -fflags +bitexact -f ogg
+fate-limited_input_seek-copyts: $(TARGET_SAMPLES)/vorbis/moog_small.ogg
+fate-limited_input_seek-copyts: CMD = md5 -ss 1.5 -t 1.3 -i 
$(TARGET_SAMPLES)/vorbis/moog_small.ogg -c:a copy -copyts -fflags +bitexact -f 
ogg
diff --git a/tests/ref/fate/limited_input_seek 
b/tests/ref/fate/limited_input_seek
new file mode 100644
index 000..e0c4bf1
--- /dev/null
+++ b/tests/ref/fate/limited_input_seek
@@ -0,0 +1 @@
+20a1bb9a1cfb23c1fe86f14e6065cd95
diff --git a/tests/ref/fate/limited_input_seek-copyts 
b/tests/ref/fate/limited_input_seek-copyts
new file mode 100644
index 000..92790a8
--- /dev/null
+++ b/tests/ref/fate/limited_input_seek-copyts
@@ -0,0 +1 @@
+ec3604b1954ed80de364b8ef491771ce

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] lavf/webvttenc: Require webvtt file to contain exactly one WebVTT stream.

2015-12-06 Thread Simon Thelen
ffmpeg | branch: release/2.4 | Simon Thelen <ffmpeg-...@c-14.de> | Fri Sep 11 
21:49:07 2015 +0200| [c6769b6d56bea1548a1c0167fdc322991bd46e50] | committer: 
Michael Niedermayer

lavf/webvttenc: Require webvtt file to contain exactly one WebVTT stream.

Not requiring this can end up producing hilariously broken files
together with -c:s copy (e.g. a webvtt file containing binary subtitle data).

Signed-off-by: Simon Thelen <ffmpeg-...@c-14.de>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>
(cherry picked from commit b84232694ef0c6897e82b52326c9ea4027c69ec4)

Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c6769b6d56bea1548a1c0167fdc322991bd46e50
---

 libavformat/webvttenc.c |6 ++
 1 file changed, 6 insertions(+)

diff --git a/libavformat/webvttenc.c b/libavformat/webvttenc.c
index b93993d..c386538 100644
--- a/libavformat/webvttenc.c
+++ b/libavformat/webvttenc.c
@@ -46,8 +46,14 @@ static void webvtt_write_time(AVIOContext *pb, int64_t 
millisec)
 static int webvtt_write_header(AVFormatContext *ctx)
 {
 AVStream *s = ctx->streams[0];
+AVCodecContext *avctx = ctx->streams[0]->codec;
 AVIOContext *pb = ctx->pb;
 
+if (ctx->nb_streams != 1 || avctx->codec_id != AV_CODEC_ID_WEBVTT) {
+av_log(ctx, AV_LOG_ERROR, "Exactly one WebVTT stream is needed.\n");
+return AVERROR(EINVAL);
+}
+
 avpriv_set_pts_info(s, 64, 1, 1000);
 
 avio_printf(pb, "WEBVTT\n");

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] ffmpeg: When streamcopying, only add the input seek position when copying timestamps.

2015-12-04 Thread Simon Thelen
ffmpeg | branch: master | Simon Thelen <ffmpeg-...@c-14.de> | Sun Nov 22 
15:03:17 2015 +0100| [5b6c0fdb4316ef71ef151e8b0f9137fe64877589] | committer: 
Michael Niedermayer

ffmpeg: When streamcopying, only add the input seek position when copying 
timestamps.

Using -ss as an input option shifts timestamps down by the seek, so it
doesn't have to be added to the recording time when checking whether to
stop.

Fixes #977

Signed-off-by: Simon Thelen <ffmpeg-...@c-14.de>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=5b6c0fdb4316ef71ef151e8b0f9137fe64877589
---

 ffmpeg.c |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/ffmpeg.c b/ffmpeg.c
index 82d9a6c..a866f72 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -1831,7 +1831,7 @@ static void do_streamcopy(InputStream *ist, OutputStream 
*ost, const AVPacket *p
 
 if (f->recording_time != INT64_MAX) {
 start_time = f->ctx->start_time;
-if (f->start_time != AV_NOPTS_VALUE)
+if (f->start_time != AV_NOPTS_VALUE && copy_ts)
 start_time += f->start_time;
 if (ist->pts >= f->recording_time + start_time) {
 close_output_stream(ost);

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] lavf/webvttenc: Require webvtt file to contain exactly one WebVTT stream.

2015-11-26 Thread Simon Thelen
ffmpeg | branch: release/2.5 | Simon Thelen <ffmpeg-...@c-14.de> | Fri Sep 11 
21:49:07 2015 +0200| [89b7e5cb2a8adff452ad2f10243d5940e6444995] | committer: 
Michael Niedermayer

lavf/webvttenc: Require webvtt file to contain exactly one WebVTT stream.

Not requiring this can end up producing hilariously broken files
together with -c:s copy (e.g. a webvtt file containing binary subtitle data).

Signed-off-by: Simon Thelen <ffmpeg-...@c-14.de>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>
(cherry picked from commit b84232694ef0c6897e82b52326c9ea4027c69ec4)

Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=89b7e5cb2a8adff452ad2f10243d5940e6444995
---

 libavformat/webvttenc.c |6 ++
 1 file changed, 6 insertions(+)

diff --git a/libavformat/webvttenc.c b/libavformat/webvttenc.c
index b93993d..c386538 100644
--- a/libavformat/webvttenc.c
+++ b/libavformat/webvttenc.c
@@ -46,8 +46,14 @@ static void webvtt_write_time(AVIOContext *pb, int64_t 
millisec)
 static int webvtt_write_header(AVFormatContext *ctx)
 {
 AVStream *s = ctx->streams[0];
+AVCodecContext *avctx = ctx->streams[0]->codec;
 AVIOContext *pb = ctx->pb;
 
+if (ctx->nb_streams != 1 || avctx->codec_id != AV_CODEC_ID_WEBVTT) {
+av_log(ctx, AV_LOG_ERROR, "Exactly one WebVTT stream is needed.\n");
+return AVERROR(EINVAL);
+}
+
 avpriv_set_pts_info(s, 64, 1, 1000);
 
 avio_printf(pb, "WEBVTT\n");

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] ffmpeg: Don' t try and write sdp info if none of the outputs had an rtp format.

2015-11-19 Thread Simon Thelen
ffmpeg | branch: release/2.6 | Simon Thelen <ffmpeg-...@c-14.de> | Mon Nov  2 
16:36:16 2015 +0100| [c3467bbc5250c5b9f35a5e174dcbbdb2eac50706] | committer: 
Michael Niedermayer

ffmpeg: Don't try and write sdp info if none of the outputs had an rtp format.

Fixes a segfault when trying to write nonexistent rtp information.

Signed-off-by: Simon Thelen <ffmpeg-...@c-14.de>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>
(cherry picked from commit 70fb5eadc580a82c4b977a1233d70ad0041faba0)

Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=c3467bbc5250c5b9f35a5e174dcbbdb2eac50706
---

 ffmpeg.c |4 
 1 file changed, 4 insertions(+)

diff --git a/ffmpeg.c b/ffmpeg.c
index b0cf429..8fb26c2 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -2337,6 +2337,9 @@ static void print_sdp(void)
 }
 }
 
+if (!j)
+goto fail;
+
 av_sdp_create(avc, j, sdp, sizeof(sdp));
 
 if (!sdp_filename) {
@@ -2352,6 +2355,7 @@ static void print_sdp(void)
 }
 }
 
+fail:
 av_freep();
 }
 

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] doc/ffmpeg: Clarify that the sdp_file option requires an rtp output.

2015-11-19 Thread Simon Thelen
ffmpeg | branch: release/2.6 | Simon Thelen <ffmpeg-...@c-14.de> | Mon Nov  2 
15:57:50 2015 +0100| [d9bff0843f67cf271b8dd9a3b5fadd27660aeb94] | committer: 
Michael Niedermayer

doc/ffmpeg: Clarify that the sdp_file option requires an rtp output.

Signed-off-by: Simon Thelen <ffmpeg-...@c-14.de>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>
(cherry picked from commit b02201efb531348406e48f9252bd39a6acebd2b7)

Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d9bff0843f67cf271b8dd9a3b5fadd27660aeb94
---

 doc/ffmpeg.texi |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
index 6772f2f..e154e8b 100644
--- a/doc/ffmpeg.texi
+++ b/doc/ffmpeg.texi
@@ -1175,9 +1175,9 @@ The option is intended for cases where features are 
needed that cannot be
 specified to @command{ffserver} but can be to @command{ffmpeg}.
 
 @item -sdp_file @var{file} (@emph{global})
-Print sdp information to @var{file}.
+Print sdp information for an output stream to @var{file}.
 This allows dumping sdp information when at least one output isn't an
-rtp stream.
+rtp stream. (Requires at least one of the output formats to be rtp).
 
 @item -discard (@emph{input})
 Allows discarding specific streams or frames of streams at the demuxer.

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] lavf/webvttenc: Require webvtt file to contain exactly one WebVTT stream.

2015-11-19 Thread Simon Thelen
ffmpeg | branch: release/2.6 | Simon Thelen <ffmpeg-...@c-14.de> | Fri Sep 11 
21:49:07 2015 +0200| [b096f160957bbb598a0fa00947b98393f3158e23] | committer: 
Michael Niedermayer

lavf/webvttenc: Require webvtt file to contain exactly one WebVTT stream.

Not requiring this can end up producing hilariously broken files
together with -c:s copy (e.g. a webvtt file containing binary subtitle data).

Signed-off-by: Simon Thelen <ffmpeg-...@c-14.de>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>
(cherry picked from commit b84232694ef0c6897e82b52326c9ea4027c69ec4)

Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b096f160957bbb598a0fa00947b98393f3158e23
---

 libavformat/webvttenc.c |6 ++
 1 file changed, 6 insertions(+)

diff --git a/libavformat/webvttenc.c b/libavformat/webvttenc.c
index b93993d..c386538 100644
--- a/libavformat/webvttenc.c
+++ b/libavformat/webvttenc.c
@@ -46,8 +46,14 @@ static void webvtt_write_time(AVIOContext *pb, int64_t 
millisec)
 static int webvtt_write_header(AVFormatContext *ctx)
 {
 AVStream *s = ctx->streams[0];
+AVCodecContext *avctx = ctx->streams[0]->codec;
 AVIOContext *pb = ctx->pb;
 
+if (ctx->nb_streams != 1 || avctx->codec_id != AV_CODEC_ID_WEBVTT) {
+av_log(ctx, AV_LOG_ERROR, "Exactly one WebVTT stream is needed.\n");
+return AVERROR(EINVAL);
+}
+
 avpriv_set_pts_info(s, 64, 1, 1000);
 
 avio_printf(pb, "WEBVTT\n");

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] lavf/webvttenc: Require webvtt file to contain exactly one WebVTT stream.

2015-11-11 Thread Simon Thelen
ffmpeg | branch: release/2.7 | Simon Thelen <ffmpeg-...@c-14.de> | Fri Sep 11 
21:49:07 2015 +0200| [d1de4923305b326990ace91f3a56c2916cda1037] | committer: 
Michael Niedermayer

lavf/webvttenc: Require webvtt file to contain exactly one WebVTT stream.

Not requiring this can end up producing hilariously broken files
together with -c:s copy (e.g. a webvtt file containing binary subtitle data).

Signed-off-by: Simon Thelen <ffmpeg-...@c-14.de>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>
(cherry picked from commit b84232694ef0c6897e82b52326c9ea4027c69ec4)

Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d1de4923305b326990ace91f3a56c2916cda1037
---

 libavformat/webvttenc.c |6 ++
 1 file changed, 6 insertions(+)

diff --git a/libavformat/webvttenc.c b/libavformat/webvttenc.c
index b93993d..c386538 100644
--- a/libavformat/webvttenc.c
+++ b/libavformat/webvttenc.c
@@ -46,8 +46,14 @@ static void webvtt_write_time(AVIOContext *pb, int64_t 
millisec)
 static int webvtt_write_header(AVFormatContext *ctx)
 {
 AVStream *s = ctx->streams[0];
+AVCodecContext *avctx = ctx->streams[0]->codec;
 AVIOContext *pb = ctx->pb;
 
+if (ctx->nb_streams != 1 || avctx->codec_id != AV_CODEC_ID_WEBVTT) {
+av_log(ctx, AV_LOG_ERROR, "Exactly one WebVTT stream is needed.\n");
+return AVERROR(EINVAL);
+}
+
 avpriv_set_pts_info(s, 64, 1, 1000);
 
 avio_printf(pb, "WEBVTT\n");

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] ffmpeg: Don' t try and write sdp info if none of the outputs had an rtp format.

2015-11-11 Thread Simon Thelen
ffmpeg | branch: release/2.7 | Simon Thelen <ffmpeg-...@c-14.de> | Mon Nov  2 
16:36:16 2015 +0100| [b9a3e0af07bc09e1c5db28bf90505e1d7a76daa6] | committer: 
Michael Niedermayer

ffmpeg: Don't try and write sdp info if none of the outputs had an rtp format.

Fixes a segfault when trying to write nonexistent rtp information.

Signed-off-by: Simon Thelen <ffmpeg-...@c-14.de>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>
(cherry picked from commit 70fb5eadc580a82c4b977a1233d70ad0041faba0)

Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b9a3e0af07bc09e1c5db28bf90505e1d7a76daa6
---

 ffmpeg.c |4 
 1 file changed, 4 insertions(+)

diff --git a/ffmpeg.c b/ffmpeg.c
index 8bf0aa8..b65ee71 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -2370,6 +2370,9 @@ static void print_sdp(void)
 }
 }
 
+if (!j)
+goto fail;
+
 av_sdp_create(avc, j, sdp, sizeof(sdp));
 
 if (!sdp_filename) {
@@ -2385,6 +2388,7 @@ static void print_sdp(void)
 }
 }
 
+fail:
 av_freep();
 }
 

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] doc/ffmpeg: Clarify that the sdp_file option requires an rtp output.

2015-11-11 Thread Simon Thelen
ffmpeg | branch: release/2.7 | Simon Thelen <ffmpeg-...@c-14.de> | Mon Nov  2 
15:57:50 2015 +0100| [ae270314c7f4e9fabc9166bb5f5dfcba03304703] | committer: 
Michael Niedermayer

doc/ffmpeg: Clarify that the sdp_file option requires an rtp output.

Signed-off-by: Simon Thelen <ffmpeg-...@c-14.de>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>
(cherry picked from commit b02201efb531348406e48f9252bd39a6acebd2b7)

Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ae270314c7f4e9fabc9166bb5f5dfcba03304703
---

 doc/ffmpeg.texi |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
index 1078ea1..5ff8798 100644
--- a/doc/ffmpeg.texi
+++ b/doc/ffmpeg.texi
@@ -1193,9 +1193,9 @@ The option is intended for cases where features are 
needed that cannot be
 specified to @command{ffserver} but can be to @command{ffmpeg}.
 
 @item -sdp_file @var{file} (@emph{global})
-Print sdp information to @var{file}.
+Print sdp information for an output stream to @var{file}.
 This allows dumping sdp information when at least one output isn't an
-rtp stream.
+rtp stream. (Requires at least one of the output formats to be rtp).
 
 @item -discard (@emph{input})
 Allows discarding specific streams or frames of streams at the demuxer.

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] ffmpeg: Don' t try and write sdp info if none of the outputs had an rtp format.

2015-11-10 Thread Simon Thelen
ffmpeg | branch: release/2.8 | Simon Thelen <ffmpeg-...@c-14.de> | Mon Nov  2 
16:36:16 2015 +0100| [dac3598563ad14704efc40f52acb1eb3b294835d] | committer: 
Michael Niedermayer

ffmpeg: Don't try and write sdp info if none of the outputs had an rtp format.

Fixes a segfault when trying to write nonexistent rtp information.

Signed-off-by: Simon Thelen <ffmpeg-...@c-14.de>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>
(cherry picked from commit 70fb5eadc580a82c4b977a1233d70ad0041faba0)

Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=dac3598563ad14704efc40f52acb1eb3b294835d
---

 ffmpeg.c |4 
 1 file changed, 4 insertions(+)

diff --git a/ffmpeg.c b/ffmpeg.c
index 2b3085a..ce54374 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -2447,6 +2447,9 @@ static void print_sdp(void)
 }
 }
 
+if (!j)
+goto fail;
+
 av_sdp_create(avc, j, sdp, sizeof(sdp));
 
 if (!sdp_filename) {
@@ -2462,6 +2465,7 @@ static void print_sdp(void)
 }
 }
 
+fail:
 av_freep();
 }
 

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] doc/ffmpeg: Clarify that the sdp_file option requires an rtp output.

2015-11-10 Thread Simon Thelen
ffmpeg | branch: release/2.8 | Simon Thelen <ffmpeg-...@c-14.de> | Mon Nov  2 
15:57:50 2015 +0100| [e5a2f5e74d09f7ac2233d4c2cdb0adf6745ba017] | committer: 
Michael Niedermayer

doc/ffmpeg: Clarify that the sdp_file option requires an rtp output.

Signed-off-by: Simon Thelen <ffmpeg-...@c-14.de>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>
(cherry picked from commit b02201efb531348406e48f9252bd39a6acebd2b7)

Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e5a2f5e74d09f7ac2233d4c2cdb0adf6745ba017
---

 doc/ffmpeg.texi |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
index f4ffc6c..0695f15 100644
--- a/doc/ffmpeg.texi
+++ b/doc/ffmpeg.texi
@@ -1205,9 +1205,9 @@ The option is intended for cases where features are 
needed that cannot be
 specified to @command{ffserver} but can be to @command{ffmpeg}.
 
 @item -sdp_file @var{file} (@emph{global})
-Print sdp information to @var{file}.
+Print sdp information for an output stream to @var{file}.
 This allows dumping sdp information when at least one output isn't an
-rtp stream.
+rtp stream. (Requires at least one of the output formats to be rtp).
 
 @item -discard (@emph{input})
 Allows discarding specific streams or frames of streams at the demuxer.

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] doc/ffmpeg: Clarify that the sdp_file option requires an rtp output.

2015-11-09 Thread Simon Thelen
ffmpeg | branch: master | Simon Thelen <ffmpeg-...@c-14.de> | Mon Nov  2 
15:57:50 2015 +0100| [b02201efb531348406e48f9252bd39a6acebd2b7] | committer: 
Michael Niedermayer

doc/ffmpeg: Clarify that the sdp_file option requires an rtp output.

Signed-off-by: Simon Thelen <ffmpeg-...@c-14.de>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b02201efb531348406e48f9252bd39a6acebd2b7
---

 doc/ffmpeg.texi |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/doc/ffmpeg.texi b/doc/ffmpeg.texi
index 08b1ed2..cf74734 100644
--- a/doc/ffmpeg.texi
+++ b/doc/ffmpeg.texi
@@ -1233,9 +1233,9 @@ The option is intended for cases where features are 
needed that cannot be
 specified to @command{ffserver} but can be to @command{ffmpeg}.
 
 @item -sdp_file @var{file} (@emph{global})
-Print sdp information to @var{file}.
+Print sdp information for an output stream to @var{file}.
 This allows dumping sdp information when at least one output isn't an
-rtp stream.
+rtp stream. (Requires at least one of the output formats to be rtp).
 
 @item -discard (@emph{input})
 Allows discarding specific streams or frames of streams at the demuxer.

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] lavf/webvttenc: Require webvtt file to contain exactly one WebVTT stream.

2015-10-08 Thread Simon Thelen
ffmpeg | branch: release/2.8 | Simon Thelen <ffmpeg-...@c-14.de> | Fri Sep 11 
21:49:07 2015 +0200| [9bbcd1cc7b19be80e59619a443edead333b8efb9] | committer: 
Michael Niedermayer

lavf/webvttenc: Require webvtt file to contain exactly one WebVTT stream.

Not requiring this can end up producing hilariously broken files
together with -c:s copy (e.g. a webvtt file containing binary subtitle data).

Signed-off-by: Simon Thelen <ffmpeg-...@c-14.de>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>
(cherry picked from commit b84232694ef0c6897e82b52326c9ea4027c69ec4)

Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=9bbcd1cc7b19be80e59619a443edead333b8efb9
---

 libavformat/webvttenc.c |6 ++
 1 file changed, 6 insertions(+)

diff --git a/libavformat/webvttenc.c b/libavformat/webvttenc.c
index b93993d..c386538 100644
--- a/libavformat/webvttenc.c
+++ b/libavformat/webvttenc.c
@@ -46,8 +46,14 @@ static void webvtt_write_time(AVIOContext *pb, int64_t 
millisec)
 static int webvtt_write_header(AVFormatContext *ctx)
 {
 AVStream *s = ctx->streams[0];
+AVCodecContext *avctx = ctx->streams[0]->codec;
 AVIOContext *pb = ctx->pb;
 
+if (ctx->nb_streams != 1 || avctx->codec_id != AV_CODEC_ID_WEBVTT) {
+av_log(ctx, AV_LOG_ERROR, "Exactly one WebVTT stream is needed.\n");
+return AVERROR(EINVAL);
+}
+
 avpriv_set_pts_info(s, 64, 1, 1000);
 
 avio_printf(pb, "WEBVTT\n");

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] lavf/webvttenc: Require webvtt file to contain exactly one WebVTT stream.

2015-09-11 Thread Simon Thelen
ffmpeg | branch: master | Simon Thelen <ffmpeg-...@c-14.de> | Fri Sep 11 
21:49:07 2015 +0200| [b84232694ef0c6897e82b52326c9ea4027c69ec4] | committer: 
Michael Niedermayer

lavf/webvttenc: Require webvtt file to contain exactly one WebVTT stream.

Not requiring this can end up producing hilariously broken files
together with -c:s copy (e.g. a webvtt file containing binary subtitle data).

Signed-off-by: Simon Thelen <ffmpeg-...@c-14.de>
Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc>

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b84232694ef0c6897e82b52326c9ea4027c69ec4
---

 libavformat/webvttenc.c |6 ++
 1 file changed, 6 insertions(+)

diff --git a/libavformat/webvttenc.c b/libavformat/webvttenc.c
index b93993d..c386538 100644
--- a/libavformat/webvttenc.c
+++ b/libavformat/webvttenc.c
@@ -46,8 +46,14 @@ static void webvtt_write_time(AVIOContext *pb, int64_t 
millisec)
 static int webvtt_write_header(AVFormatContext *ctx)
 {
 AVStream *s = ctx->streams[0];
+AVCodecContext *avctx = ctx->streams[0]->codec;
 AVIOContext *pb = ctx->pb;
 
+if (ctx->nb_streams != 1 || avctx->codec_id != AV_CODEC_ID_WEBVTT) {
+av_log(ctx, AV_LOG_ERROR, "Exactly one WebVTT stream is needed.\n");
+return AVERROR(EINVAL);
+}
+
 avpriv_set_pts_info(s, 64, 1, 1000);
 
 avio_printf(pb, "WEBVTT\n");

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] libavutil/channel_layout: Correctly return layout when channel specification ends with a trailing ' c'.

2015-08-20 Thread Simon Thelen
ffmpeg | branch: release/2.4 | Simon Thelen ffmpeg-...@c-14.de | Tue Jun  9 
04:55:57 2015 +0200| [d7682421528f76cd0b64fbe649f9501e61e5ec59] | committer: 
Michael Niedermayer

libavutil/channel_layout: Correctly return layout when channel specification 
ends with a trailing 'c'.

Return layout when FF_API_GET_CHANNEL_LAYOUT_COMPAT is set even if the
layout itself is not in the deprecated style.

Signed-off-by: Simon Thelen ffmpeg-...@c-14.de
Signed-off-by: Michael Niedermayer michae...@gmx.at
(cherry picked from commit 83307a32eb0c9f0843f655c44bb65e3e999153f8)

Signed-off-by: Michael Niedermayer michae...@gmx.at

 http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d7682421528f76cd0b64fbe649f9501e61e5ec59
---

 libavutil/channel_layout.c |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavutil/channel_layout.c b/libavutil/channel_layout.c
index 4c0677f..cd5cf42 100644
--- a/libavutil/channel_layout.c
+++ b/libavutil/channel_layout.c
@@ -138,8 +138,8 @@ static uint64_t get_channel_layout_single(const char *name, 
int name_len)
switch to the syntax '%.*sc' otherwise it will be 
interpreted as a 
channel layout number in a later version\n,
name_len, name, name_len, name);
-return layout;
 }
+return layout;
 }
 } else {
 #endif

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] libavutil/channel_layout: Correctly return layout when channel specification ends with a trailing ' c'.

2015-07-27 Thread Simon Thelen
ffmpeg | branch: release/2.5 | Simon Thelen ffmpeg-...@c-14.de | Tue Jun  9 
04:55:57 2015 +0200| [fb22fc0c46bb4bee48cdcdf43c8cb1d18aa04e20] | committer: 
Michael Niedermayer

libavutil/channel_layout: Correctly return layout when channel specification 
ends with a trailing 'c'.

Return layout when FF_API_GET_CHANNEL_LAYOUT_COMPAT is set even if the
layout itself is not in the deprecated style.

Signed-off-by: Simon Thelen ffmpeg-...@c-14.de
Signed-off-by: Michael Niedermayer michae...@gmx.at
(cherry picked from commit 83307a32eb0c9f0843f655c44bb65e3e999153f8)

Signed-off-by: Michael Niedermayer michae...@gmx.at

 http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=fb22fc0c46bb4bee48cdcdf43c8cb1d18aa04e20
---

 libavutil/channel_layout.c |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavutil/channel_layout.c b/libavutil/channel_layout.c
index 4c0677f..cd5cf42 100644
--- a/libavutil/channel_layout.c
+++ b/libavutil/channel_layout.c
@@ -138,8 +138,8 @@ static uint64_t get_channel_layout_single(const char *name, 
int name_len)
switch to the syntax '%.*sc' otherwise it will be 
interpreted as a 
channel layout number in a later version\n,
name_len, name, name_len, name);
-return layout;
 }
+return layout;
 }
 } else {
 #endif

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] libavutil/channel_layout: Correctly return layout when channel specification ends with a trailing ' c'.

2015-07-20 Thread Simon Thelen
ffmpeg | branch: release/2.6 | Simon Thelen ffmpeg-...@c-14.de | Tue Jun  9 
04:55:57 2015 +0200| [3c7e41df27e264f4952cda66dbd0a4618021d8c2] | committer: 
Michael Niedermayer

libavutil/channel_layout: Correctly return layout when channel specification 
ends with a trailing 'c'.

Return layout when FF_API_GET_CHANNEL_LAYOUT_COMPAT is set even if the
layout itself is not in the deprecated style.

Signed-off-by: Simon Thelen ffmpeg-...@c-14.de
Signed-off-by: Michael Niedermayer michae...@gmx.at
(cherry picked from commit 83307a32eb0c9f0843f655c44bb65e3e999153f8)

Signed-off-by: Michael Niedermayer michae...@gmx.at

 http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=3c7e41df27e264f4952cda66dbd0a4618021d8c2
---

 libavutil/channel_layout.c |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavutil/channel_layout.c b/libavutil/channel_layout.c
index 4c0677f..cd5cf42 100644
--- a/libavutil/channel_layout.c
+++ b/libavutil/channel_layout.c
@@ -138,8 +138,8 @@ static uint64_t get_channel_layout_single(const char *name, 
int name_len)
switch to the syntax '%.*sc' otherwise it will be 
interpreted as a 
channel layout number in a later version\n,
name_len, name, name_len, name);
-return layout;
 }
+return layout;
 }
 } else {
 #endif

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] libavfilter/formats: Fix parsing of channel specifications with a trailing 'c'.

2015-06-20 Thread Simon Thelen
ffmpeg | branch: master | Simon Thelen ffmpeg-...@c-14.de | Sat Jun 20 
18:52:50 2015 +0200| [7cbb52ecab90206eccb8cb629019d3a7816769f0] | committer: 
Michael Niedermayer

libavfilter/formats: Fix parsing of channel specifications with a trailing 'c'.

Signed-off-by: Michael Niedermayer michae...@gmx.at

 http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=7cbb52ecab90206eccb8cb629019d3a7816769f0
---

 libavfilter/formats.c |   17 +++--
 tests/ref/fate/filter-formats |   10 +-
 2 files changed, 12 insertions(+), 15 deletions(-)

diff --git a/libavfilter/formats.c b/libavfilter/formats.c
index 2451bf7..8758b3d 100644
--- a/libavfilter/formats.c
+++ b/libavfilter/formats.c
@@ -637,23 +637,20 @@ int ff_parse_channel_layout(int64_t *ret, int *nret, 
const char *arg,
 void *log_ctx)
 {
 char *tail;
-int64_t chlayout, count;
+int64_t chlayout;
 
-if (nret) {
-count = strtol(arg, tail, 10);
-if (*tail == 'c'  !tail[1]  count  0  count  63) {
-*nret = count;
-*ret = 0;
-return 0;
-}
-}
 chlayout = av_get_channel_layout(arg);
 if (chlayout == 0) {
 chlayout = strtol(arg, tail, 10);
-if (*tail || chlayout == 0) {
+if (!(*tail == '\0' || *tail == 'c'  *(tail + 1) == '\0') || 
chlayout = 0 || chlayout  63) {
 av_log(log_ctx, AV_LOG_ERROR, Invalid channel layout '%s'\n, 
arg);
 return AVERROR(EINVAL);
 }
+if (nret) {
+*nret = chlayout;
+*ret = 0;
+return 0;
+}
 }
 *ret = chlayout;
 if (nret)
diff --git a/tests/ref/fate/filter-formats b/tests/ref/fate/filter-formats
index 0e21416..b0377e0 100644
--- a/tests/ref/fate/filter-formats
+++ b/tests/ref/fate/filter-formats
@@ -69,11 +69,11 @@ quad(side)
 -1 = ff_parse_channel_layout(, -1, blah);
 0 = ff_parse_channel_layout(0004,  1, 1);
 0 = ff_parse_channel_layout(0003,  2, 2);
-0 = ff_parse_channel_layout(, 64, -1);
-0 = ff_parse_channel_layout(003C,  4, 60);
-0 = ff_parse_channel_layout(0041,  2, 65);
-0 = ff_parse_channel_layout(,  1, 1c);
-0 = ff_parse_channel_layout(,  2, 2c);
+-1 = ff_parse_channel_layout(, -1, -1);
+0 = ff_parse_channel_layout(, 60, 60);
+-1 = ff_parse_channel_layout(, -1, 65);
+0 = ff_parse_channel_layout(0004,  1, 1c);
+0 = ff_parse_channel_layout(0003,  2, 2c);
 -1 = ff_parse_channel_layout(, -1, -1c);
 0 = ff_parse_channel_layout(, 60, 60c);
 -1 = ff_parse_channel_layout(, -1, 65c);

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] libavutil/channel_layout: Correctly return layout when channel specification ends with a trailing ' c'.

2015-06-17 Thread Simon Thelen
ffmpeg | branch: release/2.2 | Simon Thelen ffmpeg-...@c-14.de | Tue Jun  9 
04:55:57 2015 +0200| [b2d7a0840534b54dab3ecb2e0e498505353e8c01] | committer: 
Michael Niedermayer

libavutil/channel_layout: Correctly return layout when channel specification 
ends with a trailing 'c'.

Return layout when FF_API_GET_CHANNEL_LAYOUT_COMPAT is set even if the
layout itself is not in the deprecated style.

Signed-off-by: Simon Thelen ffmpeg-...@c-14.de
Signed-off-by: Michael Niedermayer michae...@gmx.at
(cherry picked from commit 83307a32eb0c9f0843f655c44bb65e3e999153f8)

Signed-off-by: Michael Niedermayer michae...@gmx.at

 http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=b2d7a0840534b54dab3ecb2e0e498505353e8c01
---

 libavutil/channel_layout.c |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavutil/channel_layout.c b/libavutil/channel_layout.c
index 4c0677f..cd5cf42 100644
--- a/libavutil/channel_layout.c
+++ b/libavutil/channel_layout.c
@@ -138,8 +138,8 @@ static uint64_t get_channel_layout_single(const char *name, 
int name_len)
switch to the syntax '%.*sc' otherwise it will be 
interpreted as a 
channel layout number in a later version\n,
name_len, name, name_len, name);
-return layout;
 }
+return layout;
 }
 } else {
 #endif

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] libavutil/channel_layout: Correctly return layout when channel specification ends with a trailing ' c'.

2015-06-09 Thread Simon Thelen
ffmpeg | branch: master | Simon Thelen ffmpeg-...@c-14.de | Tue Jun  9 
04:55:57 2015 +0200| [83307a32eb0c9f0843f655c44bb65e3e999153f8] | committer: 
Michael Niedermayer

libavutil/channel_layout: Correctly return layout when channel specification 
ends with a trailing 'c'.

Return layout when FF_API_GET_CHANNEL_LAYOUT_COMPAT is set even if the
layout itself is not in the deprecated style.

Signed-off-by: Simon Thelen ffmpeg-...@c-14.de
Signed-off-by: Michael Niedermayer michae...@gmx.at

 http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=83307a32eb0c9f0843f655c44bb65e3e999153f8
---

 libavutil/channel_layout.c |2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libavutil/channel_layout.c b/libavutil/channel_layout.c
index 4c0677f..cd5cf42 100644
--- a/libavutil/channel_layout.c
+++ b/libavutil/channel_layout.c
@@ -138,8 +138,8 @@ static uint64_t get_channel_layout_single(const char *name, 
int name_len)
switch to the syntax '%.*sc' otherwise it will be 
interpreted as a 
channel layout number in a later version\n,
name_len, name, name_len, name);
-return layout;
 }
+return layout;
 }
 } else {
 #endif

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] configure: add pkg-config support for libdcadec

2015-04-16 Thread Simon Thelen
ffmpeg | branch: master | Simon Thelen ffmpeg-...@c-14.de | Wed Apr 15 
17:18:58 2015 +0200| [ed2a712750c3342e399a44f9c5c2bd278128c759] | committer: 
Michael Niedermayer

configure: add pkg-config support for libdcadec

Signed-off-by: Simon Thelen ffmpeg-...@c-14.de
Signed-off-by: Michael Niedermayer michae...@gmx.at

 http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ed2a712750c3342e399a44f9c5c2bd278128c759
---

 configure |3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/configure b/configure
index 389de92..1d98828 100755
--- a/configure
+++ b/configure
@@ -5012,7 +5012,8 @@ enabled libceltrequire libcelt celt/celt.h 
celt_decode -lcelt0 
  { check_lib celt/celt.h 
celt_decoder_create_custom -lcelt0 ||
die ERROR: libcelt must be installed and 
version must be = 0.11.0.; }
 enabled libcacarequire_pkg_config caca caca.h caca_create_canvas
-enabled libdcadec  require libdcadec libdcadec/dca_context.h 
dcadec_context_create -ldcadec
+enabled libdcadec  { use_pkg_config dcadec libdcadec/dca_context.h 
dcadec_context_create ||
+   { require libdcadec libdcadec/dca_context.h 
dcadec_context_create -ldcadec; }; }
 enabled libfaacrequire2 libfaac stdint.h faac.h 
faacEncGetVersion -lfaac
 enabled libfdk_aac require libfdk_aac fdk-aac/aacenc_lib.h 
aacEncOpen -lfdk-aac
 flite_libs=-lflite_cmu_time_awb -lflite_cmu_us_awb -lflite_cmu_us_kal 
-lflite_cmu_us_kal16 -lflite_cmu_us_rms -lflite_cmu_us_slt -lflite_usenglish 
-lflite_cmulex -lflite

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] ffmpeg: add sdp_file option

2014-12-27 Thread Simon Thelen
ffmpeg | branch: master | Simon Thelen ffmpeg-...@c-14.de | Thu Dec 25 
22:56:06 2014 +0100| [cc63da1223da2ccd758d3aab815ad230d74f1a5d] | committer: 
Michael Niedermayer

ffmpeg: add sdp_file option

Allow printing of sdp information to a file specified by -sdp_file
This allows users to print sdp information when at least one of the
outputs isn't an rtp stream.

Signed-off-by: Simon Thelen ffmpeg-...@c-14.de
Signed-off-by: Michael Niedermayer michae...@gmx.at

 http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=cc63da1223da2ccd758d3aab815ad230d74f1a5d
---

 ffmpeg.c |   30 --
 ffmpeg.h |1 +
 ffmpeg_opt.c |   10 ++
 3 files changed, 35 insertions(+), 6 deletions(-)

diff --git a/ffmpeg.c b/ffmpeg.c
index 9f29eac..46ea57b 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -2270,16 +2270,34 @@ static void print_sdp(void)
 {
 char sdp[16384];
 int i;
+int j;
+AVIOContext *sdp_pb;
 AVFormatContext **avc = av_malloc_array(nb_output_files, sizeof(*avc));
 
 if (!avc)
 exit_program(1);
-for (i = 0; i  nb_output_files; i++)
-avc[i] = output_files[i]-ctx;
+for (i = 0, j = 0; i  nb_output_files; i++) {
+if (!strcmp(output_files[i]-ctx-oformat-name, rtp)) {
+avc[j] = output_files[i]-ctx;
+j++;
+}
+}
+
+av_sdp_create(avc, j, sdp, sizeof(sdp));
+
+if (!sdp_filename) {
+printf(SDP:\n%s\n, sdp);
+fflush(stdout);
+} else {
+if (avio_open2(sdp_pb, sdp_filename, AVIO_FLAG_WRITE, int_cb, NULL) 
 0) {
+av_log(NULL, AV_LOG_ERROR, Failed to open sdp file '%s'\n, 
sdp_filename);
+} else {
+avio_printf(sdp_pb, SDP:\n%s, sdp);
+avio_close(sdp_pb);
+av_free(sdp_filename);
+}
+}
 
-av_sdp_create(avc, nb_output_files, sdp, sizeof(sdp));
-printf(SDP:\n%s\n, sdp);
-fflush(stdout);
 av_freep(avc);
 }
 
@@ -3122,7 +3140,7 @@ static int transcode_init(void)
 return ret;
 }
 
-if (want_sdp) {
+if (sdp_filename || want_sdp) {
 print_sdp();
 }
 
diff --git a/ffmpeg.h b/ffmpeg.h
index 117a35c..0ad1e37 100644
--- a/ffmpeg.h
+++ b/ffmpeg.h
@@ -470,6 +470,7 @@ extern FilterGraph **filtergraphs;
 extern intnb_filtergraphs;
 
 extern char *vstats_filename;
+extern char *sdp_filename;
 
 extern float audio_drift_threshold;
 extern float dts_delta_threshold;
diff --git a/ffmpeg_opt.c b/ffmpeg_opt.c
index ae05bf0..ac93eb5 100644
--- a/ffmpeg_opt.c
+++ b/ffmpeg_opt.c
@@ -77,6 +77,7 @@ const HWAccel hwaccels[] = {
 };
 
 char *vstats_filename;
+char *sdp_filename;
 
 float audio_drift_threshold = 0.1;
 float dts_delta_threshold   = 10;
@@ -381,6 +382,13 @@ static int opt_map_channel(void *optctx, const char *opt, 
const char *arg)
 return 0;
 }
 
+static int opt_sdp_file(void *optctx, const char *opt, const char *arg)
+{
+av_free(sdp_filename);
+sdp_filename = av_strdup(arg);
+return 0;
+}
+
 /**
  * Parse a metadata specifier passed as 'arg' parameter.
  * @param arg  metadata string to parse
@@ -3070,6 +3078,8 @@ const OptionDef options[] = {
 set the initial demux-decode delay, seconds },
 { override_ffserver, OPT_BOOL | OPT_EXPERT | OPT_OUTPUT, { 
override_ffserver },
 override the options from ffserver,  },
+{ sdp_file, HAS_ARG | OPT_EXPERT | OPT_OUTPUT, { opt_sdp_file },
+specify a file in which to print sdp information, file },
 
 { bsf, HAS_ARG | OPT_STRING | OPT_SPEC | OPT_EXPERT | OPT_OUTPUT, { .off 
= OFFSET(bitstream_filters) },
 A comma-separated list of bitstream filters, bitstream_filters },

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] doc/filters: use '|' instead of ':' in the documentation.

2014-11-18 Thread Simon Thelen
ffmpeg | branch: master | Simon Thelen ffmpeg-...@c-14.de | Tue Nov 18 
13:29:27 2014 +0100| [43c1d82b86b2c05061862b4e9f4a64ec1c8a6975] | committer: 
Michael Niedermayer

doc/filters: use '|' instead of ':' in the documentation.

Using colons to separate the outdefs is deprecated. Switch to using '|'
to separate the list items.

Signed-off-by: Simon Thelen ffmpeg-...@c-14.de
Signed-off-by: Michael Niedermayer michae...@gmx.at

 http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=43c1d82b86b2c05061862b4e9f4a64ec1c8a6975
---

 doc/filters.texi |   16 
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/doc/filters.texi b/doc/filters.texi
index 53f4cb2..8c16c7a 100644
--- a/doc/filters.texi
+++ b/doc/filters.texi
@@ -1710,11 +1710,11 @@ The default is 0.707q and gives a Butterworth response.
 Mix channels with specific gain levels. The filter accepts the output
 channel layout followed by a set of channels definitions.
 
-This filter is also designed to remap efficiently the channels of an audio
+This filter is also designed to efficiently remap the channels of an audio
 stream.
 
 The filter accepts parameters of the form:
-@var{l}:@var{outdef}:@var{outdef}:...
+@var{l}|@var{outdef}|@var{outdef}|...
 
 @table @option
 @item l
@@ -1745,13 +1745,13 @@ avoiding clipping noise.
 For example, if you want to down-mix from stereo to mono, but with a bigger
 factor for the left channel:
 @example
-pan=1:c0=0.9*c0+0.1*c1
+pan=1c|c0=0.9*c0+0.1*c1
 @end example
 
 A customized down-mix to stereo that works automatically for 3-, 4-, 5- and
 7-channels surround:
 @example
-pan=stereo: FL  FL + 0.5*FC + 0.6*BL + 0.6*SL : FR  FR + 0.5*FC + 0.6*BR + 
0.6*SR
+pan=stereo| FL  FL + 0.5*FC + 0.6*BL + 0.6*SL | FR  FR + 0.5*FC + 0.6*BR + 
0.6*SR
 @end example
 
 Note that @command{ffmpeg} integrates a default down-mix (and up-mix) system
@@ -1774,25 +1774,25 @@ remapping.
 For example, if you have a 5.1 source and want a stereo audio stream by
 dropping the extra channels:
 @example
-pan=stereo: c0=FL : c1=FR
+pan=stereo| c0=FL | c1=FR
 @end example
 
 Given the same source, you can also switch front left and front right channels
 and keep the input channel layout:
 @example
-pan=5.1: c0=c1 : c1=c0 : c2=c2 : c3=c3 : c4=c4 : c5=c5
+pan=5.1| c0=c1 | c1=c0 | c2=c2 | c3=c3 | c4=c4 | c5=c5
 @end example
 
 If the input is a stereo audio stream, you can mute the front left channel (and
 still keep the stereo channel layout) with:
 @example
-pan=stereo:c1=c1
+pan=stereo|c1=c1
 @end example
 
 Still with a stereo audio stream input, you can copy the right channel in both
 front left and right:
 @example
-pan=stereo: c0=FR : c1=FR
+pan=stereo| c0=FR | c1=FR
 @end example
 
 @section replaygain

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog


[FFmpeg-cvslog] ffmpeg_opt: abort if -to = -ss

2014-10-11 Thread Simon Thelen
ffmpeg | branch: master | Simon Thelen ffmpeg-...@c-14.de | Fri Oct 10 
23:04:01 2014 +0200| [8c4ca4aa5aa998e31337e30ff30ebf48f534acc2] | committer: 
Michael Niedermayer

ffmpeg_opt: abort if -to = -ss

Makes ffmpeg abort instead of continuing when stop_time = start_time.

Closes ticket #4015.

Signed-off-by: Simon Thelen ffmpeg-...@c-14.de
Signed-off-by: Michael Niedermayer michae...@gmx.at

 http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=8c4ca4aa5aa998e31337e30ff30ebf48f534acc2
---

 ffmpeg_opt.c |4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/ffmpeg_opt.c b/ffmpeg_opt.c
index 10aaa3a..c518ae1 100644
--- a/ffmpeg_opt.c
+++ b/ffmpeg_opt.c
@@ -1732,8 +1732,8 @@ static int open_output_file(OptionsContext *o, const char 
*filename)
 if (o-stop_time != INT64_MAX  o-recording_time == INT64_MAX) {
 int64_t start_time = o-start_time == AV_NOPTS_VALUE ? 0 : 
o-start_time;
 if (o-stop_time = start_time) {
-av_log(NULL, AV_LOG_WARNING, -to value smaller than -ss; ignoring 
-to.\n);
-o-stop_time = INT64_MAX;
+av_log(NULL, AV_LOG_ERROR, -to value smaller than -ss; 
aborting.\n);
+exit_program(1);
 } else {
 o-recording_time = o-stop_time - start_time;
 }

___
ffmpeg-cvslog mailing list
ffmpeg-cvslog@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog