- 03 Feb, 2017 2 commits
- 23 Jan, 2017 1 commit
-
-
Fangwen Fu authored
Change-Id: Ieb2922c3df4ef4f8514b8a6df6f9a8fc45ef3cf4
-
- 19 Jan, 2017 1 commit
-
-
Alex Converse authored
Change-Id: I3d64ec4bbc72143b30a094ece7a6c711d6b479cd
-
- 04 Jan, 2017 1 commit
-
-
Ryan Lei authored
This commit adds a new experiment to allow disabling of loop filtering on tile boundaries. It is implemented by adding a syntax field "loopfilter_across_tiles_enabled" into the uncompressed frame header. If it is set to 0, decoder and encoder will disables loop filtering for block edges that are also tile boundaries. Change-Id: Ib80bfd82d49c74f1ba46ae18ceedb30704ac8aa5
-
- 13 Dec, 2016 1 commit
-
-
Alex Converse authored
The control is deprecated and is a noop. Change-Id: I66f248485a906c26205a1b26e61e15d976207fd8
-
- 10 Nov, 2016 1 commit
-
-
Thomas Davies authored
Default MTU size is 0, which implies a fixed number of tile groups. MTU matching overrides fixed tile group. MTU matching will succeed unless a single tile is bigger than the MTU. --mtu-size is in bytes, and includes headers but not transport/wrapper overheads Change-Id: I2b70bd41b175b54273b02d836f2a84011f617a7c
-
- 09 Nov, 2016 1 commit
-
-
Arild Fuldseth (arilfuld) authored
Change-Id: Iaaf9244678cde74cf3e216f3b8c9d293f206f27e
-
- 28 Oct, 2016 1 commit
-
-
Urvang Joshi authored
Also: - For unsigned ints, don't check value >= 0 as that is always true. - Add "-Wlogical-op" warning flag which would have warned that "logical 'or' of collectively exhaustive tests is always true" before this patch. Change-Id: Idf3bd312464397f2df19256fc69b22f345dc7753
-
- 25 Oct, 2016 1 commit
-
-
Brennan Shacklett authored
Seems to be dead code Change-Id: I17b3edc9e82d6a1da172a686522358a6b1a630e9
-
- 24 Oct, 2016 2 commits
-
-
Yaowu Xu authored
Given the largest transform size is 32x32, this commmit changes size estiiation based on the size rounding up to 32 multiples to avoid insufficient buffer allocations. BUG=https://bugs.chromium.org/p/aomedia/issues/detail?id=36 Change-Id: I6eab09dc6acdc0f5a6bcadb918d62c4852aae21f
-
Yaowu Xu authored
This commit increases the minimum size for allocated buffer for compressed data. The old size underestimated the size needed for small images with width or height less than 64 pixels. BUG=https://bugs.chromium.org/p/aomedia/issues/detail?id=31 Change-Id: Ia12507edc2be1e737ec49c32f64fd2ebf1eab41f
-
- 19 Oct, 2016 1 commit
-
-
Urvang Joshi authored
From code only part of nextgenv2 (and not aomedia) Change-Id: I21f7478a59d525dff23747efe5238ded16b743d2
-
- 30 Sep, 2016 1 commit
-
-
Yaowu Xu authored
This commit merges the fixes that unify the coding scheme of size in bytes including size of data in each tile, size of data in each frame in a super frame. Related tracking issues: https://bugs.chromium.org/p/webm/issues/detail?id=1042 https://bugs.chromium.org/p/webm/issues/detail?id=1088 Original libvpx commits: 7460798b d77a84bf dec4405c Change-Id: I7b7843d9a2e20977cf34ddfdd10c100dc978b122
-
- 09 Sep, 2016 1 commit
-
-
Thomas Daede authored
Backwards compatible with old API. cherry-picked #02ae3dd3 from aom/master. Change-Id: I65aa43f84bb9491e8cca73fe444094c2622b0187
-
- 02 Sep, 2016 1 commit
-
-
Yaowu Xu authored
This minimize code differences between AOM master and nextgenv2 Change-Id: If144865bdf3ef0818e7aac11018b9e786444c550
-
- 01 Sep, 2016 2 commits
-
-
Yaowu Xu authored
Cherry-Picked the following commits: 0defd8f2 Changed "WebM" to "AOMedia" & "webm" to "aomedia" 54e66767 Replace "VPx" by "AVx" 5082a369 Change "Vpx" to "Avx" 7df44f17 Replace "Vp9" w/ "Av1" 967f722f Remove kVp9CodecId 828f30ce Change "Vp8" to "AOM" 030b5ffc AUTHORS regenerated 2524caee Add ref-mv experimental flag 016762be Change copyright notice to AOMedia form 81e55269 Replace vp9 w/ av1 9b94565b Add missing files fa8ca9f2 Change "vp9" to "av1" ec838b76 Convert "vp8" to "aom" 80edfa01 Change "VP9" to "AV1" d1a11fb9 Change "vp8" to "aom" 7b582513 Point to WebM test data dd1a5c8d Replace "VP8" with "AOM" ff00fc0f Change "VPX" to "AOM" 01dee0bb Change "vp10" to "av1" in source code cebe6f0c Convert "vpx" to "aom" 17b05679 rename vp10*.mk to av1_*.mk fe5f8a8a rename files vp10_* to av1_* Change-Id: I6fc3d18eb11fc171e46140c836ad5339cf6c9419
-
- 16 Aug, 2016 1 commit
-
-
Yaowu Xu authored
Manually cherry-picked following commits from AOMedia git repository: bb2727c2 Sort includess for "clpf.h" c297fd00 Add quantisation matrix range parameters. 0527894f Add encoder option and signaling for quant matrix control. 4106232b Turn off trellis coding for quantization matrices. 4017fca3 Modify tests to allow quantization matrices. 1c122c24 Add quant and dequant functions for new quant matrices. 95a89994 Enable CLPF f72782bb Fix a build issue 73bae509 Add quantisation matrices and selection functions 33208d20 Added support for constrained low pass filter (CLPF) Change-Id: I60fc1ee1ac40e6b9d1d00affd97547ee5d5dd6be
-
- 12 Aug, 2016 1 commit
-
-
clang-format authored
Change-Id: Ie4d7ecb2f692c1c43eff1242e1f00e7fbae00e57
-
- 10 Aug, 2016 1 commit
-
-
James Zern authored
spatial/temporal scalability are not supported in VP10 currently. + remove the unused vp10/encoder/skin_detection.[hc] this also enables DatarateTestLarge for VP10 which passes with no experiments enabled. these were removed previously when only the SVC tests should have been: 134710af Disable tests not applicable to VP10 Change-Id: I9ee7a0dd5ad3d8cc1e8fd5f0a90260fa43da387c
-
- 04 Aug, 2016 1 commit
-
-
Yaowu Xu authored
Change-Id: Id6cb96b0b15efdda63348d8bfe59fc0533c85ba1
-
- 02 Aug, 2016 1 commit
-
- 17 Jun, 2016 1 commit
-
-
Zoe Liu authored
This patch removed the experiment of BIDIR_PRED and merged the feature into the experiment of EXT_REFS: (1) Each frame now has up to 6 reference frames, namely LAST_FRAME, LAST2_FRAME, LAST3_FRAME, GOLDEN_FRAME, (forward) and BWDREF_FRAME, ALTREF_FRAME (backward); LAST4_FRAME has been removed; (2) First pass still keeps the 8 updates: KF_UPDATE, LF_UPDATE, GF_UPDATE, ARF_UPDATE, OVERLAY_UPDATE, and BRF_UPDATE, LAST_BIPRED_UPDATE, BI_PRED_UPDATE; (3) show_existing_frame==1 is supported in the experiment of EXT_REFS; (4) New encoding modes are added for both single-ref and compound cases, through the use of the 2 extra forward references (LAST2 & LAST3) and the 1 extra backward reference (BWDREF). RD performance wise, using Overall PSNR: Avg/BDRate Bipred only Prev EXT_REFS Current EXT_REFS with bipred lowres: -3.474/-3.324 -1.748/-1.586 -4.613/-4.387 derflr: -2.097/-1.353 -1.439/-1.215 -3.120/-2.252 midres: -2.129/-1.901 -1.345/-1.185 -2.898/-2.636 If in vp10/encoder/firstpass.h, change BFG_INTERVAL from 2 to 3, i.e. to use 2 bi-predictive frames than 1, a further improvement may be obtained: Current EXT_REFS with bipred 1 bi-predictive frame 2 bi-predictive frames lowres: -4.613/-4.387 -4.675/-4.465 derflr: -3.120/-2.252 -3.333/-2.516 midres: -2.898/-2.636 -3.406/-3.095 Change-Id: Ib06fe9ea0a5cfd7418a1d79b978ee9d80bf191cb
-
- 24 May, 2016 2 commits
-
-
Zoe Liu authored
Major parts have been implemented as follows: (1) Added BRF_UPDATE, LASTNRF_UPDATE, and NRF_UPDATE in firstpass.c; (2) Added the handling for the scenario of "cpi->common.show_existing_frame == 1" at the encoder; (3) Added a new reference frame of BWDREF_FRAME; (4) Have bwd-ref work with upsampled references. Note that when the experiment of "ext_refs" turned on, this experiment will be turned off automatically currently. RD performance in Overall PSNR has been improved, compared against the VP10 baseline: lowres: Avg -3.312; BDRate -3.154 derflr: Avg -1.927; BDRate -1.176 midres: Avg -2.149; BDRate -2.001 hdres : Avg -0.567; BDRate -0.588 Change-Id: I4c06ff51cc20194bffbd4d2346e57ba3dcf6b62c
-
Zoe Liu authored
This patch always compares the most recent show frames between the encoder and the decoder to test the mismatch. Change-Id: I68a91ad0996a598231450debfd616e24992419b5
-
- 07 Apr, 2016 1 commit
-
-
Geza Lore authored
The uncompressed frame header contains a bit to signal whether the frame is encoded using 64x64 or 128x128 superblocks. This can vary between any 2 frames. vpxenc gained the --sb-size={64,128,dynamic} option, which allows the configuration of the superblock size used (default is dynamic). 64/128 will force the encoder to always use the specified superblock size. Dynamic would enable the encoder to choose the sb size for each frame, but this is not implemented yet (dynamic does the same as 128 for now). Constraints on tile sizes depend on the superblock size, the following is a summary of the current bitstream syntax and semantics: If both --enable-ext-tile is OFF and --enable-ext-partition is OFF: The tile coding in this case is the same as VP9. In particular, tiles have a minimum width of 256 pixels and a maximum width of 4096 pixels. The tile width must be multiples of 64 pixels (except for the rightmost tile column). There can be a maximum of 64 tile columns and 4 tile rows. If --enable-ext-tile is OFF and --enable-ext-partition is ON: Same constraints as above, except that tile width must be multiples of 128 pixels (except for the rightmost tile column). There is no change in the bitstream syntax used for coding the tile configuration if --enable-ext-tile is OFF. If --enable-ext-tile is ON and --enable-ext-partition is ON: This is the new large scale tile coding configuration. The minimum/maximum tile width and height are 64/4096 pixels. Tile width and height must be multiples of 64 pixels. The uncompressed header contains two 6 bit fields that hold the tile width/heigh in units of 64 pixels. The maximum number of tile rows/columns is only limited by the maximum frame size of 65536x65536 pixels that can be coded in the bitstream. This yields a maximum of 1024x1024 tile rows and columns (of 64x64 tiles in a 65536x65536 frame). If both --enable-ext-tile is ON and --enable-ext-partition is ON: Same applies as above, except that in the bitstream the 2 fields containing the tile width/height are in units of the superblock size, and the superblock size itself is also coded in the bitstream. If the uncompressed header signals the use of 64x64 superblocks, then the tile width/height fields are 6 bits wide and are in units of 64 pixels. If the uncompressed header signals the use of 128x128 superblocks, then the tile width/height fields are 5 bits wide and are in units of 128 pixels. The above is a summary of the bitstream. The user interface to vpxenc (and the equivalent encoder API) behaves a follows: If --enable-ext-tile is OFF: No change in the user interface. --tile-columns and --tile-rows specify the base 2 logarithm of the desired number of tile columns and tile rows. The actual number of tile rows and tile columns, and the particular tile width and tile height are computed by the codec ensuring all of the above constraints are respected. If --enable-ext-tile is ON, but --enable-ext-partition is OFF: No change in the user interface. --tile-columns and --tile-rows specify the WIDTH and HEIGHT of the tiles in unit of 64 pixels. The valid values are in the range [1, 64] (which corresponds to [64, 4096] pixels in increments of 64. If both --enable-ext-tile is ON and --enable-ext-partition is ON: If --sb-size=64 (default): The user interface is the same as in the previous point. --tile-columns and --tile-rows specify tile WIDTH and HEIGHT, in units of 64 pixels, in the range [1, 64] (which corresponds to [64, 4096] pixels in increments of 64). If --sb-size=128 or --sb-size=dynamic: --tile-columns and --tile-rows specify tile WIDTH and HEIGHT, in units of 128 pixels in the range [1, 32] (which corresponds to [128, 4096] pixels in increments of 128). Change-Id: Idc9beee1ad12ff1634e83671985d14c680f9179a
-
- 28 Mar, 2016 1 commit
-
-
Yunqing Wang authored
Moved the API patch from NextGen to NextGenv2 and also added this API to VP10. An example was included. To try it, for example, run the following command: $ examples/vpx_cx_set_ref vp10 352 288 in.yuv out.ivf 4 30 Change-Id: Ib56bc3d365e530cfc8d859a13ddbf4c007907b81
-
- 25 Mar, 2016 1 commit
-
-
Yunqing Wang authored
After porting tile coding from VP9 to VP10, some performance degradation was seen because of the difference between VP9 and Vp10 baseline. This patch disabled some features in VP10 while tile coding is turned on. Also, an encoder control API was added back for this use case. Change-Id: I8f736db8388408a8cc35320a2f80abb02906571c
-
- 24 Mar, 2016 1 commit
-
-
Geza Lore authored
If configured with --enable-ext-tile, the codec uses an alternative tile coding syntax in the bitstream. Changes include:: - The maximum number of tile rows and columns is extended to 1024 each. - The minimum tile width/height is 64 pixels (1 superblock). - A tile copy mode is added where a tile directly reuse the coded data of a previous tile - The meaning of the tile-columns and tile-rows codec parameters are overloaded to mean tile-width and tile-height in units of 64 pixels. - All tiles should now be independent, including rows within the same columns, so large scale parallel, or independent decoding is possible. - vpxdec also gained the options to decode only a particular tile, tile row, or tile column. Changes without --enable-ext-tile: - All tiles should now be independent, including rows within the same columns, so large scale parallel, or independent decoding is possible. - vpxenc default tile configuration changed to use 1 tile column. Change-Id: I0cd08ad550967ac18622dae5e98ad23d581cb33e
-
- 22 Mar, 2016 2 commits
- 25 Feb, 2016 2 commits
- 17 Feb, 2016 2 commits
-
-
James Zern authored
move to encoder_encode() as vp10_get_compressed_data() allocates data and would require some modification to make its error return meaningful. Change-Id: Ia5267c35d16ccd42b6da6d2136402b13e28f9159
-
James Zern authored
this is allocated in init(), a NULL pointer on encode() should be treated as a failure. Change-Id: I09c206f088982716fd5acc39949ceb25576313fc
-
- 28 Jan, 2016 1 commit
-
-
clang-format authored
Change-Id: Ib8c9eb6263d6eba6b9d7b2e402b7e83a78c86be9
-
- 26 Jan, 2016 1 commit
-
-
Yaowu Xu authored
Change-Id: Ic94b5f2b40f9de32c1f7aa5e770fc21b31daa659
-
- 25 Jan, 2016 1 commit
-
-
Yaowu Xu authored
to vpx_tune_metric and vpx_tune_content. Change-Id: I673aea01075b5241b621af779ca8d3e8d2e6c61c
-
- 21 Jan, 2016 1 commit
-
-
Yaowu Xu authored
Change-Id: I6a7fa6d0ae8ce8de7b426189d5eb00413f21bc17
-