1. 22 Jan, 2016 5 commits
    • Yue Chen's avatar
      Adding new compound modes to EXT_INTER experiment · 968bbc7b
      Yue Chen authored
      Combinations of different mv modes for two reference frames
      are allowed in compound inter modes. 9 options are enabled,
      and NEW_NEWMV.
      This experiment is mostly deported from the nextgen branch.
      It is made compatible with other experiments
      Coding gain of EXT_INTER(derflr/hevcmr/hevchd): 0.533%/0.728%/0.639%
      Change-Id: Id47e97284e6481b186870afbad33204b7a33dbb0
    • Debargha Mukherjee's avatar
      A fix for a missing tx_type · 4e406f70
      Debargha Mukherjee authored
      Change-Id: I165cd06256175edb7739020379ba3098251f4a7c
    • Julia Robson's avatar
      Fixes for var_tx when ext_tx is not enabled · 9fe188e4
      Julia Robson authored
      This patch fixes a couple of issues caused by change-id:
      Changes to the code for when the ext_tx experiment is not enabled
      were merged from master but as var_tx does not exist on master
      the changes had not been applied to the case when var_tx experiment
      is enabled
      Change-Id: Iaf2b717e6b8626b2b6a03226127221b776b49884
    • Debargha Mukherjee's avatar
      Some fixes on tx size/type selection · 8d69a6e8
      Debargha Mukherjee authored
      For ext_tx experiment.
      Change-Id: Ie37b9b456b09bde8b606fb978fee4cca8d0326b7
    • Yue Chen's avatar
      Relocate supertx prob update · fb29aec4
      Yue Chen authored
      Move it from vp10_adapt_intra_frame_probs() to
      vp10_adapt_inter_frame_probs() because intra frames do not use
      Change-Id: I28c7391944848666054d4b990ac17a8ae08aaaee
  2. 21 Jan, 2016 2 commits
    • Yaowu Xu's avatar
      Fix a typo in ctrl_set_render_size() · b6cefbf0
      Yaowu Xu authored
      Change-Id: I6a7fa6d0ae8ce8de7b426189d5eb00413f21bc17
    • Debargha Mukherjee's avatar
      Loop restoration filter · 84ca7a9f
      Debargha Mukherjee authored
      Current implementation is a bilateral filter whose
      parameters are transmitted in the bitstream.
      derflr: -0.647% BDRATE
      hevcmr: -0.794% BDRATE
      This is a prelimary patch. Various other variations are to
      be investigated next, that will hopefully be less expensive
      on the decoder side.
      Change-Id: I50634ae8f5014ad0bf7432306348908a349d81e1
  3. 20 Jan, 2016 1 commit
    • Julia Robson's avatar
      Making the forward transform consistent with high bit depth · c178b2d1
      Julia Robson authored
      This patch changes the code for 16bit buffers to use the same
      optimisation as is used for 8bit buffers. (See change-Id:
      I0452da1786d59bc8bcbe0a35fdae9f623d1d44e1 for more information
      about the optimisation)
      Change-Id: I5f327a13a7b01fc356114a2aa9d1261bf76d8d69
  4. 19 Jan, 2016 1 commit
  5. 15 Jan, 2016 3 commits
    • Yue Chen's avatar
      EXT_INTER experiment · 1ac85879
      Yue Chen authored
      NEW2MV is enabled, representing a new motion vector predicted from
      NEARMV. It is mostly ported from nextgen, where it was named
      A few fixes are done for sub8x8 RDO to correct some misused
      mv references in the original patch.
      A 'bug-fix' for encoding complexity is done, reducing the additional
      encoding time from 50% to 20%. In sub8x8 case, the old patch
      did motion search for every interpolation filter (vp9 only
      searches once). This fix also slightly improves the coding gain.
      This experiment has been made compatible with REF_MV and EXT_REFS.
      Coding gain (derflr/hevcmr/hevchd): 0.267%/0.542%/0.257%
      Change-Id: I9a94c5f292e7454492a877f65072e8aedba087d4
    • Alex Converse's avatar
      Deduplicate sign cost for ONE/TWO/THREE/FOUR tokens · dea6f521
      Alex Converse authored
      Change-Id: I9c383d604dfd240e38b198ac5bf86ddd3456f442
    • Debargha Mukherjee's avatar
      Fixing some compile issues · eee6afe0
      Debargha Mukherjee authored
      Fixes a breakage introduced with the latest merge from master and
      cleans up a couple of compiler warnings.
      Change-Id: Ia55b39ba78e43f6fe52c54d7f34faa4dd6bbbf26
  6. 14 Jan, 2016 1 commit
    • Jingning Han's avatar
      Handle single ref mv pair in the candidate list for compound mode · 3944cfb1
      Jingning Han authored
      This commit considers the case where a single reference motion
      vector pair is found in the candidate list. It treats this pair
      as the effective motion vector for nearestmv mode. This improves
      the coding performance by 0.06% for stdhd sets.
      Change-Id: I9ce12f456b52912933e05c18c3841a78c26155d2
  7. 13 Jan, 2016 1 commit
    • Yaowu Xu's avatar
      Fix encoder crashes and enc/dec mismatches · d803e8a2
      Yaowu Xu authored
      This commit adds the logic for segmentation map initialization and
      disable temporal update of segmentation map when error-resilient
      mode is on. It fixes the enc/dec mistmates (release build) and
      assertions(debug) when both aq-mode and error-resilient are on.
      Change-Id: Id2155e8b28962cf1f64494f4df0c8d79499b6890
  8. 12 Jan, 2016 5 commits
    • Jingning Han's avatar
      Generate compound reference motion vector · 33cc1bd2
      Jingning Han authored
      This commit allows the codec to add motion vector pairs into
      the candidate list. It further improves the compression performance
      by 0.1% across derf, hevcmr, stdhd, and hevchr sets without adding
      encode/decode time.
      Change-Id: I88d36da25a2a89bb506d411844af667081eba98b
    • Alex Converse's avatar
      Compress the final ANS state. · 0f840cc3
      Alex Converse authored
      The '110' prefix on a final byte indicates a superframe marker. Coded
      data is not allowed to use this pattern on a final byte.
      Code |state - l_base| little endian with the following prefix scheme:
      Prefix '00': Single byte coded state.
      Prefix '01': Two bytes le coded state.
      Prefix '10': Three bytes le coded state.
      Change-Id: Ibc953b67675b567394b93de39b7cb22cadc47435
    • Geza Lore's avatar
      Use specific PICK_MODE_CONTEXT for supertx. · e4663e6d
      Geza Lore authored
      Change-Id: I402d10dd666ebc4a06ce4472810a7e22f2e056ff
    • Alex Converse's avatar
      Code DCT tokens with ANS · d1893f64
      Alex Converse authored
      Change-Id: I452f9675325a5f45bfbbe3e7e135009a125539f1
    • Alex Converse's avatar
      Add an implementation of Asymetric Numeral Systems (ANS). · 9ffcb469
      Alex Converse authored
      Change-Id: Ie41bc72127e700887566dcc951da9d83a0b94891
  9. 11 Jan, 2016 1 commit
    • Jingning Han's avatar
      Refactor ref mv stack system · 253a200d
      Jingning Han authored
      This commit re-works the reference motion vector stack process
      and make it support extended context set. It unifies reference
      motion vector checking process for row and column scan, as well as
      for single block scan.
      Change-Id: I68c05cde93cf8b0ca2ef4d1523399f405bd0a337
  10. 08 Jan, 2016 3 commits
  11. 07 Jan, 2016 2 commits
  12. 05 Jan, 2016 2 commits
    • Peter de Rivaz's avatar
      Change to rd costing for CONFIG_VAR_TX · 2f943131
      Peter de Rivaz authored
      In select_tx_block I believe the rd cost was ignoring the bits
      needed to encode the split bit.
      Change-Id: Iacbf705b880db9a68967a994406ba90ecf693ab8
    • Debargha Mukherjee's avatar
      Super transform - ported from nextgen branch · 3787b174
      Debargha Mukherjee authored
      Various additional changes were made to make the experiment
      compatible with misc_fixes.
      derflr: +0.979%
      hevcmr: +0.865%
      Speed-wise with --enable-supertx the encoder is only about 10%
      slower than without. Decoding impact is about 30% slowdown.
      Note this does not work with ext-tx or var-tx yet. That is
      a TODO.
      Change-Id: If25af4241a7a9efbd28f58eda3c4f044c7a7ef4b
  13. 04 Jan, 2016 3 commits
  14. 31 Dec, 2015 1 commit
  15. 28 Dec, 2015 1 commit
  16. 18 Dec, 2015 2 commits
    • Zoe Liu's avatar
      Cleared the EXT_REFS code to make it more legible. · a4d0c714
      Zoe Liu authored
      Change-Id: I309c4e16fd305bcfa590d14f957a9598d23c7ee6
    • Zoe Liu's avatar
      Restore the flexibility for the new 3 references · ec36a2b0
      Zoe Liu authored
      For the experiment of EXT_REFS, removed the previous special handling
      on the new last 3 references, i.e. LAST2_FRAME, LAST3_FRAME, and
      LAST4_FRAME, at the decoder, so that these new last references are
      treated the same way as the other 3 references (LAST_FRAME,
      GOLDEN_FRAME, and ALTREF_FRAME). Encoder changes have been made
      accordingly to realize this flexibility.
      Change-Id: Ic6546f9443b4377bb7e7b101bfa3e70a8b8d1c65
  17. 16 Dec, 2015 1 commit
  18. 15 Dec, 2015 4 commits
    • Debargha Mukherjee's avatar
      Replace DST1 in ext_tx experiment with DST2 · 49d9730f
      Debargha Mukherjee authored
      The DST2 is implemented by input alternate sign-flip, followed
      by DCT, followed by output reversal.
      Results are roughly the same, but it should be easier to optimize
      the DST2.
      [Interestingly a mtrix multuiply implementation is about 0.1%
      Change-Id: If9ae5fdba87767fb0e6c163a62b77ee66a8d3afc
    • paulwilkins's avatar
      Fixed interval, fixed Q 1 pass test patch. · 99309004
      paulwilkins authored
      For testing implemented a fixed pattern and delta, 1 pass,
      fixed Q, low delay mode.
      This has not in any way been tuned or optimized.
      Change-Id: Icf9b57c3bb16cc5c0726d5229009212af36eb6d9
    • paulwilkins's avatar
      1 pass VBR mode bug fix. · 9ce611a7
      paulwilkins authored
      (copied from VP9)
      The one pass VBR mode selects a Q range based on a
      moving average of recent Q values. This calculation
      should have been excluding arf overlay frames as these
      are usually coded at the highest allowed value. Their
      inclusion skews the average and can cause it to drift
      upwards even when the clip as a whole is undershooting.
      As such it can undermine correct adaptation of the allowed
      Q range especially for easy content.
      Change-Id: I9e12da84e12917e836b6e53ca4dfe4f150b9efb1
    • Yaowu Xu's avatar
      Fix a enc/dec mismatch under CONFIG_MISC_FIXES · c7101830
      Yaowu Xu authored
      The culprit is on the decode side xd->lossless[i] setup was in wrong
      location where segment features are not yet decoded.
      Also on the encoder side, transform mode was not set consistently
      between when tx_mode is selected and how tx_mode is enforced in
      tx size selection.
      Change-Id: I4c4c32188fda7530cadab9b46d4201f33f7ceca3
  19. 14 Dec, 2015 1 commit