Update dav1d to new version 4b9f5b704e299543afcea87f375a308b90ef6c70 from 2022-11-10 00:58:40
Categories
(Core :: Audio/Video: Playback, enhancement)
Tracking
()
People
(Reporter: update-bot, Assigned: chunmin)
Details
(Whiteboard: [3pl-filed][task_id: TCk1Wq7dQJuLTcsZH6K3mA])
Attachments
(2 files)
This update covers 44 commits:
4b9f5b704e299543afcea87f375a308b90ef6c70 by Charlie Hayden
https://code.videolan.org/videolan/dav1d/commit/4b9f5b704e299543afcea87f375a308b90ef6c70
Authored: 2022-11-02 21:38:29 -0700
Committed: 2022-11-10 00:58:40 +0000
Add info to dav1d_send_data docs
Files Modified:
- include/dav1d/dav1d.h
21abfb98667b40b9537ea2310310d7254fcdfdad by Jan Beich
https://code.videolan.org/videolan/dav1d/commit/21abfb98667b40b9537ea2310310d7254fcdfdad
Authored: 2022-10-30 08:32:55 +0000
Committed: 2022-10-30 08:48:59 +0000
build: drop -D_DARWIN_C_SOURCE on macOS/iOS after 6b611d36acab
Already implied when -D_POSIX_C_SOURCE is not passed.
Files Modified:
- meson.build
7409a1894c2e9d5291760703da1ce6c95dd7b815 by Jan Beich
https://code.videolan.org/videolan/dav1d/commit/7409a1894c2e9d5291760703da1ce6c95dd7b815
Authored: 2022-10-30 08:20:02 +0000
Committed: 2022-10-30 08:48:35 +0000
build: drop -D_POSIX_C_SOURCE on non-Linux after 6b611d36acab
Non-GNU systems enable extensions (XSI, BSD, GNU) by default.
Files Modified:
- meson.build
8f16314dba8bd1ec9d958bbb8bfba002967bd6a8 by Victorien Le Couviour--Tuffet
https://code.videolan.org/videolan/dav1d/commit/8f16314dba8bd1ec9d958bbb8bfba002967bd6a8
Authored: 2022-06-28 19:14:07 +0200
Committed: 2022-10-27 13:03:22 +0000
threading: Add a pending list for async task insertion
Files Modified:
- src/decode.c
- src/internal.h
- src/lib.c
- src/thread_task.c
8a4932ff035e2fd2b139caa73f6593c2a4754f67 by Martin Storsjö
https://code.videolan.org/videolan/dav1d/commit/8a4932ff035e2fd2b139caa73f6593c2a4754f67
Authored: 2022-10-26 10:00:01 +0300
Committed: 2022-10-26 16:14:52 +0300
Implement atomic_compare_exchange_strong in the atomic compat headers
This fixes building with MSVC (and older GCC versions) after
3e7886db54d0cb3ce32909c71ad2a8c9d9eab223.
Files Modified:
- include/compat/gcc/stdatomic.h
- include/compat/msvc/stdatomic.h
3e7886db54d0cb3ce32909c71ad2a8c9d9eab223 by Victorien Le Couviour--Tuffet
https://code.videolan.org/videolan/dav1d/commit/3e7886db54d0cb3ce32909c71ad2a8c9d9eab223
Authored: 2022-10-06 11:14:06 +0200
Committed: 2022-10-20 14:23:30 +0200
threading: Fix a race around frame completion (frame-mt)
The completion of the first frame to decode while an async reset
request on that same frame is pending will render it stale. The
processing of such a stale request is likely to result in a hang.
One reason this happens is the skip condition at the beginning of
reset_task_cur().
=> Consume the async request before that check.
Another reason is several threads producing async reset requests in
parallel: an async request for the first frame could cascade through the
other threads (other frames) during completion of that frame, meaning
not being caught by the last synchronous reset_task_cur() after
signaling the main thread and before releasing the lock.
=> To solve this we need to add protections at the racy locations. That
means after we increase first, before returning from
reset_task_cur_async(), and after consuming the async request.
Files Modified:
- src/decode.c
- src/lib.c
- src/obu.c
- src/thread_task.c
5b07b4256617913ec81277f07af592ebd62b11a3 by Sebastian Dröge
https://code.videolan.org/videolan/dav1d/commit/5b07b4256617913ec81277f07af592ebd62b11a3
Authored: 2022-10-07 16:13:49 +0300
Committed: 2022-10-10 12:23:12 +0300
Handle host_machine.system() 'ios' and 'tvos' the same way as 'darwin'
Despite not being documented in Meson's list of canonical system names,
Meson does accept 'ios' mostly a synonym for darwin.
By using 'ios' instead of darwin, it allows distinguishing between the
two in the cases where that is necessary. Therefore, within dav1d, allow
using the 'ios' name as alias for 'darwin' for system name, to allow
using cross files that does this distinction.
meson itself also allows 'tvos' in addition to 'ios' in the internal
is_darwin()
function, as such all 3 are handled the same here.
Files Modified:
- meson.build
cac76e4b6641dd26dd87fd749261526ae7469d3e by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/cac76e4b6641dd26dd87fd749261526ae7469d3e
Authored: 2022-09-23 23:03:14 +0200
Committed: 2022-09-30 17:59:31 +0200
x86: Add 10-bit 8x8/8x16/16x8/16x16 itx AVX-512 (Ice Lake) asm
Files Added:
- src/x86/itx16_avx512.asm
Files Modified:
- src/meson.build
- src/x86/itx.h
- src/x86/itx_avx512.asm
e4c4af02f3de5e6cea6f81272a2981c0fa7bae28 by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/e4c4af02f3de5e6cea6f81272a2981c0fa7bae28
Authored: 2022-09-30 00:11:29 +0200
Committed: 2022-09-30 15:04:20 +0000
Specify hidden visibility for global data symbol declarations
'-fvisibility=hidden' only applies to definitions, not declarations,
so the compiler has to be conservative about how references to global
data symbols are performed.
Explicitly specifying the visibility allows for better code generation.
Files Modified:
- include/common/attributes.h
- src/cpu.h
- src/dequant_tables.h
- src/qm.h
- src/scan.h
- src/tables.h
- src/wedge.h
58c856b76ad423efe59a518b5f02752354e0d0d8 by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/58c856b76ad423efe59a518b5f02752354e0d0d8
Authored: 2022-09-28 13:57:59 +0200
Committed: 2022-09-28 16:12:31 +0200
build: strip() the result of cc.get_define()
Whitespace is added to the result if compiling with MSVC using /std:c11
which breaks various things. Adding strip() fixes the problem.
Files Modified:
- meson.build
0b0b5fbf832a8744b72eaf085253138b82d7a7a3 by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/0b0b5fbf832a8744b72eaf085253138b82d7a7a3
Authored: 2022-09-26 15:14:36 +0200
Committed: 2022-09-28 16:06:40 +0200
checkasm: Move printf format string to .rodata on x86
Files Modified:
- tests/checkasm/x86/checkasm.asm
6fefa6a55cc1cc1cefad93e9f78efd0725fd8efa by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/6fefa6a55cc1cc1cefad93e9f78efd0725fd8efa
Authored: 2022-09-26 15:14:34 +0200
Committed: 2022-09-28 16:06:39 +0200
checkasm: Improve 32-bit parameter clobbering on x86-64
Use explicit parameter type detection and manually clobber the
upper bits instead of relying on internal compiler behavior.
Files Modified:
- meson.build
- tests/checkasm/checkasm.h
- tests/checkasm/x86/checkasm.asm
8349845c8cb2d296e0d89416538c5f7215ca8a08 by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/8349845c8cb2d296e0d89416538c5f7215ca8a08
Authored: 2022-09-26 15:33:38 +0200
Committed: 2022-09-26 15:38:13 +0200
x86: Fix incorrect 32-bit parameter usage in high bit-depth AVX-512 mc
The 32-bit width parameter was used directly as a pointer offset, but
the upper half is undefined. Fix it by replacing 'cmp' with 'sub' to
explicitly zero those bits.
Files Modified:
- src/x86/mc16_avx512.asm
345127a79532a679de025b031bdbc264df5f17ea by Martin Storsjö
https://code.videolan.org/videolan/dav1d/commit/345127a79532a679de025b031bdbc264df5f17ea
Authored: 2022-09-09 12:16:03 +0300
Committed: 2022-09-19 20:40:34 +0000
arm: itx: Add clipping to row_clip_min/max in the 10 bpc codepaths
This fixes conformance with the argon test samples, in particular
with these samples:
profile0_core/streams/test10100_579_8614.obu
profile0_core/streams/test10218_6914.obu
This gives a pretty notable slowdown to these transforms - some
examples:
Before: Cortex A53 A72 A73 Apple M1
inv_txfm_add_8x8_dct_dct_1_10bpc_neon: 365.7 290.2 299.8 0.3
inv_txfm_add_16x16_dct_dct_2_10bpc_neon: 1865.2 1384.1 1457.5 2.6
inv_txfm_add_64x64_dct_dct_4_10bpc_neon: 33976.3 26817.0 24864.2 40.4
After:
inv_txfm_add_8x8_dct_dct_1_10bpc_neon: 397.7 322.2 335.1 0.4
inv_txfm_add_16x16_dct_dct_2_10bpc_neon: 2121.9 1336.7 1664.6 2.6
inv_txfm_add_64x64_dct_dct_4_10bpc_neon: 38569.4 27622.6 28176.0 51.0
Thus, for the transforms alone, it makes them around 10-13% slower
(the Apple M1 measurements are too noisy to be conclusive here).
Measured on actual full decoding, it makes decoding of 10 bpc
Chimera around maybe 1% slower on an Apple M1 - close to measurement
noise anyway.
Files Modified:
- src/arm/32/itx16.S
- src/arm/64/itx16.S
9c74a9b01d34ca0df44c5b38970e43273c459918 by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/9c74a9b01d34ca0df44c5b38970e43273c459918
Authored: 2022-09-15 13:51:55 +0200
Committed: 2022-09-19 15:09:41 +0000
x86: Fix overflows in 12bpc AVX2 IDCT/IADST
Files Modified:
- src/x86/itx16_avx2.asm
49b1c3c54c0ddb61be1342a7783f127ea343fddf by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/49b1c3c54c0ddb61be1342a7783f127ea343fddf
Authored: 2022-09-15 13:51:54 +0200
Committed: 2022-09-19 15:09:41 +0000
x86: Fix overflows in 12bpc AVX2 DC-only IDCT
Using smaller immediates also results in a small code size reduction in
some cases, so apply those changes to the (10bpc-only) SSE code as well.
Files Modified:
- src/x86/itx16_avx2.asm
- src/x86/itx16_sse.asm
0c8a3461b8253252ca400b0e2e06b4814e930006 by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/0c8a3461b8253252ca400b0e2e06b4814e930006
Authored: 2022-09-15 13:51:53 +0200
Committed: 2022-09-19 15:09:41 +0000
x86: Fix clipping in high bit-depth AVX2 4x16 IDCT
Certain clips were incorrectly performed on negated values, which
caused things to be off-by-one in both directions. Correct this by
negating such values prior to clipping instead of afterwards.
Files Modified:
- src/x86/itx16_avx2.asm
cc9651f5163362a54a22400d8fe8d97df1e21d4b by Martin Storsjö
https://code.videolan.org/videolan/dav1d/commit/cc9651f5163362a54a22400d8fe8d97df1e21d4b
Authored: 2022-03-21 13:54:43 +0200
Committed: 2022-09-15 11:25:37 +0300
Don't use gas-preprocessor with clang-cl for arm targets
Since meson 0.58.0 (released in May 2021), meson accepts adding '.S'
assembly files as source files to the clang-cl compiler.
If using an older version of meson, keep using gas-preprocessor
just like for MSVC builds.
Files Modified:
- meson.build
d4a2b75da69da1891682fa40ec9e1ca99d3cf950 by David Conrad
https://code.videolan.org/videolan/dav1d/commit/d4a2b75da69da1891682fa40ec9e1ca99d3cf950
Authored: 2022-06-07 15:18:04 -0700
Committed: 2022-09-15 00:28:22 +0000
Fix checking the reference dimesions for the projection process
Section 7.9.2 returns 0 "If RefMiRows[ srcIdx ] is not equal to MiRows,
RefMiCols[ srcIdx ] is not equal to MiCols"
dav1d was comparing pixel width/height, not block width/height,
so conform with the spec
Files Modified:
- src/decode.c
eb25f00cb16d7d57583ab17678cf25555e9ab81a by David Conrad
https://code.videolan.org/videolan/dav1d/commit/eb25f00cb16d7d57583ab17678cf25555e9ab81a
Authored: 2022-06-07 15:10:39 -0700
Committed: 2022-09-15 00:28:22 +0000
Fix calculation of OBMC lap dimensions
Individual OBMC lapped predictions have a max width of 64 pixels
for the top lap and have a max height of 64 for the left laps
This is 7.11.3.9. Overlapped motion compensation process
step4 = Clip3( 2, 16, Num_4x4_Blocks_Wide[ candSz ] )
dav1d wasn't clipping this as needed, which means that with scaled MC, the
interpolation of the 2nd half of a 128 block was incorrect, since mx/my
for subpel filter selection need to be reset at the 64 pixel boundary
Files Modified:
- src/recon_tmpl.c
10f5ce5441778a2f1e2bdf8da09395b51d295401 by David Conrad
https://code.videolan.org/videolan/dav1d/commit/10f5ce5441778a2f1e2bdf8da09395b51d295401
Authored: 2022-06-07 15:09:39 -0700
Committed: 2022-09-15 00:28:22 +0000
Support film grain application whose only effect is clipping to video range
This is the parameter combination:
num_y_points == 0 && num_cb_points == 0 && num_cr_points == 0 &&
chroma_scaling_from_luma == 1 && clip_to_restricted_range == 1
Film grain application has two effects: adding noise, and optionally
clipping to video range
For luma, the spec skips film grain application if there's no noise
(num_y_points == 0), but for chroma, it's only skipped if there's no
chroma noise and chroma_scaling_from_luma is false
This means it's possible for there to be no noise (num_*_points = 0), but
if clip_to_restricted_range is true then chroma pixels can be clipped to
video range, if chroma_scaling_from_luma is true. Luma pixels, however,
aren't clipped to video range unless there's noise to apply.
dav1d currently skips applying film grain entirely if there is no noise,
regardless of the secondary clipping.
Files Modified:
- src/fg_apply_tmpl.c
- src/lib.c
673ee2486521446b2500124d4826a84403d2aaca by David Conrad
https://code.videolan.org/videolan/dav1d/commit/673ee2486521446b2500124d4826a84403d2aaca
Authored: 2022-06-07 15:06:24 -0700
Committed: 2022-09-15 00:28:22 +0000
Ignore T.35 metadata if the OBU contains no payload
The syntax of itu_t_t35_payload_bytes is not defined in the AV1
specification, but it does state that decoders should ignore the
entire OBU if they do not understand it.
Files Modified:
- src/obu.c
2152826bc959466a8eea4b97d8249be634b26171 by David Conrad
https://code.videolan.org/videolan/dav1d/commit/2152826bc959466a8eea4b97d8249be634b26171
Authored: 2022-06-07 15:05:50 -0700
Committed: 2022-09-15 00:28:22 +0000
Fix chroma deblock filter size calculation for lossless
In section 5.11.34 txSz is always defined to TX_4X4 if Lossless is true
Chroma deblock filter size calculation needs to use this overridden txSz
when lossless is enabled
Files Modified:
- src/decode.c
e202fa082b6699e60ec2806c067f34a82750b4fa by David Conrad
https://code.videolan.org/videolan/dav1d/commit/e202fa082b6699e60ec2806c067f34a82750b4fa
Authored: 2022-06-07 15:05:12 -0700
Committed: 2022-09-15 00:28:22 +0000
Fix rounding in the calculation of initialSubpelX
The spec divides err by two, rounding to 0, instead of >>1,
which rounds towards negative infinity
Files Modified:
- src/decode.c
ee98592ba27aa0c958778eef998ed89a664e252d by David Conrad
https://code.videolan.org/videolan/dav1d/commit/ee98592ba27aa0c958778eef998ed89a664e252d
Authored: 2022-06-07 15:03:36 -0700
Committed: 2022-09-15 00:28:22 +0000
Fix overflow when saturating dequantized coefficients clipped to 0
It's possible to encode a large coefficient that becomes 0 after
the clipping in dequant (Abs( dq ) & 0xFFFFFF), e.g. 0x1000000
After that &0xFFFFFF, coeffs are saturated in the range of
[-(1 << (bitdepth+7)), 1 << (bitdepth+7))
dav1d implements this saturation via umin(dq - sign, cf_max), then applies
the sign afterwards via xor. However, for dq = 0 and sign = 1, this step
evaulates to umin(UINT_MAX, cf_max) == cf_max instead of the expected 0.
So instead, do unsigned saturate as umin(dq, cf_max + sign),
then apply sign via (sign ? -dq : dq)
On arm this is the same number of instructions, since cneg exists and is used
On x86 this requires an additional instruction, but this isn't a
latency-critical path
Files Modified:
- src/recon_tmpl.c
1bdb776c71d615e9a1a4890bbc53f979e225e150 by David Conrad
https://code.videolan.org/videolan/dav1d/commit/1bdb776c71d615e9a1a4890bbc53f979e225e150
Authored: 2022-06-08 13:50:02 -0700
Committed: 2022-09-15 00:28:22 +0000
Fix overflow in 8-bit NEON ADST
In 8-bit adst, it's possible that the final Round2(x[0], 12) can exceed
16-bits signed
Specifically, in 7.13.2.6. Inverse ADST4 process, the precision requirement is:
"It is a requirement of bitstream conformance that all values stored in the
s and x arrays by this process are representable by a signed integer using
r + 12 bits of precision."
For 8 bits, r is 16 for both row and column, so x[] can be 28-bit signed.
For values [134215680, 134217727] (within 2047 of the maximum 28-bit value),
the final Round2(x[0], 12) evaluates to 32768, exceeding 16-bits signed.
So switch to using sqrshrn, which saturates to 16-bits signed
This is a continuation of: Commit b53ff29d80a21180e5ad9bbe39a02541151f4f53
arm: itx: Do clipping in all narrowing downshifts
Files Modified:
- src/arm/64/itx.S
08c708015ec372b6c28d341cba7bbc86843cc17b by Martin Storsjö
https://code.videolan.org/videolan/dav1d/commit/08c708015ec372b6c28d341cba7bbc86843cc17b
Authored: 2022-09-14 11:40:09 +0300
Committed: 2022-09-14 15:59:19 +0300
tools: Allocate the priv structs with proper alignment
Previously, they could be allocated with any random alignment
matching the end of the MuxerContext/DemuxerContext. The
priv structs themselves can have members that require specific
alignment, or at least the default alignment of malloc()/calloc()
(which is sufficient for native types such as uint64_t and
doubles).
This fixes crashes in some arm builds, where GCC (correctly) wants
to use 64 bit aligned stores to write to MD5Context.
Files Modified:
- tools/input/input.c
- tools/output/output.c
128a0d8992458698a05fbd4d1bba55a5b7e5cdf4 by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/128a0d8992458698a05fbd4d1bba55a5b7e5cdf4
Authored: 2022-09-08 18:15:28 +0200
Committed: 2022-09-12 14:46:26 +0000
x86: Fix clipping in 10bpc SSE4.1 IDCT asm
Files Modified:
- src/x86/itx16_sse.asm
178681e5fd6fc169fa3313b5263151de2b4a1d5c by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/178681e5fd6fc169fa3313b5263151de2b4a1d5c
Authored: 2022-09-08 16:45:46 +0200
Committed: 2022-09-10 13:32:36 +0000
build: Improve Windows linking options
Files Modified:
- meson.build
5247319775ce71e2494fea97b7d30403e0244db3 by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/5247319775ce71e2494fea97b7d30403e0244db3
Authored: 2022-09-08 19:56:05 +0200
Committed: 2022-09-09 14:40:17 +0000
tools: Improve demuxer probing
Increase the probing size, and change the logic to assume a stream is
valid even if no conclusive decision could be made within the probing
window as long as a sequence header was detected.
Files Modified:
- tools/input/annexb.c
- tools/input/section5.c
934713e4a65bcdb1e89884a6160fd62db081bf53 by Matthias Dressel
https://code.videolan.org/videolan/dav1d/commit/934713e4a65bcdb1e89884a6160fd62db081bf53
Authored: 2022-08-30 22:05:08 +0200
Committed: 2022-09-09 09:21:25 +0200
CI: Disable trimming on some tests
Allow checkasm to run.
Files Modified:
- .gitlab-ci.yml
3920bd9d9dc43e82226ccd79e1bc648276245538 by Matthias Dressel
https://code.videolan.org/videolan/dav1d/commit/3920bd9d9dc43e82226ccd79e1bc648276245538
Authored: 2022-08-30 21:52:49 +0200
Committed: 2022-09-09 09:21:25 +0200
CI: Remove git 'safe.directory' config
It is now handled by the gitlab runner.
Ref: 7d859f9c728e5042f9e1fbb98625d624c489a50e
Files Modified:
- .gitlab-ci.yml
ddb3189c257a2eb50686dec51a77f88d7c9aeb7d by Matthias Dressel
https://code.videolan.org/videolan/dav1d/commit/ddb3189c257a2eb50686dec51a77f88d7c9aeb7d
Authored: 2022-08-30 22:23:20 +0200
Committed: 2022-09-09 09:21:25 +0200
gcovr: Ignore parsing errors
Files Modified:
- gcovr.cfg
aa3fda7800d4878da6ca42a180aaa524a424a602 by Matthias Dressel
https://code.videolan.org/videolan/dav1d/commit/aa3fda7800d4878da6ca42a180aaa524a424a602
Authored: 2022-08-30 22:17:08 +0200
Committed: 2022-09-09 09:20:52 +0200
crossfiles: Update Android toolchains
- Android armv7: target API 19 since it's the lowest directly provided
by the new NDK. - Newer NDK has generic tools for ar, strip, etc.
- Remove windres as it's only relevant for Windows targets.
Files Modified:
- package/crossfiles/aarch64-android.meson
- package/crossfiles/arm-android.meson
d92594bd5d06b40702b586d4d85d5426cd641fe4 by Matthias Dressel
https://code.videolan.org/videolan/dav1d/commit/d92594bd5d06b40702b586d4d85d5426cd641fe4
Authored: 2022-08-30 22:15:06 +0200
Committed: 2022-09-09 09:20:52 +0200
CI: Update images
Remove experimental since gcc12, clang14, mold are now in unstable.
Files Modified:
- .gitlab-ci.yml
6680d26f3013001d97adeba91304a10a878d9488 by Victorien Le Couviour--Tuffet
https://code.videolan.org/videolan/dav1d/commit/6680d26f3013001d97adeba91304a10a878d9488
Authored: 2022-09-08 14:45:35 +0200
Committed: 2022-09-08 14:50:25 +0200
threading: Limit the progress bitfields to the used size
Store the used size instead of the allocated size.
The used size can be smaller than the allocated size, which results in
a wrong computation of the linear progress from the frame_progress
bitfield.
Files Modified:
- src/thread_task.c
fab6427e2a37f995beced2bbe15b8f7a2404bec2 by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/fab6427e2a37f995beced2bbe15b8f7a2404bec2
Authored: 2022-09-08 13:30:00 +0200
Committed: 2022-09-08 11:58:48 +0000
x86: Fix rare crash in chroma film grain asm
The width parameter is used directly as a pointer offset, so ensure
that it has an appropriately sized data type.
This has been done previously for luma, but chroma was overlooked.
Files Modified:
- src/arm/filmgrain.h
- src/filmgrain.h
- src/filmgrain_tmpl.c
677129c26095f5b67052f740ce54b663b43bdfcf by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/677129c26095f5b67052f740ce54b663b43bdfcf
Authored: 2022-09-07 19:07:48 +0200
Committed: 2022-09-07 19:09:55 +0200
x86: Fix overflows in 12bpc AVX2 identity itx asm
Files Modified:
- src/x86/itx16_avx2.asm
58b15237eef865b2673fc3eecf5a07735db32545 by Henrik Gramner
https://code.videolan.org/videolan/dav1d/commit/58b15237eef865b2673fc3eecf5a07735db32545
Authored: 2022-09-07 02:06:25 +0200
Committed: 2022-09-07 02:09:49 +0200
x86: Fix an alignment issue in 8-bit AVX-512 loop restoration
We don't have a separate 8-bit AVX-512 5-tap Wiener filter so the 7-tap
function is used for chroma as well, and in some esoteric edge cases
chroma dst pointers may only have a 32-byte alignment despite having
a width larger than 32, so use an unaligned store as a workaround.
Files Modified:
- src/x86/looprestoration_avx512.asm
895fed08e1de3d0a90c9ecd588cf61d8eee8457b by Victorien Le Couviour--Tuffet
https://code.videolan.org/videolan/dav1d/commit/895fed08e1de3d0a90c9ecd588cf61d8eee8457b
Authored: 2022-09-01 14:04:15 +0200
Committed: 2022-09-02 17:15:18 +0200
checkasm: Add short options
Files Modified:
- tests/checkasm/checkasm.c
713a4f4e50053f851da98973b1ef9d4c6d0ca55f by Victorien Le Couviour--Tuffet
https://code.videolan.org/videolan/dav1d/commit/713a4f4e50053f851da98973b1ef9d4c6d0ca55f
Authored: 2022-09-01 16:10:30 +0200
Committed: 2022-09-02 17:15:18 +0200
checkasm: Add pattern matching to --test
Files Modified:
- tests/checkasm/checkasm.c
a63a7c9674012ec1e384604f5bde4d4d7849fb39 by Victorien Le Couviour--Tuffet
https://code.videolan.org/videolan/dav1d/commit/a63a7c9674012ec1e384604f5bde4d4d7849fb39
Authored: 2022-09-01 13:37:34 +0200
Committed: 2022-09-02 17:15:18 +0200
checkasm: Remove pattern matching from --bench
The pattern matching feature has been improved and is now performed
under the new --function parameter, rendering this one obsolete.
Files Modified:
- tests/checkasm/checkasm.c
d5d37926b675e3d282fd7ee31a2db4c2f16a2b33 by Victorien Le Couviour--Tuffet
https://code.videolan.org/videolan/dav1d/commit/d5d37926b675e3d282fd7ee31a2db4c2f16a2b33
Authored: 2022-08-29 15:09:55 +0200
Committed: 2022-09-02 17:15:18 +0200
checkasm: Add a --function option
Allows to run checkasm only for functions matching a given pattern.
Files Modified:
- tests/checkasm/checkasm.c
a3a55b18494f5dd1e34f289298f78ffa4f32a25d by Victorien Le Couviour--Tuffet
https://code.videolan.org/videolan/dav1d/commit/a3a55b18494f5dd1e34f289298f78ffa4f32a25d
Authored: 2022-08-30 17:21:54 +0200
Committed: 2022-08-30 17:31:28 +0200
threading: Fix copy_lpf_progress initialization
The copy_lpf_progress bitfield might not be fully cleared when size goes
down.
Credit to Oss-Fuzz.
Files Modified:
- src/thread_task.c
Reporter | ||
Comment 1•1 year ago
|
||
TCk1Wq7dQJuLTcsZH6K3mA |
I've submitted a try run for this commit: https://treeherder.mozilla.org/jobs?repo=try&revision=3335880149cbd028bb1c142fe852ca4ef29556cc
Reporter | ||
Comment 2•1 year ago
|
||
Reporter | ||
Comment 3•1 year ago
|
||
KLe4yGHiTmC2l2j8ZTtWYw |
All jobs completed, we found the following issues.
Known Issues (From Push Health):
gfx/layers/apz/test/mochitest/test_group_zoom-2.html
- 1 of 4 failed on the same (retriggered) task
- test-linux1804-64-qr/opt-mochitest-plain-spi-nw-1 (ffYE-4wmSHWi6M_JmE3zTQ)
testing/marionette/harness/marionette_harness/tests/unit/test_quit_restart.py TestQuitRestart.test_in_app_silent_restart_windowless_flag_on_mac_os
- 1 of 4 failed on the same (retriggered) task
- test-macosx1015-64-qr/debug-marionette (BHR3r8LbRLKI_3vDUUp91w)
These failures may mean that the library update succeeded; you'll need to review
them yourself and decide. If there are lint failures, you will need to fix them in
a follow-up patch. (Or ignore the patch I made, and recreate it yourself with
./mach vendor media/libdav1d/moz.yaml
.)
In either event, I have done all I can, so you will need to take it from here.
When reviewing, please note that this is external code, which needs a full and
careful inspection - not a rubberstamp.
Reporter | ||
Updated•1 year ago
|
Reporter | ||
Updated•1 year ago
|
Updated•1 year ago
|
Assignee | ||
Comment 4•1 year ago
|
||
Pushed by cchang@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/591ee1cc9720 Update dav1d to 188dfc89f21ed00e084e4a519a581df5f2ceb35d r=media-playback-reviewers,alwu
Assignee | ||
Updated•1 year ago
|
Comment 6•1 year ago
|
||
bugherder |
Updated•1 year ago
|
Description
•