- Jan 31, 2024
-
-
Nathan E. Egge authored
-
- Jan 21, 2024
-
-
Hecai Yuan authored
-
- Jul 06, 2023
-
-
Reduces memory usage by 6 kB per sb128 in 8bpc streams that uses screen content tools when frame-threading is enabled.
-
- Jun 12, 2023
-
-
James Almer authored
Signed-off-by:
James Almer <jamrial@gmail.com>
-
- Jun 07, 2023
-
-
- Jun 06, 2023
-
-
James Almer authored
Signed-off-by:
James Almer <jamrial@gmail.com>
-
- Jun 02, 2023
-
-
James Almer authored
Signed-off-by:
James Almer <jamrial@gmail.com>
-
James Almer authored
Signed-off-by:
James Almer <jamrial@gmail.com>
-
- Jun 01, 2023
-
-
James Almer authored
Signed-off-by:
James Almer <jamrial@gmail.com>
-
James Almer authored
All of them are 32 bits values that shall be > 0 Signed-off-by:
James Almer <jamrial@gmail.com>
-
- May 31, 2023
-
-
The default __printf__ format attribute doesn't match what printf functions actually support. Using __gnu_printf__ fixes it.
-
- May 24, 2023
-
-
James Almer authored
Completes the work started in cb5a095e.
-
- May 06, 2023
-
-
Andrey Semashev authored
Avoid wrapping external includes in extern "C" blocks. Also wrap all public headers in extern "C" blocks to allow them to be selectively included in C++ projects. Fixes #422.
-
- Apr 18, 2023
-
-
James Almer authored
Nothing in the spec prevents a Temporal Unit from having more than one Metadata OBU of type ITU-T T.35, so export them as an array instead of only exporting the last one we parse. This is backwards compatible with the previous implementation, as users unaware of this change can ignore the n_itut_t35 field and still access the first (or only) entry in the array as they have been doing until now.
-
- Apr 12, 2023
-
-
James Almer authored
-
- Apr 08, 2023
-
-
Dav1dRef is an opaque struct to the API user, and they have no business with these fields at all, so move them to the internal picture struct. Signed-off-by:
James Almer <jamrial@gmail.com>
-
Nothing in the spec prevents a Temporal Unit from having more than one Metadata OBU of type ITU-T T.35, so export them as an array instead of only exporting the last one we parse. This is backwards compatible with the previous implementation, as users unaware of this change can ignore the n_itut_t35 field and still access the first (or only) entry in the array as they have been doing until now. Signed-off-by:
James Almer <jamrial@gmail.com>
-
- Dec 14, 2022
-
-
James Almer authored
Should be useful for scenarios like wanting only keyframes to quickly generate a set of preview images of the whole stream.
-
- Nov 10, 2022
-
-
- Oct 26, 2022
-
-
Martin Storsjö authored
This fixes building with MSVC (and older GCC versions) after 3e7886db.
-
- Sep 30, 2022
-
-
Henrik Gramner authored
'-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.
-
- Jul 06, 2022
-
-
- Apr 28, 2022
-
-
Increasing a reference counter only requires atomicity, but not ordering or synchronization.
-
- Apr 23, 2022
-
-
Matthias Dressel authored
-
- Mar 31, 2022
-
-
James Almer authored
-
- Mar 08, 2022
-
-
James Almer authored
-
James Almer authored
-
- Jan 14, 2022
-
-
Ronald S. Bultje authored
(To be used alongside --filmgrain.) Addresses part of #310.
-
- Jan 11, 2022
-
-
James Almer authored
Signed-off-by:
James Almer <jamrial@gmail.com>
-
- Jan 07, 2022
-
-
Ronald S. Bultje authored
Addresses part of #310.
-
- Jan 06, 2022
-
-
Section 6.4.2 (Color config semantics) of the AV1 spec says: If matrix_coefficients is equal to MC_IDENTITY, it is a requirement of bitstream conformance that subsampling_x is equal to 0 and subsampling_y is equal to 0. Add Dav1dSettings.strict_std_compliance flag which, when set, allows aborting decoding when such standard-compliance violations fail, even though they don't affect decoding. In CLI, this flag can be accessed using -strict.
-
- Jan 01, 2022
-
-
Niklas Haas authored
This change is motivated by a desire to be able to toggle between CPU and GPU film gain synthesis in players such as VLC. Because VLC initializes the codec before the vout (and, indeed, the active vout module may change in the middle of decoding), it cannot make the decision of whether to apply film grain in libdav1d as part of codec initialization. It needs to be decided on a frame-by-frame basis depending on whether the currently active vout supports film grain synthesis or not. Using the new API, users like VLC can simply set `apply_grain` to 0 and then manually call `dav1d_apply_grain` whenever the vout does not support GPU film grain synthesis. As a side note, `dav1d_apply_grain` could also technically be called from dedicated worker threads, something that libdav1d does not currently do internally. The alternative to this solution would have been to allow changing Dav1dSettings at runtime, but that would be more invasive and a proper API would also need to take other settings into consideration, some of which can't be changed as easily as `apply_grain`. This commit represents a stop-gap solution. Bump the minor version to allow clients to depend on this API.
-
- Oct 04, 2021
-
-
- Sep 20, 2021
-
-
Supports Linux, MacOS, and Windows.
-
- Sep 03, 2021
-
-
-
-
Victorien Le Couviour--Tuffet authored
Merges the 3 threading parameters into a single `--threads=` argument. Frame threading can still be controlled via the `--framedelay=` argument. Internally, the threading model is now a global thread/task pool design. Co-authored-by:
Ronald S. Bultje <rsbultje@gmail.com>
-
- Aug 19, 2021
-
-
Reduces size from 16B to 12B, while maintaining a 4-byte alignment.
-
- Jul 09, 2021
-
-
Helps differentiating actual errors in the buffer data or passed-in arguments with scenarios like empty buffers or containing OBUs other than Sequence Header.
-
- Jun 20, 2021
-
-
We use the 'noinline' attribute in order to reduce code size, but that doesn't prevent gcc from cloning the function, which is something that goes against the purpose of preventing inlining in the first place. Adding the 'noclone' attribute reduces the (stripped) binary size by around 45 kB on x86-64.
-