summaryrefslogtreecommitdiff
path: root/libavcodec
Commit message (Collapse)AuthorAge
* qsvenc: write a53 caption data to SEIWill Kelleher2015-11-30
| | | | | | Signed-off-by: Will Kelleher <wkelleher@gogoair.com> Previous version reviewed-by: Ivan Uskov <ivan.uskov@nablet.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/vp3: always set pix_fmt in theora_decode_header()Michael Niedermayer2015-11-30
| | | | | | | | Fixes assertion failure Fixes: d0bb0662da342ec65f8f2a081222e6b9/signal_sigabrt_7ffff6ae7cc9_5471_82964f0a9ac2f4d3d59390c15473f6f7.ogg Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/mpeg4videodec: Check available data before reading custom matrixMichael Niedermayer2015-11-29
| | | | | | | | Fixes: out of array read Fixes: 76c515fc3779d1b838667c61ea13ce92/asan_heap-oob_1fc0d07_8913_794a4629a264ebdb25b58d3a94ed1785.bit Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/dnxhddec: Disable 12bit by defaultMichael Niedermayer2015-11-29
| | | | | | | | | | | | | The DC VLC table used is too small, fixing this requires a sample, thus request a sample. Some samples are said to work even though the table has the wrong size, thus this is left enabled if the user enables experimental features. Fixes: 2abd25478c62a675f335fac00b467023/asan_static-oob_10aff98_1227_8811480c6ef1e970a7977ceb7e5a9958.mxf Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Approved-by: kurosu Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* AAC encoder: make pe.min a local minimumClaudio Freire2015-11-29
| | | | | | | | | | | | | | As noted in a comment, pe.min in the reference encoder is centered around current pe. The bit reservoir algo needs pe.min to be a local minimum, because it can only account for local PE variations. If it's set to a global minimum as was being done, bit reservoir logic doesn't work as efficiently. This patch tries to forget old minimums and converge to a local minimum without losing the stability of the previous solution. Listening tests until now suggest this solves numerous RC issues.
* avcodec/libdcadec: require first public releaseJames Almer2015-11-29
| | | | | Reviewed-by: Hendrik Leppkes <h.leppkes@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* Merge commit 'fdd5c48ebdec489ec9e84eee547fefa50c3ad53c'Hendrik Leppkes2015-11-29
|\ | | | | | | | | | | | | * commit 'fdd5c48ebdec489ec9e84eee547fefa50c3ad53c': texturedsp: Explicitly cast RGBA parameters to unsigned Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * texturedsp: Explicitly cast RGBA parameters to unsignedVittorio Giovara2015-11-24
| | | | | | | | | | Silences warnings when using -Wshift-overflow (GCC 6+). Found-by: James Almer <jamrial@gmail.com>
* | Merge commit 'eef38316cab68aff080cf2b83c2427a734194e8d'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit 'eef38316cab68aff080cf2b83c2427a734194e8d': texturedspenc: Avoid using separate variables Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * texturedspenc: Avoid using separate variablesVittorio Giovara2015-11-24
| | | | | | | | Use the result directly, removing an unneeded cast.
* | Merge commit '7831fb90503142e32cc3c9be43bc3f9d342ded6b'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit '7831fb90503142e32cc3c9be43bc3f9d342ded6b': textureencdsp: cosmetics: Use normal static const for tables Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * textureencdsp: cosmetics: Use normal static const for tablesVittorio Giovara2015-11-24
| |
* | Merge commit '99cb833fc2d9874c62fffbcd3347fae660de0fe5'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit '99cb833fc2d9874c62fffbcd3347fae660de0fe5': sgi: Correctly propagate meaningful error values Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * sgi: Correctly propagate meaningful error valuesVittorio Giovara2015-11-24
| |
* | Merge commit '4a0918cae6394e503b17c71f8f171b4a795eb849'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit '4a0918cae6394e503b17c71f8f171b4a795eb849': sgienc: Support encoding high bit depth images with RLE Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * sgienc: Support encoding high bit depth images with RLEVittorio Giovara2015-11-24
| | | | | | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | Merge commit '59e3f4e598ae381600ef54e1f6e6a8a5270ac245'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit '59e3f4e598ae381600ef54e1f6e6a8a5270ac245': sgienc: Use a local RLE encoding function Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * sgienc: Use a local RLE encoding functionVittorio Giovara2015-11-24
| | | | | | | | | | | | SGI RLE encoding is slighlty different than the one provided by rle module (especially at high bit depth). The pixel count function however does not change, so it is simply made library-public.
* | Merge commit '62cc8f4d79dad119e8efeaae080a58a8dcb1e89d'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit '62cc8f4d79dad119e8efeaae080a58a8dcb1e89d': sgienc: Port to bytestream2 Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * sgienc: Port to bytestream2Vittorio Giovara2015-11-24
| |
* | Merge commit '99f40fd02f1870c2dee70977b672da9cb198f0be'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit '99f40fd02f1870c2dee70977b672da9cb198f0be': sgienc: Do not end RLE lines with 0s Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * sgienc: Do not end RLE lines with 0sVittorio Giovara2015-11-24
| | | | | | | | | | | | | | | | This is never mentioned in the specifications, and decoders work just as fine without it. Update the fate references since the compressed file is smaller. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
| * libvpxenc: remove some unused ctrl id mappingsJames Zern2015-11-23
| | | | | | | | | | | | | | | | | | VP8E_UPD_ENTROPY, VP8E_UPD_REFERENCE, VP8E_USE_REFERENCE were removed from libvpx and the remaining values were never used here Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: James Zern <jzern@google.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit 'c12c085be7e86880924249e5cb3f898e45dee134'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit 'c12c085be7e86880924249e5cb3f898e45dee134': dcadec: Do not check for overreads in auxiliary data Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * dcadec: Do not check for overreads in auxiliary dataTim Walker2015-11-23
| | | | | | | | | | | | | | | | The auxiliary data length field is not reliable, and incorrect overread errors could be returned for valid, real-world bitstreams. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | Merge commit '462a54e2291e1fa18e1f1254d09739dfbb795617'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit '462a54e2291e1fa18e1f1254d09739dfbb795617': lavc: Deprecate avctx.rtp_callback field Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * lavc: Deprecate avctx.rtp_callback fieldVittorio Giovara2015-11-20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This function returns the encoded data of a frame, one slice at a time directly when that slice is encoded, instead of waiting for the full frame to be done. However this field has a debatable usefulness, since it looks like it is just a convoluted way to get data at lowest possible latency, or a somewhat hacky way to store h263 in RFC-2190 rtp encapsulation. Moreover when multi-threading is enabled (which is by default) the order of returned slices is not deterministic at all, making the use of this function not reliable at all (or at the very least, more complicated than it should be). So, for the reasons stated above, and being used by only a single encoder family (mpegvideo), this field is deemed unnecessary, overcomplicated, and not really belonging to libavcodec. Libavformat features a complete implementation of RFC-2190, for any other case. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | Merge commit 'fc4c27c4edfc6a5f9bc7c696e823652474a65ce8'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit 'fc4c27c4edfc6a5f9bc7c696e823652474a65ce8': qsvenc: expose additional encoding options Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * qsvenc: expose additional encoding optionsAnton Khirnov2015-11-20
| |
* | Merge commit 'e7d7cf86dcaba8eaaed62c80172ff0aff2588c2a'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit 'e7d7cf86dcaba8eaaed62c80172ff0aff2588c2a': qsvenc: support more RC methods Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * qsvenc: support more RC methodsAnton Khirnov2015-11-20
| |
* | avcodec/h264_refs: Check that long references match before useMichael Niedermayer2015-11-29
| | | | | | | | | | | | | | | | Fixes out of array read Fixes: 59bb925e90201fa0f87f0a31945d43b5/asan_heap-oob_4a52e5_3388_66027f11e3d072f1e02401ecc6193361.jvt Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/utils: Clear dimensions in ff_get_buffer() on failureMichael Niedermayer2015-11-28
| | | | | | | | | | | | | | | | Fixes out of array access Fixes: 482d8f2fd17c9f532b586458a33f267c/asan_heap-oob_4a52b6_7417_1d08d477736d66cdadd833d146bb8bae.mov Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/utils: Use 64bit for aspect ratio calculation in avcodec_string()Michael Niedermayer2015-11-28
| | | | | | | | | | | | | | | | Fixes integer overflow Fixes: 3a45b2ae02f2cf12b7bd99543cdcdae5/asan_heap-oob_1dff502_8022_899f75e1e81046ebd7b6c2394a1419f4.mov Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/hevc: Check max ctb addresses for WPPMichael Niedermayer2015-11-28
| | | | | | | | | | | | | | | | Fixes out of array read Fixes: 2f95ddd996db8a6281d2e18c184595a7/asan_heap-oob_192fe91_3330_58e4441181e30a66c19f743dcb392347.bit Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/aac_tablegen: get rid of hardcoded tables entirelyGanesh Ajjanagadde2015-11-28
| | | | | | | | | | | | | | | | | | | | Commit 96786a12f6df26990bbe7c0ca4592b3731724469 makes runtime initialization cheap. Tested with FATE, with/without --enable-hardcoded-tables. Reviewed-by: Rostislav Pehlivanov <atomnuker@gmail.com> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
* | avcodec/vp3: Fix several memleaksMichael Niedermayer2015-11-28
| | | | | | | | | | | | | | Fixes: 1536b9b096a8f95b742bae9d3d761cc6/signal_sigsegv_294aaed_4460_b209bd1e7cebe458b53072a44191316d.ogg Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/vp3: Clear context on reinitialization failureMichael Niedermayer2015-11-28
| | | | | | | | | | | | | | | | Fixes null pointer dereference Fixes: 1536b9b096a8f95b742bae9d3d761cc6/signal_sigsegv_294aaed_2039_8d1797aeb823ea43858d0fa45c9eb899.ogv Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/hevc: allocate entries unconditionallyMichael Niedermayer2015-11-27
| | | | | | | | | | | | | | | | Fixes out of array access Fixes: 08664a2a7921ef48172f26495c7455be/asan_heap-oob_23036c6_3301_523388ef84285a0270caf67a43247b59.bit Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/pthread_slice: Allow calling ff_alloc_entries() multiple times to ↵Michael Niedermayer2015-11-27
| | | | | | | | | | | | readjust the entry count Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/hevc_cabac: Fix multiple integer overflowsMichael Niedermayer2015-11-27
| | | | | | | | | | | | | | Fixes: 04ec80eefa77aecd7a49a442cc02baea/asan_heap-oob_19544fa_3303_1905796cd9d8e15f86d664332caabc00.bit Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | aacenc: fix broken build with hardcoded tablesRostislav Pehlivanov2015-11-27
| | | | | | | | | | | | | | | | ff_aac_tableinit is a macro in the case of hardcoded tables, so wrap that up in a function (similar to how the decoder template does it) and use that as the argument for ff_thread_once(). Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* | avcodec/jpeg2000dwt: Check ndeclevels before calling dwt_encode*()Michael Niedermayer2015-11-27
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/jpeg2000dwt: Check ndeclevels before calling dwt_decode*()Michael Niedermayer2015-11-27
| | | | | | | | | | | | | | | | Fixes out of array access Fixes: 01859c9a9ac6cd60a008274123275574/asan_heap-oob_1dff571_8250_50d3d1611e294c3519fd1fa82198b69b.avi Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/aac_tablegen: make exp2_lut staticGanesh Ajjanagadde2015-11-27
| | | | | | | | | | Suggested-by: Clément Bœsch <u@pkh.me> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
* | avcodec/hevc: Check entry_point_offsetsMichael Niedermayer2015-11-27
| | | | | | | | | | | | | | | | Fixes out of array read Fixes: 007c4a36608ebdf27ee260ad60a81184/asan_heap-oob_32076b4_2243_116b1cb29d91cc4974d6680e3d10bd91.bit Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | aac: temporarily un-share aac_table_init AVOnce variableRostislav Pehlivanov2015-11-27
| | | | | | | | | | | | | | AAC-Fixed decoder segfaulted. This commit makes the aac encoder and decoder init the table twice in case of transcoding again. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* | aactab.h: fix commentRostislav Pehlivanov2015-11-27
| | | | | | | | | | | | Previous commit broke it. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* | aactab.h: update and correct commentRostislav Pehlivanov2015-11-27
| | | | | | | | | | | | Tables in that file have been used by both for a long time now. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
* | aacenc: make threadsafeRostislav Pehlivanov2015-11-27
| | | | | | | | | | | | | | | | Since the ff_aac_tableinit() can be called by both the encoder and the decoder (in case of transcoding) this commit shares the AVOnce variable to prevent this. Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>