summaryrefslogtreecommitdiff
path: root/libavutil
Commit message (Collapse)AuthorAge
* avutil/tx: use llrintf() to convert a float into a 64 bit integerJames Almer2022-11-08
| | | | | | | Should fix fate failures on Windowx x86 targets, where long is 32 bits. Reviewed-by: Martin Storsjö <martin@martin.st> Signed-off-by: James Almer <jamrial@gmail.com>
* avutil/tx: use a lower log level for the debug messagesJames Almer2022-11-08
| | | | | | | The amount of lines printed is too high for the verbose level, and the debug level is a better fit for their content. Signed-off-by: James Almer <jamrial@gmail.com>
* avutil/dict: Improve documentationMarvin Scholz2022-11-06
| | | | | | | | | Mostly consistent formatting and consistently ordering of warnings/notes to be next to the description. Additionally group the AV_DICT_* macros. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* avutil/dict: Use av_dict_iterate in av_dict_get_stringMarvin Scholz2022-11-06
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* avutil/dict: Use av_dict_iterate in av_dict_copyMarvin Scholz2022-11-06
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* avutil/dict: Use av_dict_iterate in av_dict_getMarvin Scholz2022-11-06
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* avutil/dict: Add av_dict_iterateMarvin Scholz2022-11-06
| | | | | | | | This is a more explicit iteration API rather than using the "magic" av_dict_get(d, "", t, AV_DICT_IGNORE_SUFFIX) which is not really trivial to grasp what it does when casually reading through code. Signed-off-by: Anton Khirnov <anton@khirnov.net>
* avutil/tests/cpu: print the avx512icl flagJames Darnley2022-11-04
|
* avutil/channel_layout: add a 7.1(top) channel layoutJames Almer2022-11-03
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avutil/channel_layout: add a cube channel layoutJames Almer2022-10-30
| | | | Signed-off-by: James Almer <jamrial@gmail.com>
* avutil/tx_template: Move function pointers to const memoryAndreas Rheinhardt2022-10-28
| | | | | | | | | | | | This can be achieved by moving the AVOnce out of the structure containing the function pointers; the latter can then be made const. This also has the advantage of eliminating padding in the structure (sizeof(AVOnce) is four here) and allowing the AVOnces to be put into .bss (dependening upon the implementation). Reviewed-by: Lynne <dev@lynne.ee> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avutil/tx_template: Avoid code duplicationAndreas Rheinhardt2022-10-28
| | | | | Reviewed-by: Lynne <dev@lynne.ee> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avutil/tx_template: Don't waste space for inexistent factorsAndreas Rheinhardt2022-10-28
| | | | | | | | | | It is possible to avoid the factors array for the power-of-two tables for which said array is unused by using a different structure for initialization for power-of-two tables than for non-power-of-two-tables. This saves 3*15*16B from .data. Reviewed-by: Lynne <dev@lynne.ee> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avutil/integer: Use '|' instead of '+' where it is more naturalAndreas Rheinhardt2022-10-24
| | | | Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avutil/integer: Fix undefined left shifts of negative numbersAndreas Rheinhardt2022-10-24
| | | | | | Affected the integers FATE-test. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avutil/aes: Don't use out-of-bounds indexAndreas Rheinhardt2022-10-24
| | | | | | | | | | | | | | | Up until now, av_aes_init() uses a->round_key[0].u8 + t as dst of memcpy where it is intended for t to greater than 16 (u8 is an uint8_t[16]); given that round_key itself is an array, it is actually intended for the dst to be in a latter round_key member. To do this properly, just cast a->round_key to unsigned char*. This fixes the srtp, aes, aes_ctr, mov-3elist-encrypted, mov-frag-encrypted and mov-tenc-only-encrypted FATE-tests with (Clang-)UBSan. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* avutil/aes: Don't use misaligned pointersAndreas Rheinhardt2022-10-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The AES code uses av_aes_block, a union consisting of uint64_t[2], uint32_t[4], uint8_t[4][4] and uint8_t[16]. subshift() performs byte-wise manipulations of two av_aes_blocks, but when encrypting, it does so with a shift of two bytes; more precisely, it uses "av_aes_block *s1 = (av_aes_block *) (s0[0].u8 - s)" and lateron uses the uint8_t[16] member to access s0. Yet av_aes_block requires to be suitably aligned for the uint64_t[2] member, which s0[0].u8 - 2 is certainly not. This is in violation of 6.3.2.3 (7) of C11. UBSan reports this in the aes_ctr, mov-3elist-encrypted, mov-frag-encrypted, mov-tenc-only-encrypted and srtp tests. Furthermore, there is another issue here: The pointer points outside of s0; this works, because all the accesses lateron use an index >= 3. (Clang-)UBSan reports this as "runtime error: index -2 out of bounds for type 'uint8_t[16]'". This commit fixes both of these issues: The latter issue is fixed by applying an offset of "+ 3" during the cast and subtracting this from the indices used lateron. The former issue is solved by not casting to av_aes_block* at all; instead simply cast to unsigned char*. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* lavu/thread: add an internal function for setting thread nameAnton Khirnov2022-10-24
| | | | Linux-only for now.
* lavu/hwcontext_vaapi: Fix type specifier for uintptr_tCarl Eugen Hoyos2022-10-23
| | | | | Fixes a format specifier warning on x86_32 Linux. Fixes part of ticket #9986.
* avutil/samplefmt: document missing argumentMarvin Scholz2022-10-17
|
* avutil/aes_ctr: document some missing argumentsMarvin Scholz2022-10-17
|
* avutil/aes: document some missing argumentsMarvin Scholz2022-10-17
|
* avutil/imgutils: document some missing argumentsMarvin Scholz2022-10-17
|
* avutil/crc: Add doxy for missing argumentsMarvin Scholz2022-10-17
|
* avutil/des: Add doxy for missing argumentsMarvin Scholz2022-10-17
| | | | | Additionally reorder so that the arguments list matches the order of the arguments in the function declaration.
* avutil/avstring: Add doxy for missing argumentMarvin Scholz2022-10-17
|
* avutil/frame: Add doxy for missing argumentMarvin Scholz2022-10-17
|
* avutil/rc4: Add doxy for missing argumentsMarvin Scholz2022-10-17
|
* avutil/uuid: Remove bogus doxy return docMarvin Scholz2022-10-17
| | | | The function returns void and no error code.
* avutil/parseutils: Use inline code and properly escapeMarvin Scholz2022-10-17
| | | | | For some reason doxygen needs the % to be escaped here, except for the %% in the inline code…
* avutil/parseutils: Add doxy for missing argumentsMarvin Scholz2022-10-17
|
* avutil/hwcontext: Add doxy for missing argumentMarvin Scholz2022-10-17
|
* avutil/lfg: Minor doxy improvementsMarvin Scholz2022-10-17
| | | | Use inline code for sizeof and use proper @return directive.
* avutil/lfg: Add doxy for missing argumentMarvin Scholz2022-10-17
|
* avutil/file: Add doxy for missing argumentsMarvin Scholz2022-10-17
|
* avutil/eval: Add doxy for missing argumentsMarvin Scholz2022-10-17
|
* avutil/detection_bbox: Add doxy for missing argumentMarvin Scholz2022-10-17
|
* avutil/channel_layout: Document missing argumentsMarvin Scholz2022-10-17
|
* avutil/channel_layout: Use inline code for DoxyMarvin Scholz2022-10-17
| | | | | This avoids Doxygen to interpret <i> and others that look like XML tags as those, fixing a warning about unknown tags.
* avutil/camellia: Fix doxy @param typoMarvin Scholz2022-10-17
|
* avutil/bprint: Improve doxy documentationMarvin Scholz2022-10-17
| | | | | | | Declare proper group, add the file to that group, group the defines and document them. Use lists to represents lists of cases.
* avutil/csp: Fix bogus doxy filenameMarvin Scholz2022-10-17
| | | | | | | | | Separate the blocks to make the grouping easier to grasp, add the file properly to the group and fix the file description incorrectly used as filename, fixing the following doxy warning: warning: the name 'Colorspace' supplied as the argument in the \file statement is not an input file
* avutil/stereo3d: Add file to doxy groupMarvin Scholz2022-10-17
| | | | | This way the related file will be properly grouped with its corresponding group like it's done in other places in the doxy.
* avutil/stereo3d: consolidate group doxyMarvin Scholz2022-10-17
| | | | | | | | | Make it a bit easier to grasp the grouping when not unnecessarily splitting comment blocks. Additionally do not try to add lavu_video_stereo3d to itself, resolving the following doxy warning: warning: Refusing to add group lavu_video_stereo3d to itself
* avutil/spherical: Add file to doxy groupMarvin Scholz2022-10-17
| | | | | This way the related file will be properly grouped with its corresponding group like it's done in other places in the doxy.
* avutil/spherical: consolidate group doxyMarvin Scholz2022-10-17
| | | | | | | | | Make it a bit easier to grasp the grouping when not unnecessarily splitting comment blocks. Additionally do not try to add lavu_video_spherical to itself, resolving the following doxy warning: warning: Refusing to add group lavu_video_spherical to itself
* avutil/display: Add file to doxy groupMarvin Scholz2022-10-17
| | | | | This way the related file will be properly grouped with its corresponding group like it's done in other places in the doxy.
* avutil/display: consolidate group doxyMarvin Scholz2022-10-17
| | | | | | | | | Make it a bit easier to grasp the grouping when not unnecessarily splitting comment blocks. Additionally do not try to add lavu_video_display to itself, resolving the following doxy warning: warning: Refusing to add group lavu_video_display to itself
* avutil/aes_ctr: Add proper doxy groupMarvin Scholz2022-10-17
| | | | | So it will be properly listed along the other crypto modules in the documentation.
* avutil/twofish: Fix doxy @param typoMarvin Scholz2022-10-17
|