Michael Niedermayer
60ec3007e6
avformat/nutdec: Check ff_gen_search() for failure
...
Fixes assertion failure
Found-by: durandal_1707
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-07-01 14:28:41 +02:00
Andreas Cadhalpun
6b9fdf7f4f
nutdec: check maxpos in read_sm_data before returning success
...
Otherwise sm_size can be larger than size, which results in a negative
packet size.
Reviewed-by: Michael Niedermayer <michaelni@gmx.at >
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com >
2015-06-27 19:22:27 +02:00
Andreas Cadhalpun
ed4932a694
nutdec: fix various memleaks on failure
...
Reviewed-by: Michael Niedermayer <michaelni@gmx.at >
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com >
2015-05-23 17:42:35 +02:00
Andreas Cadhalpun
0b79a389ba
nutdec: always check the get_str return value
...
If it fails, the buffers can be (partially) uninitialized.
This fixes 'Conditional jump or move depends on uninitialised value(s)'
valgrind warnings.
Reviewed-by: Michael Niedermayer <michaelni@gmx.at >
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com >
2015-05-23 10:36:44 +02:00
Michael Niedermayer
ebb0ca3d70
avformat/nutdec: Check X in 2nd branch of index reading
...
Prevents read of uninitialized variable
Based on patch by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-05-23 00:23:05 +02:00
Andreas Cadhalpun
bb23a15df5
nutdec: abort if EOF is reached in decode_info_header/read_sm_data
...
These loops can take a lot of time if count is very large.
Reviewed-by: Michael Niedermayer <michaelni@gmx.at >
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com >
2015-05-20 20:43:54 +02:00
Andreas Cadhalpun
fa7dec8cb0
nutdec: stop skipping bytes at EOF
...
This can unnecessarily waste a lot of time.
Reviewed-by: Michael Niedermayer <michaelni@gmx.at >
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com >
2015-05-20 19:07:26 +02:00
Andreas Cadhalpun
37e679881d
nutdec: fix infinite resync loops
...
nut->last_syncpoint_pos doesn't necessarily change between resync
attempts, so find_any_startcode can return the same startcode again.
Thus remember where the last resync happened and don't try to resync
before that.
This can't be done locally in nut_read_packet, because this wouldn't
prevent infinite resync loops, where after the resync a packet is
returned and while reading a following packet the resync happens again.
Reviewed-by: Michael Niedermayer <michaelni@gmx.at >
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com >
2015-05-20 19:07:26 +02:00
Michael Niedermayer
b3496b4a33
avformat/nutdec: Fix recovery when immedeately after seeking a failure happens
...
Found-by: Andreas Cadhalpun <andreas.cadhalpun@googlemail.com >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-05-20 17:48:28 +02:00
Michael Niedermayer
6bbb2f8f4d
avformat/nutdec: Return error on EOF from get_str()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-05-20 17:20:58 +02:00
Michael Niedermayer
88f29406b7
avformat/nutdec: Remove unused variable
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-05-14 02:23:08 +02:00
Timothy Gu
eaeb632198
nutdec: Remove unused label
...
Added in 361702660d
. Modified version that
doesn't use this label merged in 55231323b0
,
thus obsoleting this label.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-05-14 02:08:12 +02:00
Michael Niedermayer
56abf35151
avformat/nutdec: Fix use of uinitialized value
...
Fixes CID1041175
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-05-12 18:20:23 +02:00
Michael Niedermayer
55231323b0
Merge commit '254f3daba4271c1918d9a7ad155b1442ef93ed29'
...
* commit '254f3daba4271c1918d9a7ad155b1442ef93ed29':
nut: Make sure to clean up on read_header failure
Conflicts:
libavformat/nutdec.c
See: 361702660d
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2015-05-10 22:31:39 +02:00
Michael Niedermayer
8b0ceb96da
Merge commit 'b34257eefd98cb768ea2f53a390b8684d51e689a'
...
* commit 'b34257eefd98cb768ea2f53a390b8684d51e689a':
nut: Check chapter creation in decode_info_header
Conflicts:
libavformat/nutdec.c
See: 3ff1af2b0d
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2015-05-10 22:09:48 +02:00
Luca Barbato
254f3daba4
nut: Make sure to clean up on read_header failure
...
Based on Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com > work.
CC: libav-stable@libav.org
2015-05-09 15:55:50 +02:00
Andreas Cadhalpun
b34257eefd
nut: Check chapter creation in decode_info_header
...
This fixes a segmentation fault when accessing the metadata.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org >
CC: libav-stable@libav.org
2015-05-08 11:10:51 +02:00
Andreas Cadhalpun
7c24ca1bda
nutdec: fix illegal count check in decode_main_header
...
The existing check has two problems:
1) i + count can overflow, so that the check '< 256' returns true.
2) In the (i == 'N') case occurs a j-- so that the loop runs once more.
This can trigger the assertion 'nut->header_len[0] == 0' or cause
segmentation faults or infinite hangs.
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-04-28 22:56:14 +02:00
Andreas Cadhalpun
361702660d
nutdec: fix memleaks on error in nut_read_header
...
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-04-28 22:38:04 +02:00
Andreas Cadhalpun
3ff1af2b0d
nutdec: check chapter creation in decode_info_header
...
This fixes a segmentation fault when accessing the metadata.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-04-28 22:22:48 +02:00
Andreas Cadhalpun
6621105877
nutdec: check for negative frame rate in decode_info_header
...
A negative frame rate triggers an av_assert2 in av_rescale_rnd.
Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-04-28 20:37:11 +02:00
Michael Niedermayer
4a10811617
avformat/nutdec: Use av_malloc_array()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2015-03-30 04:32:58 +02:00
Vittorio Giovara
5a2645cafe
nutdec: Prevent leaks on memory error
...
Bug-Id: CID 205122 / CID 205123
2015-03-12 15:29:59 +00:00
Hugo Beauzée-Luyssen
3035d21b5a
nutdec: Check memory allocations
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com >
2015-02-17 12:16:43 -05:00
Michael Niedermayer
2924514721
Merge commit '9deaec782810d098bca11c9332fab2d2f4c5fb78'
...
* commit '9deaec782810d098bca11c9332fab2d2f4c5fb78':
lavf: move internal fields from public to internal context
Conflicts:
libavformat/avformat.h
libavformat/internal.h
libavformat/mux.c
libavformat/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2015-02-11 02:47:54 +01:00
wm4
9deaec7828
lavf: move internal fields from public to internal context
...
This is not an API change; the fields were explicitly declared private
before.
Signed-off-by: Anton Khirnov <anton@khirnov.net >
2015-02-10 21:45:04 +01:00
Anton Khirnov
05e59135b3
nutdec: do not set has_b_frames
...
It is not supposed to be set by demuxers.
2014-11-06 09:05:37 +01:00
Michael Niedermayer
42316907b8
Merge commit 'af7ca6ea124b82b337a6b96e10963e88eba57ebe'
...
* commit 'af7ca6ea124b82b337a6b96e10963e88eba57ebe':
nutdec: check av_new_packet return value
Conflicts:
libavformat/nutdec.c
See: bb502411dd
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2014-10-22 00:26:37 +02:00
Vittorio Giovara
af7ca6ea12
nutdec: check av_new_packet return value
...
CC: libav-stable@libav.org
Bug-Id: CID 733713
2014-10-21 14:37:48 +01:00
Michael Niedermayer
5753d96771
Merge commit '96bfb677478514db73d1b63b4213c97ad4269e8f'
...
* commit '96bfb677478514db73d1b63b4213c97ad4269e8f':
nutdec: Prevent a memory corruption
Conflicts:
libavformat/nutdec.c
See: 05dd5368a9
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2014-10-20 22:35:37 +02:00
Luca Barbato
96bfb67747
nutdec: Prevent a memory corruption
...
Chapters do not have an event_flags field.
Bug-Id: CID 1231990
2014-10-20 10:47:03 +01:00
Michael Niedermayer
05dd5368a9
avformat/nutdec: always initialize event_flags
...
Fixes: CID1231990
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-20 16:45:08 +02:00
Michael Niedermayer
1110a030c7
Merge commit 'fa3a5dd4dea34baa6bb2f7fe6006fc4b2888f2aa'
...
* commit 'fa3a5dd4dea34baa6bb2f7fe6006fc4b2888f2aa':
nutdec: update AVFormatContext.event_flags with STREAM_/METADATA_UPDATED whenever metadata changes.
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-13 23:44:53 +02:00
Andrew Stone
fa3a5dd4de
nutdec: update AVFormatContext.event_flags with STREAM_/METADATA_UPDATED whenever metadata changes.
...
Signed-off-by: Anton Khirnov <anton@khirnov.net >
2014-08-13 16:23:36 +00:00
James Almer
d34ec64a22
replace calls to url_feof() with avio_feof()
...
Signed-off-by: James Almer <jamrial@gmail.com >
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-08-08 00:48:38 +02:00
Michael Niedermayer
a26ecba075
Merge commit '52a1c32c0a86e84d43f977c5148e62975a0c6917'
...
* commit '52a1c32c0a86e84d43f977c5148e62975a0c6917':
nut: Use nut->version in the version range check
Conflicts:
libavformat/nutdec.c
Note, this bug did not affect ffmpeg
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-08 21:18:36 +02:00
Luca Barbato
52a1c32c0a
nut: Use nut->version in the version range check
...
It was wrongly left unchanged when the version field had been
introduced. (c94e2e85cb
)
2014-07-08 19:04:09 +02:00
Michael Niedermayer
a981d1b6aa
avformat/nutdec: if all else fails try to lookup video tag in isom
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-07-08 16:37:06 +02:00
Michael Niedermayer
74bd039f8c
avformat/nutdec: improve probe speed by 30%
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-06-24 18:40:40 +02:00
Michael Niedermayer
6b041cb617
avformat/nutdec: Fix handling of older 4.0 files
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-05-29 01:48:02 +02:00
Michael Niedermayer
a8499cbbe8
Merge commit 'c94e2e85cb6af8a570d8542a830556243bd32873'
...
* commit 'c94e2e85cb6af8a570d8542a830556243bd32873':
nut: Support experimental NUT 4 features
Conflicts:
doc/nut.texi
libavformat/nut.h
libavformat/nutdec.c
libavformat/nutenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at >
2014-05-29 01:13:59 +02:00
Luca Barbato
c94e2e85cb
nut: Support experimental NUT 4 features
...
Add the low overhead pipe mode and the extended broadcast mode.
Export the options as 'syncponts' since it impacts only that.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org >
2014-05-28 22:04:56 +02:00
Michael Niedermayer
968516cebf
avformat/nut: add ff_nut_audio_extra_tags to demuxer too
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-04-09 23:37:55 +02:00
Michael Niedermayer
7f9697aa11
avformat/nutdec: fix packet end clearing
...
The code was buggy, using the wrong variable, also it missed the case
where the packet become smaller due to sidedata/metadata being extracted
which left a few bytes uninitialized
Fixes use of uninitialized memory
Fixed: msan_uninit-mem_7f6abbe44530_6838_mewmew_vorbis_ssa.nut
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-01-10 00:34:15 +01:00
Michael Niedermayer
71fe97a60a
avformat/nutdec: check avio_read() return code
...
Fixes use of uninitialized memory
Fixes: msan_uninit-mem_7f2785ab8669_6838_mewmew_vorbis_ssa.nut
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-01-07 00:26:33 +01:00
Michael Niedermayer
d04aceb7d0
avformat/nutdec: remove unused variable
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-01-05 17:27:23 +01:00
Michael Niedermayer
8113e838a8
avformat/nut: add support for per frame side & meta data with version 4
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2014-01-04 14:13:31 +01:00
Michael Niedermayer
0cedc6c066
avformat/nutdec: use ff_get_extradata()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-12-25 17:38:29 +01:00
Michael Niedermayer
804ea14b35
avformat/nut: add minor_version field with version>=4
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-12-25 02:03:19 +01:00
Michael Niedermayer
6aa50374bf
avformat/nut: store version in the context
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at >
2013-12-25 02:03:08 +01:00