aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* dnn_backend_native_layer_mathunary: add round supportMingyu Yin2020-08-125-2/+11
| | | | | Signed-off-by: Mingyu Yin <mingyu.yin@intel.com> Reviewed-by: Guo, Yejun <yejun.guo@intel.com>
* avcodec/libsvtav1: fix copy and paste errorLimin Wang2020-08-121-1/+1
| | | | | Reviewed-by: Mark Thompson <sw@jkqxz.net> Signed-off-by: Limin Wang <lance.lmwang@gmail.com>
* avformat/ty: Remove write-only array and variableAndreas Rheinhardt2020-08-111-67/+1
| | | | | | | | | | | | | | | | Up until now, the TiVo demuxer parse an array of SEQ entries, yet it has never ever made any use of them. In fact, parse_master, the function parsing said table, only influenced the outside world in three ways: Via an excessive amount of error message in case a certain parameter is not what it expected; via an allocation (the aforementioned write-only array); and by setting a certain parameter (ty->cur_chunk_pos), but that parameter is always overwritten before it is used (it is overwritten in get_chunk() on success and if get_chunk() fails, the error is returned to the caller anyway). So remove the array and the function used to parse it. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* tools/target_dec_fuzzer: Adjust threshold for AGMMichael Niedermayer2020-08-111-0/+1
| | | | | | | | Fixes: Timeout (142sec -> 2sec) Fixes: 24426/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_AGM_fuzzer-5639724379930624 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/agm: Mark fill_pixels() as av_always_inlineMichael Niedermayer2020-08-111-1/+1
| | | | | | | | Speedup from 275sec to 142sec Testcase: 24426/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_AGM_fuzzer-5639724379930624 Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* doc/general: mark that CFHD have encoder nowPaul B Mahol2020-08-111-1/+1
|
* doc/general: mention AGM codecsPaul B Mahol2020-08-111-0/+2
|
* avfilter/vf_xfade: check that fps between inputs are validPaul B Mahol2020-08-111-0/+16
|
* avcodec/cfhdenc: mark filter as always inlinePaul B Mahol2020-08-111-1/+1
|
* avcodec/cfhdenc: optimize writting of small runcodesPaul B Mahol2020-08-111-5/+8
|
* avcodec/cfhdenc: improve quality vs size ratioPaul B Mahol2020-08-111-80/+80
|
* avformat/argo_asf: strip file extension from nameZane van Iperen2020-08-111-3/+17
| | | | | | | Only when the user hasn't manually specified one. Matches the original files more closely. Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
* avformat/argo_asf: add name optionZane van Iperen2020-08-111-1/+13
| | | | | | Reviewed-by: Alexander Strasser <eclipse7@gmx.net> Reviewed-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
* avformat/argo_asf: add version_major and version_minor optionsZane van Iperen2020-08-111-3/+44
| | | | | | Reviewed-by: Alexander Strasser <eclipse7@gmx.net> Reviewed-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
* avformat/argo_asf: don't check file versionZane van Iperen2020-08-111-7/+0
| | | | | | | | | | | | | | | | It has no bearing on structure. Determined by looking at the ASF files from several Argonaut games: - FX Fighter, - Croc, - Croc 2, - The Emperor's New Groove, and - Disney's Aladdin in Nasira's Revenge The only versions that appear are 1.1, 1.2, and 2.1, and their structure is identical. Reviewed-by: Alexander Strasser <eclipse7@gmx.net> Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
* avformat/argo_asf: add games to version listZane van Iperen2020-08-111-1/+4
| | | | | Reviewed-by: Alexander Strasser <eclipse7@gmx.net> Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
* avformat/mpegts: Don't leave context in inconsistent state upon errorAndreas Rheinhardt2020-08-101-6/+8
| | | | | | | | | | | | | | | Up until now, opening a section filter works as follows: A filter is opened and (on success) attached to the MpegTSContext. Then a buffer for said filter is allocated and upon success attached to the section filter; on error, the filter is simply freed without removing it from the MpegTSContext, leaving the latter in an inconsistent state. This leads to use-after-frees lateron. This commit fixes this by allocating the buffer first; the filter is only opened if the buffer could be successfully allocated. Reviewed-by: Marton Balint <cus@passwd.hu> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avcodec/jpeg2000dec: Check remaining data in packed_headers_stream before useMichael Niedermayer2020-08-101-1/+3
| | | | | | | | | | Fixes: out of array read Fixes: 24487/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_JPEG2000_fuzzer-5165847820369920 Fixes: 24636/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_JPEG2000_fuzzer-5700973918683136 Fixes: 24683/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_JPEG2000_fuzzer-6202883897556992 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* FATE/dnn: add unit test for dnn avgpool layerTing Fu2020-08-104-0/+204
| | | | | | | 'make fate-dnn-layer-avgpool' to run the test Signed-off-by: Ting Fu <ting.fu@intel.com> Reviewed-by: Guo, Yejun <yejun.guo@intel.com>
* dnn/native: add native support for avg_poolTing Fu2020-08-107-3/+223
| | | | | | | Not support pooling strides in channel dimension yet. Signed-off-by: Ting Fu <ting.fu@intel.com> Reviewed-by: Guo, Yejun <yejun.guo@intel.com>
* avformat/hlsenc: write temp file for append single file by encryption modeSteven Liu2020-08-101-2/+68
| | | | | | | | | | | | fix ticket: 8783 Because in single file by encryption mode, it cannot get the last one block of the file, it need ff_format_io_close for get full file size, then hlsenc can get the total size of the encryption content, so write the content into temp file first, and get the temp file content append the temp file content into append to single file, then hlsenc can get the correct file/content size and offset. Signed-off-by: Steven Liu <liuqi05@kuaishou.com>
* avformat/hls: support avio_seek in encryption modeSteven Liu2020-08-101-1/+1
| | | | Signed-off-by: Steven Liu <liuqi05@kuaishou.com>
* kmsgrab: Add more supported formatsMark Thompson2020-08-091-0/+9
| | | | | | | X2RGB10 tested on both Intel Gen9 and AMD Polaris 11. NV12 tested on Intel Gen9 only - since it has multiple planes, this requires GetFB2. Also add some comments to split the list up a bit.
* doc/indevs: Note improved behaviour of kmsgrab with Linux 5.7Mark Thompson2020-08-091-2/+6
|
* kmsgrab: Don't require the user to set framebuffer formatMark Thompson2020-08-091-15/+40
| | | | | This is provided by GetFB2, but we still need the option for cases where that isn't available.
* kmsgrab: Use GetFB2 if availableMark Thompson2020-08-092-19/+203
| | | | | | | | | | | | The most useful feature here is the ability to automatically extract the framebuffer format and modifiers. It also makes support for multi-plane framebuffers possible, though none are added to the format table in this patch. This requires libdrm 2.4.101 (from April 2020) to build, so it includes a configure check to allow compatibility with existing distributions. Even with libdrm support, it still won't do anything at runtime if you are running Linux < 5.7 (before June 2020).
* kmsgrab: Refactor and clean error casesMark Thompson2020-08-091-61/+100
|
* avformat/sierravmd: Don't return packets for non-existing streamAndreas Rheinhardt2020-08-091-0/+4
| | | | | | | It leads to an assert in ff_read_packet(). Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avformat/vividas: Check allocation for successAndreas Rheinhardt2020-08-091-8/+9
| | | | | Reviewed-by: Zane van Iperen <zane@zanevaniperen.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avformat/vividas: Check return value before storing it in smaller typeAndreas Rheinhardt2020-08-091-4/+5
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* avcodec/cfhd: improve SampleIndex tag outputPaul B Mahol2020-08-091-5/+4
| | | | This tag is used for jumping to different channels in bitstream.
* avcodec/cfhd: log version tags tooPaul B Mahol2020-08-092-0/+15
|
* avcodec/cfhd: read prescale table tagPaul B Mahol2020-08-092-7/+5
| | | | | Currently unused. Remove prescale shift tag as it is not part of this codec.
* avcodec/cfhd: use init_get_bits8()Paul B Mahol2020-08-091-1/+3
|
* avcodec/cfhd: reindentPaul B Mahol2020-08-091-186/+186
|
* avcodec/cfhd: check if band encoding is validPaul B Mahol2020-08-091-2/+6
| | | | | Also simplify lossless check as value of 5 for band encoding always specify lossless mode.
* libavcodec/j2kenc: Support for all Progression ordersGautam Ramakrishnan2020-08-091-1/+222
| | | | | | | | | This patch allows for selecting the progression order in the j2k encoder. However, all components and resolution levels will use the same progression order and will not feature the use of progression order change markers. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/cfhdenc: free alpha buffer on closingPaul B Mahol2020-08-081-0/+5
|
* avcodec/cfhdenc: add gbrap12 pixel format supportPaul B Mahol2020-08-081-5/+39
|
* avcodec/cfhdenc: compand coefficientsPaul B Mahol2020-08-081-47/+98
| | | | Also use -quality private option and add more modes.
* avcodec/cfhd: add 3d transform supportPaul B Mahol2020-08-082-79/+622
| | | | Based on Gagandeep Singh patch.
* avcodec/cfhd: remove some unused or only write itemsPaul B Mahol2020-08-082-9/+0
|
* avcodec/cfhdenc: also write FrameNumber tagPaul B Mahol2020-08-082-1/+5
|
* swscale: do not drop half of bits from 16bit bayer formatsPaul B Mahol2020-08-084-2/+163
|
* doc/fftools-common-opts: document ffmpeg -h protocol=protocol_nameJun Zhao2020-08-081-0/+4
| | | | | | | document ffmpeg -h protocol=protocol_name Reviewed-by: Gyan Doshi <ffmpeg@gyani.pro> Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
* doc/fftools-common-opts: fix typo (name => named)Jun Zhao2020-08-081-2/+2
| | | | | | | fix typo (name => named) Reviewed-by: Gyan Doshi <ffmpeg@gyani.pro> Signed-off-by: Jun Zhao <barryjzhao@tencent.com>
* doc/filters: update filter buffer/abuffer interface file nametomajsjiang2020-08-081-2/+2
| | | | | | | | | Update filter buffer/abuffer interface file name, from libavfilter/{vsrc|asrc_buffer.h} to libavfilter/buffersrc.h Reviewed-by: Gyan Doshi <ffmpeg@gyani.pro> Signed-off-by: Jun Zhao <barryjzhao@tencent.com> Signed-off-by: tomajsjiang <tomajsjiang@tencent.com>
* avcodec/put_bits: Make skip_put_bits() less dangerousAndreas Rheinhardt2020-08-081-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Before c63c303a1f2b58677d480505ec93a90f77dd25b5 (the commit which introduced a typedef for the type of the buffer of a PutBitContext) skip_put_bits() was as follows: static inline void skip_put_bits(PutBitContext *s, int n) { s->bit_left -= n; s->buf_ptr -= 4 * (s->bit_left >> 5); s->bit_left &= 31; } If s->bit_left was negative after the first subtraction, then the next line will divide this by 32 with rounding towards -inf and multiply by four; the result will be negative, of course. The aforementioned commit changed this to: static inline void skip_put_bits(PutBitContext *s, int n) { s->bit_left -= n; s->buf_ptr -= sizeof(BitBuf) * ((unsigned)s->bit_left / BUF_BITS); s->bit_left &= (BUF_BITS - 1); } Casting s->bit_left to unsigned meant that the rounding is still towards -inf; yet the right side is now always positive (it transformed the arithmetic shift into a logical shift), so that s->buf_ptr will always be decremented (by about UINT_MAX / 8 unless n is huge) which leads to segfaults on further usage and is already undefined pointer arithmetic before that. This can be reproduced with the mpeg4 encoder with the AV_CODEC_FLAG2_NO_OUTPUT flag set. Furthermore, the earlier version as well as the new version share another bug: s->bit_left will be in the range of 0..(BUF_BITS - 1) afterwards, although the assumption throughout the other PutBitContext functions is that it is in the range of 1..BUF_BITS. This might lead to a shift by BUF_BITS in little-endian mode. This has been fixed, too. The new version is furthermore able to skip zero bits, too. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
* fate: cosmeticsZane van Iperen2020-08-071-8/+8
| | | | Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
* fate: add adpcm_argo testZane van Iperen2020-08-072-0/+6
| | | | Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>