1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-07 11:13:41 +02:00
Commit Graph

36270 Commits

Author SHA1 Message Date
Michael Niedermayer
2f7a12fab5 avcodec/mlz: clear dict on allocation to ensure there are no uninitialized values
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-08 20:31:15 +02:00
Michael Niedermayer
f2192e0f03 avcodec/alsdec: Fix raw_mantissa memleak
Fixes: 0cee183a09bff5aa5108429717c35a4d/asan_heap-oob_1d99eca_3702_9ef60e80de79082a778d3d9ce8ef3b64.mp4

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-08 20:31:15 +02:00
Michael Niedermayer
837e72b016 avcodec/alsdec: Fix mlz memleak
Fixes: 0cee183a09bff5aa5108429717c35a4d/asan_heap-oob_1d99eca_3702_172c75af9868d4c2556a79cc2413f4cc.mp4

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-08 20:31:15 +02:00
Timo Rothenpieler
8ebe1dddfb avcodec/nvenc: use frame size instead of surface size 2016-09-08 19:08:31 +02:00
Matthieu Bouron
4b290078e4 lavc/mediacodecdec_h264: use h264_parse.h instead of h264dec.h
ff_h264_decode_extradata is referenced by h264_parse.h and not
h264dec.h.
2016-09-07 21:04:13 +02:00
Matthieu Bouron
256e99f6f0 lavc/mediacodecdec_h264: move bsf variable declaration at the top of the function 2016-09-07 21:04:13 +02:00
Sven C. Dack
4aeb7a88ec avcodec/nvenc: support RGB input
nvenc still encodes as yuv, but does the conversion internally which
brings some performance gains.

Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2016-09-07 18:44:10 +02:00
Timo Rothenpieler
fa3ecad071 avcodec/nvenc: correctly set inputPitch 2016-09-07 18:44:10 +02:00
Timo Rothenpieler
96cba1c552 avcodec/nvenc: use av_image_copy for copying frame data 2016-09-07 18:44:10 +02:00
Carl Eugen Hoyos
7a8e5ff1fd lavc/avcodec: Improve av_parser_parse() documentation, mention padding.
Fixes ticket #5809.
2016-09-07 18:37:01 +02:00
Paul B Mahol
7a258ef97e avcodec/gif: don't honor transparency if palette changed
It generally does not work.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-09-07 15:56:13 +02:00
Matthieu Bouron
f574012d5f lavc/mediacodecdec_h264: fix SODB escaping
Fixes escaping of consecutive 0x00, 0x00, 0x0{0-3} sequences.
2016-09-07 15:35:09 +02:00
Michael Niedermayer
a97e35e7c2 avcodec: Fix successfull typo
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-07 01:43:07 +02:00
Philip Langdale
86910b15c9 cuvid: Implement flush to support seeking in media players
Right now, if we attempt to use cuvid in a media player and then
try to seek, the decoder will happily pass out whatever frames were
already in flight before the seek.

There is both the output queue in our code and some number of frames
within the cuvid decoder that need to be accounted for.

cuvid doesn't support flush, so our only choice is to do a brute-force
re-creation of the decoder, which also implies re-creating the parser,
but this is fine.

The only subtlty is that there is sanity check code in decoder
initialisation that wants to make sure the HWContextFrame hasn't already
been initialised. This is a fair check to do at the beginning but not
after a flush, so it has to be made conditional.

Signed-off-by: Philip Langdale <philipl@overt.org>
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2016-09-06 21:52:05 +02:00
Philip Langdale
1891dfe013 cuvid: Add hwaccels and decoders for remaining supported formats
cuvid/nvdecode also supports mpeg1, mpeg2, h.263/mpeg4-asp and mjpeg.

It should, in theory, also support wmv3 via the vc1 support, given
that vdpau supports this. However, it failed to play wmv3 samples
which vdpau played correctly, so I'm not sure what to make of it.

Signed-off-by: Philip Langdale <philipl@overt.org>
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2016-09-06 21:35:42 +02:00
Carl Eugen Hoyos
f077ad69c6 lavc/avpacket: Fix undefined behaviour, do not pass a null pointer to memcpy().
Fixes ticket #5128.
2016-09-05 10:16:03 +02:00
Paul B Mahol
e7bc9623e5 avcodec/pnmdec: fix undefined behaviour
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-09-05 10:06:25 +02:00
Paul B Mahol
3c55baf08f avccodec/utvideoenc: support encoding ULY4 and ULH4
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-09-04 15:51:33 +02:00
Paul B Mahol
c62cb9bf5a avcodec/utvideodec: add support for ULY4 and ULH4
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2016-09-04 01:57:50 +02:00
James Almer
d2e74315e5 avcodec/utils: print only the padding values that are set
Reviewed-by: Carl Eugen Hoyos <ceffmpeg@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-09-03 11:57:23 -03:00
James Almer
4fed4aca0c avcodec/utils: print initial and trailing paddings only in verbose levels
Reviewed-by: Carl Eugen Hoyos <ceffmpeg@gmail.com>
Signed-off-by: James Almer <jamrial@gmail.com>
2016-09-03 11:57:18 -03:00
Carl Eugen Hoyos
a6a453ccd1 Cosmetics: Reindent after e82b181f. 2016-09-03 14:23:32 +02:00
Carl Eugen Hoyos
e82b181f80 lavc/mjpegdec: Only read JFIF thumbnail size if the segment is long enough.
Fixes ticket #5805.
2016-09-03 14:21:46 +02:00
Carl Eugen Hoyos
cef5bc0e6e lavc/mjpegdec: Do not skip reading quantization tables.
They may contain 0xFFs, confusing the start code finding algorithm.

Fixes ticket #5819.
2016-09-03 13:25:54 +02:00
Michael Graczyk
be07c25896 libavcodec/opus: Add channel mapping 2 to extradata parser
This allows libavcodec/opus to demux ambisonics in an ogg/opus container.
Channel mapping family 2 is being added in this standards track IETF draft:
tools.ietf.org/html/draft-ietf-codec-ambisonics-00

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-09-01 23:53:24 +02:00
Michael Graczyk
5d054a1ac4 libavcodec/opus: Fix spelling in error message 2016-09-01 10:29:08 -08:00
Timo Rothenpieler
cac2df230e avcodec/nvenc: update license header 2016-08-28 19:51:22 +02:00
Timo Rothenpieler
26a5cbd781 avcodec/nvenc: use proper soname for cuda/nvenc libraries 2016-08-28 19:49:56 +02:00
Timo Rothenpieler
df615efcf2 avcodec/nvenc: check maximum driver API version 2016-08-28 19:46:44 +02:00
Timo Rothenpieler
a19989cae5 avcodec/nvenc: fix potantially uninitialized free 2016-08-28 18:58:05 +02:00
Timo Rothenpieler
19e75fd883 avcodec/nvenc: fix library names on cygwin 2016-08-28 18:58:05 +02:00
Oliver Collyer
a81b398e86 avcodec/nvenc: added support for rate control lookahead
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2016-08-28 16:47:54 +02:00
Oliver Collyer
d1bf8a3aa8 avcodec/nvenc: added support for 10 bit HEVC encoding
Signed-off-by: Timo Rothenpieler <timo@rothenpieler.org>
2016-08-28 16:47:54 +02:00
Timo Rothenpieler
325e56479f avcodec/nvenc: include nvEncodeAPI v7 SDK header
As Nvidia has put the most recent Video Codec SDK behind a double
registration wall, of which one needs manual approval of a lenghty
application, bundling this header saves everyone trying to use NVENC
from that headache.

The header is still MIT licensed and thus fine to bundle with ffmpeg.

Not bundling this header would get ffmpeg stuck at SDK v6, which is
still freely available, holding back future development of the NVENC
encoder.
2016-08-28 16:47:54 +02:00
Jai Luthra
0c023d181e lavc/lpc: Add min_shift parameter in LPC
The min_shift parameter is needed by the MLP encoder

Signed-off-by: Jai Luthra <me@jailuthra.in>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-28 11:18:16 +02:00
Jan Sebechlebsky
bcd1153162 libavcodec/bsfs: Fix bsf option setting
AV_OPT_SEARCH_CHILDREN flag must be passed to av_opt_set_dict()
to set options for private context.

Signed-off-by: Jan Sebechlebsky <sebechlebskyjan@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-26 02:10:42 +02:00
Michael Niedermayer
01aee8148d avcodec/exr: Check tile positions
This also disabled the case of mixed x/ymin with tiles, the code
handles these cases inconsistent for the 2 coordinate axis and is
unlikely working correctly.

Fixes crash
Fixes: poc1.exr, poc2.exr

Found-by: Yaoguang Chen of Aliapy unLimit Security Team
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-25 02:40:59 +02:00
Paul B Mahol
61980dc479 avformat/avcodec: support rawvideo with planar rgb and alpha in nut 2016-08-23 16:52:21 +02:00
Rafaël Carré
10e3f18c8d libzvbi depends on ass 2016-08-23 15:28:36 +02:00
Carl Eugen Hoyos
3c36d960f4 lavc/h264dec: Improve "Increasing reorder buffer" message loglevel.
Do not show the message for the first frame by default, show a
warning if increasing is necessary in the middle of the stream.
2016-08-23 15:05:06 +02:00
Michael Niedermayer
77bf96b047 avcodec/aacenc: Tighter input checks
Fixes occurance of NaN/Inf leading to assertion failures and out of array access
Fixes: d1c38a09acc34845c6be3a127a5aacaf/signal_sigsegv_3982225_6121_d18bd5451d4245ee09408f04badd1b83.wmv

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-23 11:03:00 +02:00
Michael Niedermayer
ebb9a320d7 avcodec/alsdec: Remove unused variable
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-22 17:36:56 +02:00
Stanislav Dolganov
4edd74bd7c avcodec/me_cmp: add median SAD compare function
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-22 16:41:33 +02:00
Umair Khan
dcfd24b10c avcodec/alsdec: Implement floating point sample data decoding
It conforms to the RM22 version of the reference encoder

Signed-off-by: Umair Khan <omerjerk@gmail.com>
2016-08-22 15:28:19 +02:00
Umair Khan
eabdabb982 avcodec: Implement masked lz decompression
Signed-off-by: Umair Khan <omerjerk@gmail.com>
2016-08-22 15:28:19 +02:00
Mark Reid
61fac0ea09 libavcodec/dnxhdenc: fix typo, check if profile is dnxhr 444 or hqx
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-22 02:27:15 +02:00
Michael Niedermayer
67318187fb libavcodec/wmalosslessdec: Check the remaining bits
Fixes assertion failure
Fixes: 24ebfda03228b5cc1ef792608cfba458/signal_sigabrt_7ffff6ae7c37_6473_3fa8a111dbc752b1a7c411c5ab79aaa4.wma

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-21 21:06:17 +02:00
Jan Sebechlebsky
57503fab4f avcodec/bsf: Add custom item name function for bsf list
which will
construct string description of filter chain. This is
done using lazy-initialization, so there is no overhead
if item name is never accessed.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-21 11:54:53 +02:00
Michael Niedermayer
f2a9a30fd6 avcodec/adpcm: Fix adpcm_ima_wav padding
Fixes out of array read
Fixes: f29f134ea5f5590df554a7733294a587/asan_stack-oob_309d14e_9188_ea01743d6355aff20530f3d4cdaa841a.wav

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-21 02:44:15 +02:00
Michael Niedermayer
2624695484 avcodec/svq3: fix slice size check
Fixes out of array read
Fixes: 09f46aa2175cade93e3e3932646a56a9/asan_heap-oob_4a5385_2995_498f6abfdc0248288cefe5f4b7ad316c.mov

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-08-20 22:11:50 +02:00