- Mar 20, 2019
-
-
Adrien Maglo authored
-
Adrien Maglo authored
Save them by reference frame types instead of picture slot. Do not add several times the zero motion vector to the predictor list.
-
- Mar 19, 2019
-
-
Romain Vimont authored
The motion vectors were stored in a Vec<Vec<MotionVector>>. The innermost Vec contains a flatten matrix (fi.w_in_b x fi.h_in_b) of MotionVectors, and there are REF_FRAMES instances of them (the outermost Vec). Introduce a typed structure to replace the innermost Vec: - this improves readability; - this allows to expose it as a 2D array, thanks to Index and IndexMut traits; - this will allow to split it into (non-overlapping) tiled views, containing only the motion vectors for a bounded region of the plane (see <https://github.com/xiph/rav1e/pull/1126>).
- Mar 18, 2019
-
-
David Michael Barr authored
* Inline constrain and msb for cdef_filter_block This reduces its average time by around 42%. * Inline round_shift for pred_directional and others This reduces its average time by around 10%. * Inline sgrproj_sum_finish to its various callers It is at the lowest level of a hot call graph and almost trivial. * Inline get_mv_rate in motion estimation It is almost trivial and called often.
-
- Mar 16, 2019
- Mar 15, 2019
-
-
Thomas Daede authored
Temporarily fixes #1115.
-
Adrien Maglo authored
-
Luca Barbato authored
-
Luca Barbato authored
-
Luca Barbato authored
And keep the actual code as default trait
-
David Michael Barr authored
-
David Michael Barr authored
-
Romain Vimont authored
To compute the number of pixels available in the top-right and bottom-left edges, get_intra_edges() received frame_w_in_b (MiCols) and frame_h_in_b (MiRows) as parameters, initialized as follow: MiCols = 2 * ( ( FrameWidth + 7 ) >> 3 ) MiRows = 2 * ( ( FrameHeight + 7 ) >> 3 ) <https://aomediacodec.github.io/av1-spec/#compute-image-size-function> The sizes computed by get_intra_edges() were basically the frame dimensions rounded up to the next multiple of 8, decimated: (MI_SIZE >> plane_cfg.xdec) * frame_w_in_b (MI_SIZE >> plane_cfg.ydec) * frame_h_in_b But in Frame::new(), the luma plane dimensions are also initialized with the frame dimensions rounded up to the next multiple of 8. Therefore, it is equivalent to directly use the plane dimensions.
-
- Mar 14, 2019
-
-
Thomas Daede authored
-
Romain Vimont authored
The function get_sad() was called with block width and block height parameters swapped. As a consequence, in tests, associate the precomputed SAD values to the transposed block size.
-
Vittorio Giovara authored
This function is not needed in rust and it is mostly a convenience for other languages. Instead move this chunk in the appropriate bindings.
-
David Michael Barr authored
* Extract archives in parallel with download * Fetch sccache binary release * Use sccache for C and C++ dependencies * Limit sccache size to 500M * Use CI generic cache to store compiler cache
-
Luca Barbato authored
-
- Mar 13, 2019
-
-
The functions sad_ssse3() and sad_sse2() only support u16 and u8 respectively, so they are not generic. Make the caller pass the expected type.
-
Luca Barbato authored
-
Thomas Daede authored
This doesn't actually call the assembly functdions yet.
-
David Michael Barr authored
-
David Michael Barr authored
-
Luca Barbato authored
It acts a aligned memory wrapper. Fixes #1101
-
Luca Barbato authored
-
Luca Barbato authored
-
Luca Barbato authored
Preliminary to use a different backing storage.
- Mar 12, 2019
-
-
Luca Barbato authored
-
Luca Barbato authored
Apparently cbindgen has problems parsing them in the former rendition.
-
David Michael Barr authored
This reduces the odds of a Travis timeout.
-
David Michael Barr authored
Also, check out the v1.0.0-errata1 tag of libaom.
-
Luca Barbato authored
-
Luca Barbato authored
-
David Michael Barr authored
Many of the settings change nothing at the default speed.
-
David Michael Barr authored
-