- 10 Aug, 2013 - 1 commit
-
-
Dmitry Kovalev authored
There will be another change set to rename BLOCK_SIZE_TYPE enum to BLOCK_SIZE. Change-Id: I8d1dfc873d6186fa5e554262f5169e929978085e
-
- 08 Aug, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Iab951c555037e36b154f319f351c5e67f9abb931
-
- 06 Aug, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Converting arguments of two functions (clamp_mv_ref, lower_mv_precision) from int_mv* to MV*. Rewriting is_inside function to make it much shorter. Change-Id: Ie4c4cf3eccd46707c7df099ec21fb1b61c72fc7a
-
- 05 Aug, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I3aae21e88b876d53ecc955260479980ffe04ad8d
-
- 04 Aug, 2013 - 1 commit
-
-
Jim Bankoski authored
This is an attempt at rewriting vp9_find_mv_refs_idx. I believe that it gains about 1-2% decode speed Change-Id: Ia5359c94ce9bb43b32652890e605e9a385485c1b
-
- 01 Aug, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: I8715f08a3554bdb557c5f935f1dfbd671f18e766
-
- 31 Jul, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Passing mi_row and mi_col parameters to functions explicitly. Removing unused xd argument from scale_mv function. Change-Id: Icb4c495ec72d26fb066c14470d3ae0b741fbf18a
-
- 24 Jul, 2013 - 1 commit
-
-
James Zern authored
variable was write only Change-Id: I04b002178f66961836ee08fb60a05b91b54e91d8
-
- 23 Jul, 2013 - 1 commit
-
-
James Zern authored
Change-Id: I8bcae51271673da8755c66a51aea005dfe6a3739
-
- 13 Jul, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Change-Id: Id9b6ceeddca3f9b34bfada5c499b1e7a2f42c30b
-
- 10 Jun, 2013 - 1 commit
-
-
Jim Bankoski authored
Fixes mvref issue. Change-Id: I07dc1b0682845bc18fe0efa6af5e4f4da3abfa3a
-
- 07 Jun, 2013 - 3 commits
-
-
Ronald S. Bultje authored
This can only happen if partition is partly out-of-frame, in which case the referenced mv is either out-of-frame also (and thus has the same value as an already-read one), or it is actually uninitialized, in which case we don't want to use it. Change-Id: Icf39fa4d987c7abcbebb9bbdcdd6311e8fb9d3c9
-
Yaowu Xu authored
The new neighorbhood adapts to the shape and size of the block type cif +.16% stdhd +.13% Change-Id: I978db58278e9ae3fbd6726ef831bdfc5f5f37d02
-
Ronald S. Bultje authored
Code intra/inter, then comp/single, then the ref frame selection. Use contextualization for all steps. Don't code two past frames in comp pred mode. Change-Id: I4639a78cd5cccb283023265dbcc07898c3e7cf95
-
- 06 Jun, 2013 - 1 commit
-
-
Jim Bankoski authored
This avoids encoding tokens for blocks that are entirely in the UMV border. This changes the bitstream. Change-Id: I32b4df46ac8a990d0c37cee92fd34f8ddd4fb6c9
-
- 31 May, 2013 - 2 commits
-
-
Paul Wilkins authored
Restrict get_matching_candidate() to considering mvs at 8x8 and larger sizes for last frame case. This is to reduce the HW load of using vectors down to the 4x4 level from the previous frame. Change-Id: I6505e610fd63a4e22d67f136aec7905a01b893ba
-
Ronald S. Bultje authored
We leave it in rdopt.c as a local define for now - this can be removed later. In all other places, we remove it, thereby slightly decreasing the size of some arrays in the bitstream. Change-Id: Ic2a9beb97a4eda0b086f62c039d994b192f99ca5
-
- 26 May, 2013 - 1 commit
-
-
Ronald S. Bultje authored
Also do per-partition motion vector referencing in <sb8x8 partitions, and adjust mvref finding for sub8x8 partitions. Change-Id: Id3ed1ed4d2a8910d11d327db6cc63b8eb79f941f
-
- 16 May, 2013 - 1 commit
-
-
Paul Wilkins authored
This patch creates a new inter mode contest that avoids a dependence on the reconstructed motion vectors from neighboring blocks. This was a change requested by a hardware vendor to improve decode performance. As part of this change I have also made some modifications to stats output code (under a flag) to allow accumulation of inter mode context flags over multiple clips Some further changes will be required to accommodate the deprecation of the split mv mode over the next few days. Performance as stands is around -0.25% on derf and std-hd but up on the YT and YT-HD sets. With further tuning or some adjustment to the context criteria it should be possible to make this change broadly neutral. Change-Id: Ia15cb4470969b9e87332a59c546ae0bd40676f6c
-
- 07 May, 2013 - 1 commit
-
-
Jingning Han authored
Pull sb8x8 out of experimental list. verified via borg run tests. Fixed unit test failures. Change-Id: I12a4bbd17395930580c048ab68becad1ffe46e76
-
- 01 May, 2013 - 1 commit
-
-
Ronald S. Bultje authored
Change-Id: If02e006aa8a89da9de23da92362bd2e7718ea07c
-
- 26 Apr, 2013 - 1 commit
-
-
Ronald S. Bultje authored
Change-Id: I087e08e7909a406b71715b8525c104208daa6889
-
- 19 Apr, 2013 - 2 commits
-
-
Paul Wilkins authored
Further simplification of mvref search to return only the top two candidates. Distance weights removed as the test order reflects distance anyway. Change-Id: I0518cab7280258fec2058670add4f853fab7b855
-
Paul Wilkins authored
As we are no longer able to sort the candidate mvrefs in both encoder and decode and given that the cost of explicit signalling has proved prohibitive, it no longer makes sense to find more than 2 candidates. This patch: Modifies and simplifies add_candidate_mv() Removes the forced addition of a 0 vector in the MAX_MV_REF_CANDIDATES-1 position (in preparation to reducing MAX_MV_REF_CANDIDATES to 2). Re-orders the addition of candidates slightly. This actually gives small gains (circa 0.2% on std-hd) A subsequent patch will remove NEW_MVREF experiment, reduce MAX_MV_REF_CANDIDATES to 2 and remove distance weights as these are implicit now in the order. Change-Id: I3dbe1a6f8a1a18b3c108257069c22a1141a207a4
-
- 15 Apr, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Using regular 0 and 1 constants now. Change-Id: Ie763503cbb727847cc8f1d6506cd6f2ee607f056
-
- 11 Apr, 2013 - 1 commit
-
-
Ronald S. Bultje authored
Change-Id: I0d12f9ef9d960df0172a1377f8e5236eb6d90492
-
- 27 Mar, 2013 - 1 commit
-
-
Yaowu Xu authored
Change-Id: Ifda91d697c5970c65ce3ec1feac5562124f91782
-
- 25 Mar, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Fixing function arguments alignment, reusing MIN/MAX and clamp functions. Change-Id: I87dd5a40ffb65b521b8abbf0fccf2f50552c5309
-
- 05 Mar, 2013 - 1 commit
-
-
Dmitry Kovalev authored
Removing redundant 'extern' keywords, fixing formatting and #include order, code simplification. Change-Id: I0e5fdc8009010f3f885f13b5d76859b9da511758
-
- 05 Feb, 2013 - 1 commit
-
-
Ronald S. Bultje authored
This patch adds column-based tiling. The idea is to make each tile independently decodable (after reading the common frame header) and also independendly encodable (minus within-frame cost adjustments in the RD loop) to speed-up hardware & software en/decoders if they used multi-threading. Column-based tiling has the added advantage (over other tiling methods) that it minimizes realtime use-case latency, since all threads can start encoding data as soon as the first SB-row worth of data is available to the encoder. There is some test code that does random tile ordering in the decoder, to confirm that each tile is indeed independently decodable from other tiles in the same frame. At tile edges, all contexts assume default values (i.e. 0, 0 motion vector, no coefficients, DC intra4x4 mode), and motion vector search and ordering do not cross tiles in the same frame. t log Tile independence is not maintained between frames ATM, i.e. tile 0 of frame 1 is free to use motion vect...
-
- 24 Jan, 2013 - 2 commits
-
-
Paul Wilkins authored
Quality / decode speed trade off changes. Simpler insert method without sort. Quality impact small. Change-Id: Id0c0941bc508d985405abd06a13ffe7489170b62
-
Deb Mukherjee authored
Adds an error-resilient mode where frames can be continued to be decoded even when there are errors (due to network losses) on a prior frame. Specifically, backward updates are turned off and probabilities of various symbols are reset to defaults at the beginning of each frame. Further, the last frame's mvs are not used for the mv reference list, and the sorting of the initial list based on search on previous frames is turned off as well. Also adds a test where an arbitrary set of frames are skipped from decoding to simulate errors. The test verifies (1) that if the error frames are droppable - i.e. frame buffer updates have been turned off - there are no mismatch errors for the remaining frames after the error frames; and (2) if the error-frames are non droppable, there are not only no decoding errors but the mismatch PSNR between the decoder's version of the post-error frames and the encoder's version is at least 20 dB. Change-Id: Ie6e2bcd436b1e8643270356d3a930e8989ff52a5
-
- 08 Jan, 2013 - 1 commit
-
-
Ronald S. Bultje authored
Change-Id: I0df99742029834a85c4933652b0587cf5b6b2587
-
- 06 Jan, 2013 - 1 commit
-
-
Ronald S. Bultje authored
3.2% gains on std/hd, 1.0% gains on hd. Change-Id: I481d5df23d8a4fc650a5bcba956554490b2bd200
-
- 04 Jan, 2013 - 1 commit
-
-
Paul Wilkins authored
This experimental change reorders the search so that all possible references that match the target reference frame are tested first and these in order of distance from the current block. These will usually be the highest scoring candidates. If we do not find enough good candidates this way we try non matching cases. These will usually be lower scoring candidates. The change in order together with breakouts when we have found enough candidates should reduce the computational cost and especially reduce the number of sort operations. Quality Results: Std Hd +0.228%, Hd +0.074%, YT +0.046%, derf +0.137% This effect is probably due to the fact that more distant weak candidates are now less likely to get "promoted" over near candidates even if they are repeated. Change-Id: Iec37e77d88a48ad0ee1f315b14327a95d63f81f6
-
- 05 Dec, 2012 - 1 commit
-
-
Paul Wilkins authored
This patch reduces the cpu cost of the MV ref search by only allowing insert for candidates that would be in the current top 4. This could alter the outcome and slightly favors near candidates which are tested first but also limits the worst case loop count to 4 and means in many cases it will drop out and not happen. Change-Id: Idd795a825f9fd681f30f4fcd550c34c38939e113
-
- 29 Nov, 2012 - 1 commit
-
-
Deb Mukherjee authored
This patch allows use of 8x8 and 4x4 ADST correctly for Intra 16x16 modes and Intra 8x8 modes when the block size selected is smaller than the prediction mode. Also includes some cleanups and refactoring. Rebase. Change-Id: Ie3257bdf07bdb9c6e9476915e3a80183c8fa005a
-
- 28 Nov, 2012 - 1 commit
-
-
Jim Bankoski authored
Change-Id: Ia1cce221f8511561b9cbd8edb7726fbc286ff243
-
- 27 Nov, 2012 - 1 commit
-
-
John Koleszar authored
Support for gyp which doesn't support multiple objects in the same static library having the same basename. Change-Id: Ib947eefbaf68f8b177a796d23f875ccdfa6bc9dc
-
- 16 Nov, 2012 - 1 commit
-
-
Paul Wilkins authored
Experiments with a larger set of contexts and some clean up to replace magic numbers regarding the number of contexts. The starting values and rate of backwards adaption are still suspect and based on a small set of tests. Added forwards adjustment of probabilities. The net result of adding the new context and forward update is small compared to the old context from the legacy find_near function. (down a little on derf but up by a similar amount for HD) HOWEVER.... with the new context and forward update the impact of disabling the reverse update (which may be necessary in some use cases to facilitate parallel decoding) is hugely reduced. For the old context without forward update, the impact of turning off reverse update (Experiment was with SB off) was Derf - 0.9, Yt -1.89, ythd -2.75 and sthd -8.35. The impact was mainly at low data rates. With the new context and forward update enabled the impact for all the test sets was no more than 0.5-1% (again most at the low end). Change-Id: Ic751b414c8ce7f7f3ebc6f19a741d774d2b4b556
-