- 01 Nov, 2018 4 commits
-
-
Janne Grunau authored
Test case clusterfuzz-testcase-minimized-dav1d_fuzzer-5744823991009280 credits to oss-fuzz. Fix #129.
-
Janne Grunau authored
This reverts commit aeb5a5ef.
-
Janne Grunau authored
-
David Michael Barr authored
We can simplify as cdfs have at least 2 symbols.
-
- 31 Oct, 2018 5 commits
-
-
James Almer authored
Partially reverts b7d2b7d2, fixing a regression introduced by it.
-
James Almer authored
Signed-off-by:
James Almer <jamrial@gmail.com>
-
Janne Grunau authored
Will be used for regression tests.
-
Luc Trudeau authored
Since n equals either 25 or 9, the dav1d_sgr_one_by_x table can be replaced with a ternary operation.
-
Janne Grunau authored
Test case: clusterfuzz-testcase-minimized-dav1d_fuzzer-5733716937146368, credits to oss-fuzz.
-
- 30 Oct, 2018 8 commits
-
-
Rostislav Pehlivanov authored
This rewrites msac.c to the point of there being no libaom project code left, hence changing the license of the file to the dav1d project's license. The rewrite much simplifies and optimizes entropy decoding. Some encoder specific code also remained, such as tell_offs, to tell the fractional amount of bits left, which the decoder does not need. ctx_refill is much simpler and has a tighter loop with less instructions, which on some CPUs can actually be ran in one cycle. The old mechanism which checked to see if the buffer reached the end to disable calling ctx_refill is gone, as all it saved was a mostly well predicted branch. The optimizations regarading this function enabled us to use an ec_win of 64 bits whilst improving performance. This was not possible with the old needlessly robust system. Some msac-specific API changes were made - msac_decode_bool now takes a scaled value directly rather than doing scaling itself. This saves a shift in most use cases as the function is mainly used to read equiprobable bools rather than ones with specific probabilities. There's still room for optimizations, mainly in that update_cdf could be SIMD'd. This commit prepares for some of them by moving the init function at the bottom of the file. Overall decoder speedup seems to be around 3%-5%, specific on bitrate and encoder as expected.
-
Janne Grunau authored
Fix #102
-
Janne Grunau authored
Avoid out of memory (2Gb) or time out (25s) issues in oss-fuzz.
-
Janne Grunau authored
-
Martin Storsjö authored
This simplifies running specifically this test by "meson test checkasm".
-
Marvin Scholz authored
-
Marvin Scholz authored
This would result in weird output, as checkasm outputs several lines.
-
Marvin Scholz authored
-
- 29 Oct, 2018 9 commits
-
-
James Almer authored
Fixes a regression since d8996b18, where the relevant fields started being written to and read from the wrong struct.
-
Ronald S. Bultje authored
This is identical to what libaom does, and fixes #119. After gather_left/top_partition_prob(), probabilities *can* overlap, and in extreme cases the output CDF[0] can therefore be 0, which will cause an assert failure when used with msac_decode_bool().
-
Janne Grunau authored
Fix #120.
-
Janne Grunau authored
Fix #115. Fix 'assert(seg_id < 8)' in clusterfuzz-testcase-minimized-dav1d_fuzzer-5740590025670656 due to decoding error in the primary reference picture. Credits to oss-fuzz.
-
Ronald S. Bultje authored
cdef_filter_4x4_8bpc_c: 2273.6 cdef_filter_4x4_8bpc_avx2: 113.6 Decoding time reduces to 15.51s for first 1000 frames of chimera 1080p, from 23.1 before cdef_filter SIMD or 17.86 with only 8x8 cdef_filter SIMD.
-
Ronald S. Bultje authored
cdef_filter_8x8_8bpc_c: 7913.0 cdef_filter_8x8_8bpc_avx2: 309.9 First 1000 frames of Chimera 1080p: before: 0m23.100s after: 0m17.863s
-
Ronald S. Bultje authored
-
Ronald S. Bultje authored
-
Marvin Scholz authored
Fix a theoretical bug found by the clang static analyzer: In theory num_muxers could be smaller than res, never evaluating the loop (as the condition would be false) but not satisfying the i == num_muxers case, so proceeding and dereferencing the never initialized impl pointer. Fixing this is simple: Changed the num_muxers and index variables to unsigned so num_muxers can never be smaller than i.
-
- 28 Oct, 2018 10 commits
-
-
Ronald S. Bultje authored
Fixes #123.
-
Janne Grunau authored
oss-fuzz's FuzzingEngine requires libc++.
-
James Almer authored
This prevents warnings on some old compilers that don't like structs that start with an array being initialized with { 0 }.
-
Ronald S. Bultje authored
Fixes #112.
-
Ronald S. Bultje authored
Fixes #111.
-
Janne Grunau authored
Prevent decoding a frame with inconsistent sequence and frame headers. Fix #124, #125. Fix negative size param in pixel_copy due to inconsistent sb128 state between frame header (parsed with sb128 == 0) and sequence header and frame decoding with sb128 == 1. Fix clusterfuzz-testcase-minimized-dav1d_fuzzer-5707479116152832. Credits to oss-fuzz.
-
Ronald S. Bultje authored
Fixes #116.
-
Ronald S. Bultje authored
cdef_dir_8bpc_c: 629.3 cdef_dir_8bpc_avx2: 82.4 First 1000 frames of Chimera 1080p: before: 0m23.084s after: 0m21.860s
-
Ronald S. Bultje authored
-
Ronald S. Bultje authored
-
- 27 Oct, 2018 2 commits
-
-
Janne Grunau authored
Fix 122.
-
James Almer authored
-
- 26 Oct, 2018 2 commits
-
-
Thierry authored
This is similar to --noblit of libaom
-
Janne Grunau authored
oss-fuzz builds the fuzzing binary out of meson. Local (quoted) includes should be preferred for headers located in the same directory.
-