summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* avcodec/mpegaudio_tablegen: more dynamic table creation speedupsGanesh Ajjanagadde2015-12-01
| | | | | | | | | | | | | | | | | | | | This further speeds up runtime initialization, with identical generated tables. Sample benchmark (x86-64, Haswell, GNU/Linux): old: 34441423 decicycles in mpegaudio_tableinit, 8192 runs, 0 skips new: 10776291 decicycles in mpegaudio_tableinit, 8192 runs, 0 skips Most low hanging fruit is taken care of here. For some idea, note that 83,064 array elements totalling 233,722 bytes need to be initialized. Thus, with this patch, we average ~ 12.9 cycles per element or ~ 4.6 cycles per byte. Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
* avcodec/mpegaudio_tablegen: speed up dynamic table creationGanesh Ajjanagadde2015-12-01
| | | | | | | | | | | | | | | | | | | This does some miscellaneous stuff mainly avoiding the usage of pow to achieve significant speedups. This is not speed critical, but is unnecessary latency and cycles wasted for a user. All tables tested and are identical to the old ones (bit-exact even in floating point case). Sample benchmark (x86-64, Haswell, GNU/Linux): old: 102329530 decicycles in mpegaudio_tableinit, 1 runs, 0 skips new: 34111900 decicycles in mpegaudio_tableinit, 1 runs, 0 skips Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
* avutil/tablegen: add tablegen libm compatibility shimsGanesh Ajjanagadde2015-12-01
| | | | | | | | | | | | This is useful for build-time table generation (--enable-hardcoded-tables), by providing compat shims for hosts that have broken libms. This file is deliberately kept minimal; functions can always be added on an as-needed basis. Reviewed-by: Clément Bœsch <u@pkh.me> Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
* avcodec/ppc/fdctdsp: use more accurate constantsGanesh Ajjanagadde2015-12-01
| | | | | | | | Whoever wrote this stuff had a pretty bad libm - digits differ pretty quickly. Reviewed-by: Ronald S. Bultje <rsbultje@gmail.com> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
* avfilter/vf_shuffleframes: Assert that the case of an uninitialized ret does ↵Michael Niedermayer2015-12-01
| | | | | | | | | not occur Fixes CID1258479 Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avfilter/vf_histogram: remove deprecated stuffPaul B Mahol2015-12-01
| | | | | | | | Remove all modes except levels mode. Users should already switch to other filters with extended funcionality: vectorscope and waveform. Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avutil/mathematics: Do not treat INT64_MIN as positive in av_rescale_rndMichael Niedermayer2015-12-01
| | | | | | | | | The code expects actual positive numbers and gives completely wrong results if INT64_MIN is treated as positive Instead clip it into the valid range that is add 1 and treat it as negative Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avutil/integer: Fix av_mod_i() with negative dividendMichael Niedermayer2015-12-01
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avformat/dump: Fix integer overflow in av_dump_format()Michael Niedermayer2015-12-01
| | | | | | | Fixes part of mozilla bug 1229167 Found-by: Tyson Smith Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/ac3: always use hardcoded tablesGanesh Ajjanagadde2015-11-30
| | | | | | | | | | | | | | | | | The table in question is a 253 byte one. In fact, it turns out that dynamic generation of the table results in an increased binary size. Code compiled with GCC 5.2.0, x86-64 (size in bytes), before and after patch: old: 62321064 libavcodec/libavcodec.so.57 new: 62320536 libavcodec/libavcodec.so.57 Thus, it always make sense to statically allocate this. Tested with FATE with/without --enable-hardcoded-tables. Reviewed-by: wm4 <nfxjfg@googlemail.com> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
* avfilter/af_compand: use hypot()Ganesh Ajjanagadde2015-11-30
| | | | | Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
* 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>
* ffserver: Clear avio context after closing it in rtp_new_av_stream()Michael Niedermayer2015-11-30
| | | | | Suggested-by: "Reynaldo H. Verdejo Pinochet" <reynaldo@osg.samsung.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* ffserver: Clear avio context after closing itMichael Niedermayer2015-11-30
| | | | | | | | | | | | | | | | | | | | | | | | | Fixes: ==13287== Invalid read of size 4 ==13287== at 0x45161A: flush_buffer (aviobuf.c:143) ==13287== by 0x451971: avio_flush (aviobuf.c:200) ==13287== by 0x512CCF: av_write_trailer (mux.c:1016) ==13287== by 0x41A5E0: close_connection (ffserver.c:853) ==13287== by 0x421EDC: rtsp_cmd_interrupt (ffserver.c:3245) ==13287== by 0x420B9C: rtsp_parse_request (ffserver.c:2854) ==13287== by 0x41A9C2: handle_connection (ffserver.c:930) ==13287== by 0x41A04B: http_server (ffserver.c:700) ==13287== by 0x423A60: main (ffserver.c:3897) ==13287== Address 0xb6cd258 is 88 bytes inside a block of size 192 free'd ==13287== at 0x4C2B5D9: free (vg_replace_malloc.c:446) ==13287== by 0x1004DAC: av_free (mem.c:239) ==13287== by 0x454835: avio_close_dyn_buf (aviobuf.c:1170) ==13287== by 0x41F385: http_prepare_data (ffserver.c:2368) ==13287== by 0x41F59B: http_send_data (ffserver.c:2416) ==13287== by 0x41ABE2: handle_connection (ffserver.c:986) ==13287== by 0x41A04B: http_server (ffserver.c:700) ==13287== by 0x423A60: main (ffserver.c:3897) Reviewed-by: "Reynaldo H. Verdejo Pinochet" <reynaldo@osg.samsung.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avfilter/af_sidechaincompress: do not require writable input frames for ↵Paul B Mahol2015-11-30
| | | | | | acompressor filter Signed-off-by: Paul B Mahol <onemda@gmail.com>
* avfilter/af_sidechaincompress: add level_in and level_sc optionsPaul B Mahol2015-11-30
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* 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>
* lavf/mxfdec: Set width to actual coded_width for AVCI50.Carl Eugen Hoyos2015-11-29
| | | | | Fixes ticket #5029. Reported and analyzed by videolan trac user HenkDemper in vlc ticket #15762.
* avfilter/af_sidechaincompress: fix output gain for rms(default) detectionPaul B Mahol2015-11-29
| | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* 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.
* ffserver: add NULL context to ff_rtsp_parse_line().Nicolas George2015-11-29
| | | | Needed after f62fe53/2c17fb6.
* 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>
* configure: Add user options to enable gcrypt/gmp for rtmp(t)e support.Matt Oliver2015-11-30
| | | | Signed-off-by: Matt Oliver <protogonoi@gmail.com>
* Merge commit '0e2395293bff089536b97131b32fea8b58bca0ba'Hendrik Leppkes2015-11-29
|\ | | | | | | | | | | | | * commit '0e2395293bff089536b97131b32fea8b58bca0ba': nut: Mark non-fatal errors as warnings Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * nut: Mark non-fatal errors as warningsLuca Barbato2015-11-25
| | | | | | | | And make one more informative.
* | Merge commit '62f72b40c0b0d2cd6a2b81977287fa01d9f4ca6d'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit '62f72b40c0b0d2cd6a2b81977287fa01d9f4ca6d': nut: Provide more information on failure Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * nut: Provide more information on failureLuca Barbato2015-11-25
| |
* | Merge commit '2c17fb61ced2059034856a6c6cd303014aed01fe'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit '2c17fb61ced2059034856a6c6cd303014aed01fe': rtsp: Log getaddrinfo failures Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * rtsp: Log getaddrinfo failuresLuca Barbato2015-11-25
| | | | | | | | And forward the logging contexts when needed.
* | Merge commit '12b14382861fbf19378afcddaa19cd9a949a86a3'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit '12b14382861fbf19378afcddaa19cd9a949a86a3': udp: Provide additional information on getaddrinfo failure Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * udp: Provide additional information on getaddrinfo failureLuca Barbato2015-11-25
| |
* | Merge commit '34af7813f77e2b5b9dcb34f20bcf53bfcc0ba9c9'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit '34af7813f77e2b5b9dcb34f20bcf53bfcc0ba9c9': udp: Use the logging context Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * udp: Use the logging contextLuca Barbato2015-11-25
| |
* | Merge commit '98063bcf15eb1e9bf9c8758c83c88d51cbb7ace7'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit '98063bcf15eb1e9bf9c8758c83c88d51cbb7ace7': rtsp: Do not assume getnameinfo cannot fail Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * rtsp: Do not assume getnameinfo cannot failLuca Barbato2015-11-25
| | | | | | | | And properly report the error when it happens.
* | Merge commit '5b70fb8fee4af3b13f29a2dc7222fd3c9782f79b'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit '5b70fb8fee4af3b13f29a2dc7222fd3c9782f79b': movenc-test: Fix integer overflows Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * movenc-test: Fix integer overflowsMichael Niedermayer2015-11-24
| | | | | | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* | 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 '823fa7004571cb8404ca5785f9fa6e85f0f9f3d3'Hendrik Leppkes2015-11-29
|\| | | | | | | | | | | | | * commit '823fa7004571cb8404ca5785f9fa6e85f0f9f3d3': fate: Rework sgi tests into a suite and add the missing ones Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
| * fate: Rework sgi tests into a suite and add the missing onesVittorio Giovara2015-11-24
| | | | | | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | developer.texi: Call out K&R coding style.Rick Kern2015-11-29
| | | | | | | | | | | | K&R coding style is implied but not listed in 'Coding Rules'. Signed-off-by: Rick Kern <kernrj@gmail.com>