summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* avcodec/pngenc: support writing iCCP chunksNiklas Haas2022-04-11
| | | | | | | | | | | | | | | | | We re-use the PNGEncContext.zstream for deflate-related operations. Other than that, the code is pretty straightforward. Special care needs to be taken to avoid writing more than 79 characters of the profile description (the maximum supported). To write the (dynamically sized) deflate-encoded data, we allocate extra space in the packet and use that directly as a scratch buffer. Modify png_write_chunk slightly to allow pre-writing the chunk contents like this. Also add a FATE transcode test to ensure that the ICC profile gets encoded correctly. Signed-off-by: Niklas Haas <git@haasn.dev>
* doc/filters: guide to list lensfun db emtriesGyan Doshi2022-04-11
|
* vaapi_encode_h265: Query encoding block sizes and featuresMark Thompson2022-04-11
| | | | Signed-off-by: Fei Wang <fei.w.wang@intel.com>
* vaapi_encode_h265: Explicitly set and correct some flagsMark Thompson2022-04-11
| | | | | | | | | | | | | max_14bit_constraint_flag should be set if the bit depth is not greater than 14 (currently always true). one_picture_only_flag should not be set because we don't support the still picture profiles. general_profile_compatibility_flag should be set according to general_profile_idc instead of bit depth. Signed-off-by: Fei Wang <fei.w.wang@intel.com>
* vaapi_encode: Move block size calculation after entrypoint selectionMark Thompson2022-04-11
| | | | | | | | The block size can be dependent on the profile and entrypoint selected. It defaults to 16x16, with codecs able to override this choice with their own function. Signed-off-by: Fei Wang <fei.w.wang@intel.com>
* lavc/vaapi_encode_h265: Add GPB frame support for hevc_vaapiLinjie Fu2022-04-11
| | | | | | | | | | | | | Use GPB frames to replace regular P/B frames if backend driver does not support it. - GPB: Generalized P and B picture. Regular P/B frames replaced by B frames with previous-predict only, L0 == L1. Normal B frames still have 2 different ref_lists and allow bi-prediction Signed-off-by: Linjie Fu <linjie.fu@intel.com> Signed-off-by: Fei Wang <fei.w.wang@intel.com>
* avfilter: let single output frame A->V filters set reasonable frame ratePaul B Mahol2022-04-10
|
* fate: add fate tests for VBN encoder and decoderMarton Balint2022-04-10
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* avcodec/vbnenc: add VBN encoderMarton Balint2022-04-10
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* avcodec/vbndec: add VBN decoderMarton Balint2022-04-10
| | | | | | | | Add support for decoding Vizrt Binary Image (VBN) files. LZW-compressed data is not supported yet. Signed-off-by: Marton Balint <cus@passwd.hu>
* avcodec/hapenc: use the common texturedsp encode functionMarton Balint2022-04-10
| | | | | | And add slice thread capabilities. Signed-off-by: Marton Balint <cus@passwd.hu>
* avcodec/hapdec: use the common texturedsp decode functionMarton Balint2022-04-10
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* avcodec/dds: use the common texture dsp decode functionMarton Balint2022-04-10
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* avcodec/texturedsp: add TextureDSPThreadContext for common decode/encode ↵Marton Balint2022-04-10
| | | | | | | | | function This will allow using a common threaded decode or encode function from most codecs using texture DSP functions. Signed-off-by: Marton Balint <cus@passwd.hu>
* fate/filter-refcmp-*: make refcmp_metadata fail on empty or truncated inputMarton Balint2022-04-10
| | | | | | | | | | | | | On empty input the awk script was always successful which caused the filter-refcmp tests to always succeed. Also fix the command lines for refcmp_metadata compare function because it needs auto conversion filters, and update reference of test filter-refcmp-psnr-rgb because it was missed in a7fc78c1a638a32c3695c06f727774c740d675c2 but was never noticed due to the original issue... Signed-off-by: Marton Balint <cus@passwd.hu>
* avcodec/binkaudio: fix indentation to match previous linePeter Ross2022-04-10
| | | | Signed-off-by: Peter Ross <pross@xvid.org>
* avcodec/libwebpenc_animencoder: Fix memory leak of WebPData in ↵Andrey Volk2022-04-10
| | | | | | | libwebp_anim_encode_frame() Signed-off-by: Andrey Volk <andywolk@gmail.com> Signed-off-by: Marton Balint <cus@passwd.hu>
* avdevice/dshow: Fix dshow device name/descriptionRomain Beauxis2022-04-09
| | | | Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/codec2: remove surplus include 'memory.h' statementPeter Ross2022-04-09
| | | | | | | | on glibc memory.h drags in string.h, but codec2 does not use any str* or mem* functions. additionally, memory.h is not part of the C99 or POSIX standards. Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/mpegts.c: ignore a section with next flagTADANO Tokumei2022-04-09
| | | | | | | | | | | 'current_next_indicator' of 0 (next) on each section header indicates the service information is for immediate future one. ffmpeg doesn't need to parse it but current (1) one. ref: section 5.1.1 of DVB BlueBook A038 (EN 300 468) Signed-off-by: TADANO Tokumei <aimingoff@pc.nifty.jp> Signed-off-by: Marton Balint <cus@passwd.hu>
* avformat/mpegts.c: fix to check end of each descriptor of SDTTADANO Tokumei2022-04-09
| | | | | | | | Current code incorrectly check against end of section rather than end of descriptor. Signed-off-by: TADANO Tokumei <aimingoff@pc.nifty.jp> Signed-off-by: Marton Balint <cus@passwd.hu>
* avcodec/dvdsubdec: fix incorrect yellow appearance of dvd subtitlessoftworkz2022-04-09
| | | | | | | | | | | | The guess_palette() implementation is questionable in itself as its results don't match those from other DVD subtitle decoders. This commit starts cleanup by fixing an obvious bug which has made certain DVD subs appear yellow instead of white or grey for more than 10 years.. Signed-off-by: softworkz <softworkz@hotmail.com> Signed-off-by: rcombs <rcombs@rcombs.me>
* fate: update reference files after the recent dash manifest muxer changesJames Almer2022-04-08
| | | | | | Missed in 487b49d8f2e1e81dce86230fc957ca2ee9de00ee. Signed-off-by: James Almer <jamrial@gmail.com>
* avfilter/vf_waveform: copy props from input framePaul B Mahol2022-04-08
|
* avfilter/vf_waveform: add some support for commandsPaul B Mahol2022-04-08
|
* avfilter/vf_vectorscope: add some commands supportPaul B Mahol2022-04-08
|
* avfilter/vf_drawbox: add packed rgb supportPaul B Mahol2022-04-08
|
* avfilter/vf_colorkey: use multiplication instead of divisionPaul B Mahol2022-04-08
|
* avfilter/vf_colorkey: add >8 depth supportPaul B Mahol2022-04-08
|
* avformat/smacker: add better seeking supportPaul B Mahol2022-04-08
|
* qsvenc: fix typoHaihao Xiang2022-04-08
| | | | | Reviewed-by: U. Artie Eoff <ullysses.a.eoff@intel.com> Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* avformat/webmdashenc: fix on-demand profile stringJames Almer2022-04-07
| | | | | | Fixes ticket #9596 Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec/libdav1d: don't depend on the event flags API to init sequence ↵James Almer2022-04-07
| | | | | | | | | | | | | | params the first time A bug was found in dav1d <= 1.0.0 where the event flag New Sequence Header would not be signaled for some samples using delayed random access points. It has since been fixed, but nonetheless it's best to ensure the AVCodecContext is filled with parameters when parsing the first frame, regardless of what events were signaled. Fixes ticket #9694. Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec/libsvtav1: give svtav1-params priority over avctx valuesJames Almer2022-04-07
| | | | | | | | | | If the svt equivalent option to an avctx AVOption is passed by the user then it should have priority. The exception are fields like dimensions, bitdepth and pixel format, which must match what lavc will feed the encoder after init. This addresses libsvt-av1 issue #1858. Signed-off-by: James Almer <jamrial@gmail.com>
* avfilter/f_ebur128: multiply in integer first, before dividing in floatHendrik Leppkes2022-04-07
| | | | | Restores the order of operations from before 15a1104, which reduces errors from floating point calculations, and fixes FATE on mingw64.
* doc/filters: add range/defaults for tile filter optionsGyan Doshi2022-04-07
|
* avfilter/af_ladspa: fix pts compensation if number of samples per frame is ↵Paul B Mahol2022-04-07
| | | | lower than latency
* avfilter/af_ladspa: compensate output pts if latency compensation is onPaul B Mahol2022-04-06
|
* libavcodec/qsvenc: Add more pixel format support to qsvencWenbin Chen2022-04-06
| | | | | | | | | Qsv encoder only support input P010 and nv12 format directly from system memory. For other format, we need to upload frame to device memory and input qsv format to encoder. Now add other system memory format support to qsv encoder. Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
* libavcodec/qsvdec: Add more pixel format support to qsvdecWenbin Chen2022-04-06
| | | | | | | | Qsv decoder only supports directly output nv12 and p010 to system memory. For other format, we need to download frame from qsv format to system memory. Now add other supported format to qsvdec. Signed-off-by: Wenbin Chen <wenbin.chen@intel.com>
* libavcodec/qsvdec: using suggested num to set init_pool_sizeWenbin Chen2022-04-06
| | | | | | | | | | | | The init_pool_size is set to be 64 and it is too many. Use IOSurfQuery to get NumFrameSuggest which is the suggested number of frame that needed to be allocated when initializing the decoder. Considering that the hevc_qsv encoder uses the most frame buffer, async is 4 (default) and max_b_frames is 8 (default) and decoder may followed by VPP, use NumFrameSuggest + 16 to set init_pool_size. Signed-off-by: Wenbin Chen <wenbin.chen@intel.com> Signed-off-by: Guangxin Xu <guangxin.xu@intel.com>
* libavcodec/qsvdec: remove redundant decodeHeader()Wenbin Chen2022-04-06
| | | | | | | | | | | | Since ffmpeg-qsv uses return value to reinit decoder, it doesn't need to decode header each time. Move qsv_decode_header's position so that it will be called only if codec needed to be reinitialized. Rearrange the code of flushing decoder and re-init decoder operation. Remove the buffer_count and use the got_frame to decide whether the decoder is drain. Signed-off-by: Wenbin Chen <wenbin.chen@intel.com> Signed-off-by: Guangxin Xu <guangxin.xu@intel.com>
* libavcodec/qsvdec: reinit decoder according to decode() return valueWenbin Chen2022-04-06
| | | | | | | | | | FFmpeg-qsv decoder reinit codec when width and height change, but there are not only resolution change need to reinit codec. I change it to use return value from DecodeFrameAsync() to decide whether decoder need to be reinitialized. Signed-off-by: Wenbin Chen <wenbin.chen@intel.com> Signed-off-by: Guangxin Xu <guangxin.xu@intel.com>
* libavcodec/qsvenc: enable LowDelayBRC and MaxFrameSizeI/MaxFrameSizeP for ↵He, Fan F2022-04-06
| | | | | | | | | | more accurate bitrate control Feature introduction of LowDelayBRC, MaxFrameSizeI and MaxFrameSizeP could be found here: https://github.com/Intel-Media-SDK/MediaSDK/blob/master/doc/mediasdk-man.md Signed-off-by: Dmitry Ermilov <dmitry.ermilov@intel.com> Signed-off-by: Fan F He <fan.f.he@intel.com>
* libavutil/hwcontext_vaapi: Re-enable support for libva v1Ingo Brückl2022-04-06
| | | | | | | | | | | | | | | | Commit e050959103f375e6494937fa28ef2c4d2d15c9ef implemented passing in modifiers by using the PRIME_2 memory type, which only exists in v2 of the library. To still support v1 of the library, conditionally compile using VA_CHECK_VERSION() for both the new code and the old code before the commit. Note PRIME_2 memory was introduced from VA-API 1.1, so use VA_CHECK_VERSION(1, 1, 0) instead of VA_CHECK_VERSION(2, 0, 0) (Haihao) Signed-off-by: Ingo Brückl <ib@wupperonline.de> Signed-off-by: Haihao Xiang <haihao.xiang@intel.com>
* doc/fate: add note about showing test names and running a tests subsetStefano Sabatini2022-04-06
|
* avcodec/libvpxenc: enable dynamic max quantizer reconfigurationDanil Chapovalov2022-04-05
| | | | Signed-off-by: James Zern <jzern@google.com>
* tests: use a filtergraph script for fate-mov-channel-descriptionJames Almer2022-04-05
| | | | | | Should fix running the test on certain shells Signed-off-by: James Almer <jamrial@gmail.com>
* avcodec/vp9_raw_reorder_bsf: Merge close and flushAndreas Rheinhardt2022-04-05
| | | | | | Also mark the function as av_cold while at it. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avcodec/vp9_raw_reorder_bsf: Fix leak of cached packetAndreas Rheinhardt2022-04-05
| | | | | | | | | | In case the BSF has not been drained before flushing/closing, the context's next_frame might be set; yet it is not freed in flush or close. The former only zeroes it (which automatically causes a leak in case it was set). So do this when closing and flushing. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>