2610acb49a
avformat/concatdec: use av_strstart()
...
Fixes: out array read
Fixes: 26610/clusterfuzz-testcase-minimized-ffmpeg_dem_CONCAT_fuzzer-5631838049271808
Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg
Reviewed-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com >
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2020-11-03 00:46:59 +01:00
be22f97332
avformat/concatdec: Avoid duplicating buffer when adding side-data
...
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com >
2020-05-28 12:01:22 +02:00
6a67d518d6
avformat: Remove unnecessary av_packet_unref()
...
Since bae8844e
the packet will always be unreferenced when a demuxer
returns an error, so that a lot of calls to av_packet_unref() in lots of
demuxers are now redundant and can be removed.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com >
Signed-off-by: Marton Balint <cus@passwd.hu >
2020-02-10 22:41:38 +01:00
82d61a9ce3
avformat: Don't free old extradata before ff_alloc/get_extradata
...
These functions already free it themselves before they allocate the new
extradata.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com >
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2019-12-12 19:25:33 +01:00
4d8875ec23
lavf: Constify the probe function argument.
...
Reviewed-by: Lauri Kasanen
Reviewed-by: Tomas Härdin
2019-03-21 11:42:17 +01:00
1b126ec408
avformat/concatdec: always re-calculate start time and duration
...
This allows the underlying files to change their duration on subsequent
avformat context opens.
An example use case where this matters:
ffconcat version 1.0
file dummy.mxf
file dummy.mxf
ffmpeg -re -stream_loop -1 -i dummy.ffconcat -f sdl2 none
The user can seamlessly change the input by atomically replacing dummy.mxf.
v2: Set ConcatFile duration in read_header for all segments with known
durations because from now on we always recalculate the start time in
open_file, and an instant seek could have caused unset ConcatFile durations.
Signed-off-by: Marton Balint <cus@passwd.hu >
2019-01-22 20:14:11 +01:00
679cbd8f18
avformat/concatdec: fix cur_dts based duration calculation with nonzero stream start_time
...
Signed-off-by: Marton Balint <cus@passwd.hu >
2019-01-22 20:14:11 +01:00
0a98622cbe
avformat/concatdec: factorize the duration calculating function
...
Signed-off-by: Marton Balint <cus@passwd.hu >
2019-01-22 20:14:11 +01:00
7f42276aa9
avformat/concatdec: always allow seeking to start
...
Signed-off-by: Marton Balint <cus@passwd.hu >
2018-12-30 21:06:19 +01:00
37d472a906
avformat/concatdec: only set output stream index before returning packet
...
Fixes ticket #6434 .
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Marton Balint <cus@passwd.hu >
2018-04-02 20:41:53 +02:00
ffabff1baa
avformat/concatdec: add support for very long line sizes
...
Fixes ticket #6761 .
Signed-off-by: Marton Balint <cus@passwd.hu >
2018-02-24 20:21:35 +01:00
18ac642359
avformat: migrate to AVFormatContext->url
...
Signed-off-by: Marton Balint <cus@passwd.hu >
2018-01-28 23:06:43 +01:00
e45f7bca73
lavf/concatdec: properly init streams timestamp parameters.
...
pts_wrap_bits defaults to 33 (like MPEG), that causes valid
timestamps to be unwrapped and become invalid.
Inspired by a patch by Wu Zhiqiang <mymoeyard@gmail.com >.
2017-12-31 10:33:24 +01:00
1a0d9b503d
avformat/concatdec: add fallback for calculating file duration
...
If a file does not have a known duration, this leads to the timestamps
starting over for the next file, causing non-monotonic timestamps.
To prevent this, track the duration during demuxing and use it to
determine the current file duration before opening the next file.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com >
2017-08-31 15:33:52 +01:00
99c68861f9
concatdec: Do not pass NULL to memcmp
...
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com >
2017-07-06 15:35:32 -04:00
0dcac9c3f0
lavf/concatdec: do not transfer custom IO flag
...
If the source is using a custom IO, setting this flag causes heavy leaks
since the segments will not have their avio context closed.
Regression since f5da453b06
.
2017-05-22 16:55:30 +02:00
14e092448f
avformat/concatdec: port to the new bitstream filter API
...
Reviewed-by: wm4 <nfxjfg@googlemail.com >
Reviewed-by: Aaron Levinson <alevinsn@aracnet.com >
Signed-off-by: James Almer <jamrial@gmail.com >
2017-05-03 19:59:49 -03:00
b4330a0e02
avformat/concatdec: fix the h264 annexb extradata check
...
The start code can be either in the first three or four bytes.
2017-04-25 20:23:12 -03:00
f5da453b06
concatdec: pass AVFormatContext flags to sub demuxer
2017-03-09 16:24:00 +01:00
2366efce3c
avformat/concatdec: don't call open_file when seek position within a file
2016-09-28 20:31:22 +02:00
0cb19c30c6
lavf/concatdec: clear extradata when inserting h264_mp4toannexb bsf.
...
Fix remuxing H.264-in-MP4 to Matroska, possibly others.
2016-04-26 16:58:59 +02:00
b8fa374fb6
lavf/concatdec: remove unrelated change during codecpar merge.
...
Clearing the extradata is not related to the codecpar change,
and it breaks if auto_convert is disabled.
Fix trac ticket #5461 .
2016-04-26 16:58:59 +02:00
901b0f1a21
avformat/concatdec: Use correct stream count on close
2016-04-11 21:06:10 +02:00
6f69f7a8bf
Merge commit '9200514ad8717c63f82101dc394f4378854325bf'
...
* commit '9200514ad8717c63f82101dc394f4378854325bf':
lavf: replace AVStream.codec with AVStream.codecpar
This has been a HUGE effort from:
- Derek Buitenhuis <derek.buitenhuis@gmail.com >
- Hendrik Leppkes <h.leppkes@gmail.com >
- wm4 <nfxjfg@googlemail.com >
- Clément Bœsch <clement@stupeflix.com >
- James Almer <jamrial@gmail.com >
- Michael Niedermayer <michael@niedermayer.cc >
- Rostislav Pehlivanov <atomnuker@gmail.com >
Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com >
2016-04-10 20:59:55 +01:00
689211d572
avformat/concatdec: set safe mode to enabled instead of auto
...
This is safer, as a selected demuxer could still mean that it was auto-detected
by a user application
Reviewed-previously-by: Nicolas George <george@nsup.org >
Reviewed-previously-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com >
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2016-03-10 02:54:59 +01:00
93629735d7
avformat: Add a protocol blacklisting API
...
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com >
2016-03-04 16:13:42 +00:00
fdb2d4b108
lavf/concatdec: do not access packet if av_read_frame returned error
...
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Marton Balint <cus@passwd.hu >
2016-01-10 14:13:16 +01:00
43ecec0f03
avformat: use AV_OPT_TYPE_BOOL in a bunch of places
2015-12-04 15:43:33 +01:00
65406b0bed
concatdec: add option for adding segment start time and duration metadata
...
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Marton Balint <cus@passwd.hu >
2015-11-25 00:34:29 +01:00
ba9191ab3a
concatdec: simplify duration calculation in open_next_file
...
If duration is still AV_NOPTS_VALUE when opening the next file, we can assume
that outpoint is not set.
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Marton Balint <cus@passwd.hu >
2015-11-25 00:34:29 +01:00
8f60663c8b
concatdec: calculate duration early if outpoint is known
...
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Marton Balint <cus@passwd.hu >
2015-11-25 00:34:29 +01:00
c2f861ca42
Replace remaining occurances of av_free_packet with av_packet_unref
2015-10-27 14:35:30 +01:00
df239b7619
concatdec: fix file_start_time calculation regression
...
Fixes ticket #4924 .
Found-by: Jaroslav Šnajdr <jsnajdr@gmail.com >
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Marton Balint <cus@passwd.hu >
2015-10-17 18:38:52 +02:00
80b6cc4214
concatdec: fix metadata memleak on error
...
Fixes Coverity CID 1323077.
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Marton Balint <cus@passwd.hu >
2015-10-05 00:16:12 +02:00
9f6ca28e32
avformat/concatdec: Check file variable before dereferencing
...
Fixes CID1322328
Reviewed-by: Ganesh Ajjanagadde <gajjanag@mit.edu >
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc >
2015-09-03 18:53:44 +02:00
0860016529
concatdec: fix broken file_inpoint calculation
...
Should fix ticket #4765 .
Signed-off-by: Marton Balint <cus@passwd.hu >
2015-08-11 11:19:17 +02:00
5117b5e9aa
concatdec: add support for injecting packet metadata
...
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Marton Balint <cus@passwd.hu >
2015-07-17 00:12:04 +02:00
25a6711c25
concatdec: add support for specifying outpoint of files
...
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Marton Balint <cus@passwd.hu >
2015-07-17 00:12:04 +02:00
12d82004c5
concatdec: store eof condition in context
...
This is needed later for outpoint support which may leave the last file in a
not-eof state.
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Marton Balint <cus@passwd.hu >
2015-07-17 00:12:04 +02:00
7ff0137a1f
concatdec: add support for specifying inpoint of files
...
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Marton Balint <cus@passwd.hu >
2015-07-17 00:12:04 +02:00
db64af6395
avformat/concatdec: copy stream metadata when using concat
...
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-07-01 14:43:31 +02:00
3331213e2a
avformat/concatdec: Enable auto_convert by default
...
Users have no means to find out from a failure how to make it work
or is it preferred to check and print a warning for h264 concat without auto_convert ?
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-05-29 12:19:47 +02:00
038f3a173f
avformat/concatdec: avoid NULL dereference when failed to open file.
...
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-01-29 14:25:04 +01:00
acbc2ed26a
lavf/concatdec: handle NOPTS start_time.
...
Fix trac ticket #3598 .
Signed-off-by: Nicolas George <george@nsup.org >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-12-15 20:00:35 +01:00
484d42a097
lavf/concatdec: add timestamp log
...
Help debugging timestamp conversion issues.
2014-11-19 11:17:43 +01:00
4641ae352e
avformat: Add and use ff_copy_whitelists()
...
Fixes potential security issue in case of running out of memory
Found-by: ubitux
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-10-24 19:23:23 +02:00
5ea0753a15
avformat/concatdec: Forward whitelists to the subdemuxers.
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-10-23 18:19:37 +02:00
3294fc8c47
avformat/concatdec: fix "warning: explicitly assigning a variable of type int to itself"
...
Reviewed-by: Nicolas George <george@nsup.org >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-09-10 11:48:39 +02:00
50ed6e3ce6
lavf/concatdec: implement automatic conversions.
2014-04-29 13:25:59 +02:00
9d24a536a3
lavf/concatdec: reindent after last commit.
2014-04-29 13:25:59 +02:00