Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2020-08-31hwcontext_vaapi: Don't require a render node when deriving from DRMMark Thompson
The V4L2 driver does not actually have an associated DRM device at all, so users work around the requirement by giving libva an unrelated display-only device instead (which is fine, because it doesn't actually do anything with that device). This was broken by bc9b6358fb7315c0173de322472641766f6289da forcing a render node, because the display-only device did not have an associated render node to use. Fix that by just passing through the original non-render DRM fd if we can't find a render node. Reported-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com> Tested-by: Paul Kocialkowski <paul.kocialkowski@bootlin.com>
2020-08-31avcodec/sheervideo: use cached bitstream reader except for x32Paul B Mahol
2020-08-31avfilter/f_graphmonitor: also show link EOF status in bluePaul B Mahol
2020-08-31avcodec/magicyuv: change bits used by 12bit tablesPaul B Mahol
Higher number slows decoder.
2020-08-31avcodec/magicyuv: use cached bitstream reader except for x32Paul B Mahol
2020-08-31avcodec/magicyuv: invert symbols when building vlcPaul B Mahol
Instead at every decoded symbol.
2020-08-31avfilter/vsrc_gradients: add speed optionPaul B Mahol
2020-08-31avfilter/vsrc_gradients: do not use (l)lrint variants for doublePaul B Mahol
2020-08-31avfilter/vsrc_gradients: add duration optionPaul B Mahol
2020-08-31dnn/tensorflow: add log error messageTing Fu
Signed-off-by: Ting Fu <ting.fu@intel.com>
2020-08-31dnn/openvino: add log error messageTing Fu
Signed-off-by: Ting Fu <ting.fu@intel.com>
2020-08-31avfilter/src_movie: Avoid intermediate buffer for writing stringAndreas Rheinhardt
Reviewed-by: Paul B Mahol <onemda@gmail.com> Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-31avcodec/roqvideodec: Remove set-but-unused frame statsAndreas Rheinhardt
Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-31avcodec/roqvideodec: Move transient GetByteContext to the stackAndreas Rheinhardt
This avoids keeping potentially dangling pointers in the context, beautifies the code (by replacing "&ri->gb" by gb for every access to the GetByteContext) and also highlights the GetByteContext's short-lived nature better. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-31avcodec/cdxl: also mark decoded frame as keyframePaul B Mahol
2020-08-31avcodec/qpeg: reduce unnecessary size of tablesPaul B Mahol
2020-08-30libavcodec/jpeg2000: fix tag tree resetGautam Ramakrishnan
The implementation of the tag tree did not set the correct reset value for the encoder. This lead to inefficent tag tree being encoded. This patch fixes the implementation of the ff_tag_tree_zero() function. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-08-30libavcodec/j2kenc: Support for multiple layersGautam Ramakrishnan
This patch allows setting a compression ratio and to set multiple layers. The user has to input a compression ratio for each layer. The per layer compression ration can be set as follows: -layer_rates "r1,r2,...rn" for to create 'n' layers. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-08-30libavcodec/j2kenc: Fix tag tree codingGautam Ramakrishnan
The implementation of tag tree encoding was incorrect. However, this error was not visible as the current j2k encoder encodes only 1 layer. This patch fixes tag tree coding for JPEG2000 such tag tree coding would work for multi layer encoding. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-08-30libavcodec/jpeg2000: Make tag tree functions non staticGautam Ramakrishnan
This patch makes the tag_tree_zero() and tag_tree_size() functions non static and callable from other files. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-08-30avcodec/cfhd: Check transform typeMichael Niedermayer
Fixes: out of array access Fixes: 24823/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_CFHD_fuzzer-4855119863349248 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-08-30avcodec/aacdec_template: Initialize `layout_map` on declarationXiaohan Wang
Without this change, it'll cause use-of-uninitialized-variable error. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-08-30avcodec/mpegvideo_enc: Replace some s->avctx by avctxMichael Niedermayer
Fixes issue reported by: Xu Guangxin <guangxin.xu@intel.com> Original report: Steps to reproduce: 1. ./configure --enable-debug=3 --disable-libx264 && make install 2. ffmpeg -i input.mp4 -profile:v baseline output.mp4 -y you will see a crash like this: [mpeg4 @ 0x5555575854c0] [Eval @ 0x7fffffffbf80] Undefined constant or missing '(' in 'baseline' [mpeg4 @ 0x5555575854c0] Unable to parse option value "baseline" [mpeg4 @ 0x5555575854c0] Error setting option profile to value baseline. Thread 1 "ffmpeg" received signal SIGSEGV, Segmentation fault. root cause: If the codec has FF_CODEC_CAP_INIT_CLEANUP flag, and avcodec_open2 got an error before avctx->codec->init, the ff_mpv_encode_end will face a null s->avctx. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-08-30adtsenc: Add ability to write MPEG2 IDMarvin Scholz
Reviewed-by: Kieran Kunhya <kierank@obe.tv> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-08-30avcodec/cfhd: Replace a few literal numbers by named constantsMichael Niedermayer
Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-08-30avfilter/vf_xfade: fix excessive number of queued framesPaul B Mahol
Also do not abort in some cases too early when transition is over. Fixes #8823.
2020-08-30avcodec/truemotion1: Cleanup generically after init failureAndreas Rheinhardt
Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-30avcodec/y41penc: Remove empty close functionAndreas Rheinhardt
Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-30avcodec/yuv4enc: Remove empty functionsAndreas Rheinhardt
Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-30avcodec/wnv1: Move temporary variables from context to stackAndreas Rheinhardt
Here it even leads to the complete removal of the context. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-30avcodec/wnv1: Use LE bitstream reader, avoid copying packet, fix memleakAndreas Rheinhardt
The Winnov WNV1 format is designed for a little-endian bitstream reader; yet our decoder reversed every byte bitwise (in a buffer only allocated for this purpose) to use a big-endian bitstream reader. This commit stops this. Two things needed to be done to achieve this: The codes in the table used to initialize a VLC reader needed to be reversed bitwise (when initializing a VLC in LE mode, it is expected that the first bit to be read is in the least significant bit; with BE codes the first bit to be read is the most significant bit of the code) and the following expression needed to be adapted: ff_reverse[get_bits(&w->gb, 8 - w->shift)] But this is easy: When only the bits read are reversed, they coincide with what a little-endian bitstream reader reads that reads the original, not-reversed data. But ff_reverse always reverses the full eight bits and this also performs a shift by (8 - (8 - w->shift)) on top of reversing the bits read. So the above line needs to be changed to get_bits(&w->gb, 8 - w->shift) << w->shift and this also shows why the variable shift is named the way it is. Finally, this also fixes a hypothetical memleak: For gigantic packets, initializing a GetBitContext can fail and in this case, the buffer containing the reversed data would leak. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-30avcodec/roqvideoenc: Cleanup generically after init failureAndreas Rheinhardt
Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-30avcodec/roqvideodec: Cleanup generically after init failureAndreas Rheinhardt
Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-30avcodec/mss3: Cleanup generically after init failureAndreas Rheinhardt
Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-30avcodec/mss3: Remove unnecessary free of unallocated frameAndreas Rheinhardt
The frame will only be allocated a few lines below. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-30avcodec/interplayvideo: Cleanup generically after init failureAndreas Rheinhardt
Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-30avcodec/eacmv: Cleanup generically after init failureAndreas Rheinhardt
Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-30avcodec/cinepakenc: Cleanup generically after init failureAndreas Rheinhardt
Reviewed-by: Tomas Härdin <tjoppen@acc.umu.se> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-29avcodec/truemotion2: Avoid duplicating array, fix memleakAndreas Rheinhardt
TrueMotion 2.0 uses Huffmann trees. To parse them, the decoder allocates arrays for the codes, their lengths and their value; afterwards a VLC table is initialized using these values. If everything up to this point succeeds, a new buffer of the same size as the already allocated arrays for the values is allocated and upon success the values are copied into the new array; all the old arrays are then freed. Yet if allocating the new array fails, the old arrays get freed, but the VLC table doesn't. This leak is fixed by not allocating a new array at all; instead the old array is simply reused, ensuring that nothing can fail after the creation of the VLC table. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-29libavformat/mxfenc: color_range should be inclusiveHarry Mallon
MXF CDCI color range was being set to (1<<sc->component_depth) - 1 for full range but it should be (1<<sc->component_depth) as 0 is a valid value. Signed-off-by: Harry Mallon <harry.mallon@codex.online>
2020-08-29avformat/mxfdec: Read video range from CDCIEssenceDescriptorHarry Mallon
* Capture black_ref, white_ref and color_range and recognise full and narrow range. Signed-off-by: Harry Mallon <harry.mallon@codex.online>
2020-08-29x86/cfhddsp: zero extend int argumentsJames Almer
if taken from stack, they may have garbage in the upper bits otherwise. Also, there are only 8 arguments, so don't attempt to load 11. Fixes SIGSEV crashes in some targets. Reviewed-by: durandal_1707 Signed-off-by: James Almer <jamrial@gmail.com>
2020-08-28avformat/mov: See if mfra makes up the difference for an incomplete sidx.Dale Curtis
A few popular sites have started generating MP4 files which have a sidx plus an mfra. The sidx accounts for all size except the mfra, so the old code did not mark the fragment index as complete. Instead we can just check if there's an mfra and if its size makes up the difference we can mark the index as complete. Bug: https://crbug.com/1107130 Signed-off-by: Dale Curtis <dalecurtis@chromium.org> Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2020-08-28avcodec/flacdec: use designated initializers for AVClassPaul B Mahol
2020-08-28avcodec/cfhd: Remove unused-but-set variableAndreas Rheinhardt
Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
2020-08-27avfilter/af_arnndn: use memcpy for copying in compute_rnn()Paul B Mahol
2020-08-27avfilter/af_arnndn: use scalarproduct_float() in dct functionPaul B Mahol
2020-08-27avfilter/af_compensationdelay: always initialize w_ptr with 0Paul B Mahol
It will be changed later anyway, and in case inlink have 0 channels (should never happen) it will not pick some random value.
2020-08-27avfilter/vf_xfade: do not use alpha for average rgb colorPaul B Mahol
2020-08-27avfilter/vf_xfade: add corner wipe transformsPaul B Mahol