- 10 Aug, 2017 10 commits
-
-
Urvang Joshi authored
This experiment is now adopted as it was cleared by Tapas. Note: Palette use can still be controlled by command-line option "--tune-content=..." in 'aomenc'. Change-Id: I832f49f20f60c34bdef5b424755849c496687e87
-
hui su authored
It's not being used anymore. Change-Id: I866874dcc5485cf3db8c66e8d3e76ac45193e58c
-
Hui Su authored
Change-Id: Ida42485e3fd44d332d70cb57010a0add2436abfe
-
Hui Su authored
Fix ubsan test warnings. Change-Id: I3b5849277c9c8cd387c709238a6453e19705d791
-
Alex Converse authored
Drops k_means from 15% of profile to 4.2%. BUG=aomedia:670 Change-Id: I9c60f024abde9112eec8c32ead482f885ed6e57a
-
Yi Luo authored
- Speed test (ms) on i7-6700, Linux x86_64 FUNCTION SSE2 AVX2 horizontal_edge_16 55 28 vertical_16_dual 84 47 horizontal_4_dual 27 13 horizontal_8_dual 36 15 vertical_4_dual 38 25 vertical_8_dual 44 27 - Decoder frame rate improves around 1.2% - 2.8%. Change-Id: I9c4123869bac9b6d32e626173c2a8e7eb0cf49e7
-
James Zern authored
Change-Id: Iaaeae08d46f26981e4a707cf1dd5af9c5c78d486
-
Urvang Joshi authored
The problem was that some functions were using scale_chroma_bsize() function to turn sub-8x8 'bsize' to 8x8 'bsize', and then the modified 'bsize' was being passed to rd_pick_intra_sbuv_mode() for example. In such cases, we cannot rely on the 'bsize' value passed to the function; instead, we need to look at the original mbmi->sb_type directly. Also: - Added created a common function can_use_palette() to refactor this logic into one place. - Added more asserts to easily catch such coding errors in future. BUG=aomedia:688 Change-Id: I2e9f20c8c5fbc4b3ff41b703a91a02758c3c632f
-
Sebastien Alaiwan authored
Change-Id: I62f7dca3d0d5aa9648c8a444f11f0f2a8bb3845b
-
James Zern authored
Change-Id: I558106e3e415cbcbb6673d24349daed48b616034
-
- 09 Aug, 2017 8 commits
-
-
Rupert Swarbrick authored
aq_mode and deltaq_mode are enums starting at zero so checking they are in the range 0..X triggers a clang warning of the form "comparison of unsigned enum expression >= 0 is always true". Change-Id: Ia41d819958ae5a1ac10e6da5550169a2a326bf1a
-
Yushin Cho authored
Because the palette is not supported by PVQ yet. Change-Id: If432f5c43d24726ad99161f1f76fa6c28267ca8b
-
Rupert Swarbrick authored
When doing OBMC prediction, the code must iterate over the blocks above or to the left of the current block. In reconinter.c and rdopt.c, there are several pieces of code that do this. These all work in roughly the same way, iterating over the xd->mi array (although some are written with for loops and others with do/while). To visit each neighbouring block exactly once, each of these loops used an "mi_step" variable which was set to the width or height of the neighbouring block in mi-units and the loop counter got incremented by mi_step to jump to the next block. This patch unifies the code slightly (just using for loops) and simplifies it when the CHROMA_SUB8X8 experiment is enabled. In this case, chroma information is stored in the bottom right block of each 8x8 pixel region. That is, if a block has width 4 and an even mi_col, the chroma information we need is actually found in the block immediately to its right. The existing code implemented this by bumping the current column or row counter (usually mi_col_offset or mi_row_offset) and duplicating the first part of the loop body to do it again with the new counter. It also had to double mi_step to avoid visiting the next-door block again. The new code essentially just uses the "continue" keyword to restart the loop. There's a little more book-keeping required: we might have to increment "ilimit", the maximum loop index, to ensure we don't exit the loop too early. The result is hopefully easier to read, but it's also more general (in the CHROMA_SUB8X8 case). The existing code assumed the current block never had width or height below 8 and thus mi_col and mi_row were always even. As such, whenever the neighbouring block had a width or height of 4, we knew that we needed to skip to the next neighbouring block to get the required chroma information. This version of the code can deal with the current block being smaller. The main difference is that it decides whether to skip forward by examining the parity of (mi_col + i) or (mi_row + i). This change will be needed for 16x4/4x16 block support. Change-Id: I39c1bbc00a6e2ad1ac17b8eed3980a8bcc040074
-
Angie Chiang authored
Change-Id: I0b67ad4f37a22812472b191e0a6f1d218430c454
-
Angie Chiang authored
This test makes sure two things: 1) txfm stage range is within desired limit (lbd:16 bits hbd:32 bits) 2) txfm stage range + cos bits is within desired limit (lbd:32 bits hbd:32 bits) Change-Id: Ie2cc3c8265810e034c1461def4717fa9d4c29945
-
Angie Chiang authored
Change-Id: Ie2f83f2f9369a22b70150ba44ddb6f82d6b6b514
-
Rupert Swarbrick authored
Since there are no CDFs set up for palettes for 4:1/1:4 blocks, we should make sure we don't try to use them. Without this patch, write_palette_mode_info gets called with a bsize of BLOCK_32X8 and reads (and writes) off the end of the palette_y_size_cdf array. This patch avoids calling it in this context and adds an assertion to make sure we don't read off the end of the array in future. The patch also adds the corresponding logic to rdopt.c. Change-Id: I4d9aea982d057e305a6b578f35457eada819d38f
-
Sebastien Alaiwan authored
Change-Id: I1456837714323c6cbfd66a47eb5dfa1fe4eeeabd
-
- 08 Aug, 2017 22 commits
-
-
RogerZhou authored
Change-Id: Iec7969ffd8f53ca2f4eefd1d757cfec7b3bde131
-
Sarah Parker authored
This allows inter and intra modes to use different mask functions. The mask functions checked in are still place holders to allow for easy experimentation. Change-Id: Ic20d88200676df81dffee8c43555d0ff0c7bfc28
-
Alex Converse authored
Change-Id: Idc5fb44309b5aaa132833ebb4007416f9d143e3d
-
Todd Nguyen authored
Changes: - Enable segmentation by default on bgsprite. - Turn off global motion estimation by default on bgsprite. - Segment in 4x4 blocks and use temporal filter on foreground blocks. Change-Id: I15ccfd908d5772287858ceb7b1aca44e6a9b1071
-
Tom Finegan authored
Linker flags for -fsanitize must be set before the test of C/CXX flags because the link step that occurs as part of the C/CXX build test fails otherwise. Change-Id: Iedfead47598dc086b2477ae99b6f7bc9fae222d2
-
Sebastien Alaiwan authored
Change-Id: I51e4a61bfca6d662330476e2d90680f1a9a80304
-
Cheng Chen authored
Make directional deblocking work with parallel deblocking. Change-Id: Id1b4e0ff824f97b48cef52d594af56c0140db452
-
Tom Finegan authored
Add missing source files to the CMake build, and silence a warning. BUG=aomedia:683 Change-Id: I857fce54239d121bc8d47fc805f814890b1b736f
-
Angie Chiang authored
Change-Id: I70f023a0a7f617bf3452543352c710cfedb2e1ce
-
Angie Chiang authored
Change-Id: I41a78f5066b96f59ab8f587bc5b1955f6806b103
-
Angie Chiang authored
Change-Id: I5558e18c8c706474df28e51e6ac9f598e0e2ab48
-
Wei-Ting Lin authored
Also add another default probabilities and for two-modes Change-Id: Ia503301e6d8e89c8d7c945ff25588807107d4807
-
Tom Finegan authored
Omit filterintra_predictors_test.cc from the build to mimic configure behavior. BUG=aomedia:683 Change-Id: I2057b25f5cf69ed1434a3e3833d7c30072a0b811
-
Jingning Han authored
Use 8x8 block as minimum step size for reference motion vector search. Change-Id: Ie751dfa7bf7fe72e64843d5c1f490766e8b451de
-
Luc Trudeau authored
Change-Id: Ida78c0ab57f1293d6de2ac674fdca0c9e9361c2b
-
Luc Trudeau authored
Only one call to rd_pick_intra_sbuv_mode and removed the unused PICK_MODE_CONTEXT *ctx parameter Change-Id: Ife0dbdd64cd5a01e5eeed0eab9e08417e768b41d
-
Thomas Davies authored
When AOM_QM is enabled, by default quantization matrices are flat unless enabled with --enable-qm=1. Re-use existing SIMD functions when a flat matrix is used, so that there is no speed deficit when AOM_QM is enabled. SIMD for the non-flat case is TBC. Change-Id: I1bb8da70d3dd5858dac15099610ddf61662e3d0d
-
Thomas Davies authored
This commit de-duplicates C reference quantization code and unifies quantization matrix (QM) and non-QM code paths when there is no SIMD. The reorganisation also will facilitate re-using SIMD quant functions for QM when the matrix is flat, as is the default when AOM_QM is enabled. Change-Id: Idbfdac9eb9a31adcffe734aac1877d58b86fab77
-
Sebastien Alaiwan authored
BUG=aomedia:681 Change-Id: Iefce035d633d1533c8400d85b3257971757160bc
-
Sebastien Alaiwan authored
Change-Id: I62f6364bcf2e79678339ee44e1b465ee4ee7114a
-
Tom Finegan authored
Build aom_ports/x86/emms.asm for all x86 targets. It was previously guarded by HAVE_MMX, which violates assumptions established by the configure build. BUG=aomedia:683 Change-Id: Icac2b0ba6272c61dbb71dfc3824a8cf391c251b6
-
Tom Finegan authored
Add av1/encoder/bgsprite.[ch] to the CMake build. BUG=aomedia:683 Change-Id: Ic90c81c724be6814a3534f2f612173ac325d4423
-