Age | Commit message (Collapse) | Author |
|
|
|
This silences the following warning:
tools/output/xxhash.c(127): warning C4244: '=': conversion from 'unsigned long' to 'unsigned char', possible loss of data
|
|
The required 'xxhash.h' header can either be in system include directory
or can be copied to 'tools/output'.
The xxh3_128bits based muxer shows no significant slowdown compared to
the null muxer. Decoding times Chimera-AV1-8bit-1920x1080-6736kbps.ivf
with 4 frame and 4 tile threads on a core i7-8550U (disabled turbo boost):
null: 72.5 s
md5: 99.8 s
xxh3: 73.8 s
Decoding Chimera-AV1-10bit-1920x1080-6191kbps.ivf with 6 frame and 4 tile
threads on a m1 mc mini:
null: 27.8 s
md5: 105.9 s
xxh3: 28.3 s
|
|
Verification should not succeed if the given string is too short to be a
real hash.
Fixes videolan/dav1d#361
|
|
|
|
|
|
Closes #203.
|
|
|
|
|
|
|
|
The previous floating-point implementation produced results that were
sometimes slightly off due to rounding errors.
For example, a frame size of 432x240 with a render size of 176x240
previously resulted in a PAR of 98:240 instead of the correct 11:27.
Also reduce fractions to produce more readable numbers.
|
|
This adds A<W>:<H> to the Y4M header, to
preserve the intended aspect ratio for
anamorphic video.
|
|
We can't compare the decoding speed with the intended decoding rate,
but the frame rate alone is still useful.
|
|
Since 46d092ae6ac62284e5bdde4d0808aca4ab7410a9 the demuxer is no longer
detected from extension but rather by probing.
|
|
The shift-amount can be up to 56, and left-shifting 32-bit integers
by values >=32 is undefined behaviour. Therefore, use 64-bit integers
instead. Also slightly rewrite so we only call dav1d_get_bits() once
for the combined more|bits value, and mask the relevant portions
out instead of reading twice. Lastly, move the overflow check out of
the loop (as suggested by @wtc)
Fixes #341.
|
|
|
|
By multiplicating the performance counter value (within its own
time base) by the intended target time base, and only then dividing,
we reduce the available numeric range by the factor of the
original time base times the new time base.
On Windows 10 on ARM64, the performance counter frequency is
19200000 (on x86_64 in a virtual machine, it's 10000000), making
the calculation overflow every (1 << 64) / (19200000 * 1000000000)
= 960 seconds, i.e. 16 minutes - long before the actual uint64_t
nanosecond return value wraps around.
|
|
Even if we don't want to throttle decoding to realtime, and
even if the file itself didn't contain a valid fps value, we
may want to call the synchronize function to fetch the current
elapsed decoding time, for displaying the fps value.
|
|
|
|
|
|
Also avoid integer overflows by using 64-bit intermediate precision.
|
|
|
|
The argument for --input was aligned with the argument for
--output. None of the other arguments were aligned.
For consistency either align all or none.
This commit removes the alignment.
|
|
avx512 was merged with avx512icl.
See 7b208fa8
|
|
|
|
Muxer and demuxers arrays are now statically initialized
|
|
Console output is incredibly slow on Windows, which is aggravated by
the lack of line buffering. As a result, a significant percentage of
overall runtime is actually spent displaying the decoding progress.
Doing the line buffering manually alleviates most of the issue.
|
|
Also make the cpuid code a bit more explicit.
|
|
|
|
Also prefer clock_gettime over mach_absolute_time on darwin.
clock_gettime is only available in darwin 10.12 and later.
Hopefully fixes #283.
|
|
|
|
tests/checkasm/checkasm.c:55:5: warning: implicit declaration of function 'gettimeofday' is invalid in C99 [-Wimplicit-function-declaration]
gettimeofday(&tv, NULL);
^
|
|
|
|
|
|
The latter is marked as obsolete by POSIX.
|
|
This fixes these warnings with MSVC:
warning C4267: '+=': conversion from 'size_t' to 'int', possible loss of data
|
|
|
|
Should fix failures of 'section5' sample on 32-bit systems.
|
|
This allows auto-detection between section5 and annexb files, which
share the same extension.
|
|
Fixes #304.
|
|
|
|
When compiling in release mode, instead of just deleting assertions,
use them to give hints to the compiler. This allows for slightly
better code generation in some cases.
|
|
dav1dplay shouldn't be built by default. And it's an example more than a tool.
|
|
|
|
sdl2.pc adds -I${includedir}/SDL2 to the command line, so SDL2/ is
clearly expected.
Fixes #289
|
|
|
|
'build_' prefix is reserved by meson, this will become an error in the
future, as indicated by a warning when configuring the build dir.
Closes #285.
|
|
|
|
clock_gettime() is only available since MacOS X 10.12 (Sierra).
|
|
On older versions of glibc, clock_gettime isn't available in the main
libc, but part of a separate librt.
Only look for librt if clock_gettime isn't available otherwise.
|