1. 11 Dec, 2013 1 commit
  2. 10 Dec, 2013 3 commits
    • Yaowu Xu's avatar
      Fix a bug · e0f82c6e
      Yaowu Xu authored
      In evaluating partition split case, Wrong partition size is used in
      calling partition_plane_context(). This commit change to use the
      correct sub partition size. The incorrect partition size used were
      causing an ASAN error in unit test.
      
      Change-Id: Iab695b764bc51cc61580075f2ae4001421132362
      e0f82c6e
    • Dmitry Kovalev's avatar
      Cleaning up skip context calculation. · 2dd20e46
      Dmitry Kovalev authored
      Renames:
        vp9_get_pred_context_mbskip => vp9_get_skip_context
        vp9_get_pred_prob_mbskip    => vp9_get_skip_prob
      
      Change-Id: I2af499848ef73f3f5cd8cdb27852d0bcdfe31d09
      2dd20e46
    • Guillaume Martres's avatar
      avoid crash when using --best on cpus with SSE3 (but not SSE4) support · 0102f1d5
      Guillaume Martres authored
      Change-Id: Ie100114a01b8b4da7248603c40676792cd06b32a
      0102f1d5
  3. 09 Dec, 2013 3 commits
  4. 06 Dec, 2013 13 commits
    • Dmitry Kovalev's avatar
      Renaming vp9_get_pred_context_tx_size() function. · cb92f4f0
      Dmitry Kovalev authored
      Change-Id: Ia6d6f4dfb1fd1ec0f8ba53796b59a802e9d7881d
      cb92f4f0
    • Jingning Han's avatar
      Clean-ups in diamond_search_sad · 44627a96
      Jingning Han authored
      Use the pre-fetched stride value.
      
      Change-Id: I8d4aaedab7a83a4870be51c110da27e55ca3bc85
      44627a96
    • Yaowu Xu's avatar
      Disable early exit based on distortion in lossless · f8c06fb2
      Yaowu Xu authored
      In lossless coding, distortion is always 0. Early exit based on this
      metric was incorrect.
      
      This CL also changed to use best_rd instead of distortion as the metric
      for easly exit as requested by Jim.
      
      Change-Id: I8ef3e407ac03b4abc3283b273f936a68fad5c2ab
      f8c06fb2
    • Jingning Han's avatar
      Full range motion search for regular block sizes · b295092b
      Jingning Han authored
      Add a full range motion search for regular block sizes. This runs
      exhaustive search within the given reference area. This commit further
      optimizes the search process by combining 4 points test into one
      pipeline, which gives 30% speed-up as compared to run each individual
      point at a time.
      
      This full range search serves as a best possible motion search reference.
      When replacing the diamond search with full range search, the speed 0
      runtime of bus CIF at 2000 kbps goes from 153872ms to 623051ms. The
      compression performance compared to speed 0 setting gains 0.585% for
      derf set.
      
      Change-Id: Ieef1225216b0b86b4ac4872fa7fb9e18bf2eabb3
      b295092b
    • Dmitry Kovalev's avatar
      Replacing b_width_log2 with num_4x4_blocks_wide_lookup. · 52618d28
      Dmitry Kovalev authored
      Change-Id: I8ab9bbe2595ed1743f35223b6a6ce6d023b9a20e
      52618d28
    • Dmitry Kovalev's avatar
      Renaming reference mode context calculation function. · 63963f51
      Dmitry Kovalev authored
      Renames:
        vp9_get_pred_context_comp_inter_inter => vp9_get_reference_mode_context
        vp9_get_pred_prob_comp_inter_inter    => vp9_get_reference_mode_prob
      
      Change-Id: I3bbb69481e6b0c848028667c9269f567f293d3bd
      63963f51
    • Dmitry Kovalev's avatar
      Removing BLOCK_TYPES and adding PLANE_TYPES constant instead. · d6b159d4
      Dmitry Kovalev authored
      Change-Id: Ic3bb862e93aedf6a489a33ea6f7e5097d96855ee
      d6b159d4
    • Paul Wilkins's avatar
      Remove rate correction factor. · 570b6d25
      Paul Wilkins authored
      Removed an adaptive rate correction factor that was having
      a negative impact on quality in many clips. This factor
      was influencing the Q range available to each frame
      independently of the bits allocated to each.
      
      Average results with DISABLE_RC_LONG_TERM_MEM.
      
      derf +0.199, -0.059.
      yt +3.957, +3.798
      std hd +1.577, +2.140
      yt hd +4.127, +4.513
      
      Average results without  DISABLE_RC_LONG_TERM_MEM
      
      derf -0.628, -0.665
      yt +3.432, +3.015
      std hd -0.105, +0.153
      yt hd +3.432, +3.015
      
      Change-Id: I45bab6b606f49a442e7b27a6d631f3ffd843bbce
      570b6d25
    • Dmitry Kovalev's avatar
      Moving vp9_tree_probs_from_distribution() to encoder. · 4ac6a255
      Dmitry Kovalev authored
      Writing custom coeff branch count calculation (which is much clearer) in
      adapt_coef_probs() function. Removing vp9_treecoder.c file.
      
      Change-Id: I8880fb7a39996c8bcf6cd0acf9898a8c712ba91f
      4ac6a255
    • Dmitry Kovalev's avatar
      Renaming PREV_COEF_CONTEXTS to COEFF_CONTEXTS. · 377fa8af
      Dmitry Kovalev authored
      Also adding BAND_COEFF_CONTEXTS macro to simplify for loop logic.
      
      Change-Id: I12a78a49cf1addf81e6b3fe2a3736ec2b79bd79e
      377fa8af
    • Dmitry Kovalev's avatar
      vp9_get_pred_context_intra_inter() clean up. · 6fd71e1b
      Dmitry Kovalev authored
      Renaming:
       vp9_get_pred_context_intra_inter => vp9_get_intra_inter_context
       vp9_get_pred_prob_intra_inter    => vp9_get_intra_inter_prob
      
      Change-Id: I2c1affea2e84f4e616137c6df82adb11c7845781
      6fd71e1b
    • Deb Mukherjee's avatar
      Further rate control cleanups · 52d27367
      Deb Mukherjee authored
      Includes various cleanups.
      Streamlines the interfaces so that all rate control state
      updates happen in the vp9_rc_postencode_update() function.
      This will hopefully make it easier to support multiple
      rate control schemes.
      Removes some unnecessary code, which in rare cases can casue
      a difference in the constrained quality mode output, but
      other than that there is no bitstream change yet.
      
      Change-Id: I3198cc37249932feea1e3691c0b2650e7b0c22fc
      52d27367
    • Dmitry Kovalev's avatar
      Renaming constants. · 0d4b8d7e
      Dmitry Kovalev authored
      NUM_YV12_BUFFERS        => FRAME_BUFFERS
      ALLOWED_REFS_PER_FRAME  => REFS_PER_FRAME
      NUM_REF_FRAMES_LOG2     => REF_FRAMES_LOG2
      NUM_REF_FRAMES          => REF_FRAMES
      NUM_FRAME_CONTEXTS_LOG2 => FRAME_CONTEXTS_LOG2
      NUM_FRAME_CONTEXTS      => FRAME_CONTEXTS
      
      Change-Id: I4e1ada08f25d8fa30fdf03aebe1b1c9df0f87e63
      0d4b8d7e
  5. 05 Dec, 2013 3 commits
  6. 04 Dec, 2013 3 commits
    • Dmitry Kovalev's avatar
      Removing old code. · 30a5a07a
      Dmitry Kovalev authored
      Change-Id: I7ccbe13e1accd292a3e0e98522416f9c4b4bc82b
      30a5a07a
    • Dmitry Kovalev's avatar
      Moving eob array to the encoder. · f00d157c
      Dmitry Kovalev authored
      In the decoder we don't need to save eobs, we can pass eob as an argument.
      That's why removing eob arrays from VP9Decompressor and TileWorkerData,
      and moving eob pointer from macroblockd_plane to macroblock_plane.
      
      Change-Id: I8eb919acc837acfb3abdd8319af63d1bbca8217a
      f00d157c
    • Dmitry Kovalev's avatar
      Cleaning up vp9_entropy.h file. · 8e89e2f2
      Dmitry Kovalev authored
      Renaming constants for consistency:
        DCT_VAL_CATEGORY1 => CATEGORY1_TOKEN
        DCT_VAL_CATEGORY2 => CATEGORY2_TOKEN
        DCT_VAL_CATEGORY3 => CATEGORY3_TOKEN
        DCT_VAL_CATEGORY4 => CATEGORY4_TOKEN
        DCT_VAL_CATEGORY5 => CATEGORY5_TOKEN
        DCT_VAL_CATEGORY6 => CATEGORY6_TOKEN
        DCT_EOB_TOKEN     => EOB_TOKEN
        DCT_EOB_MODEL_TOKEN => EOB_MODEL_TOKEN
        MAX_ENTROPY_TOKENS => ENTROPY_TOKENS
      
      Moving constants:
        INTER_MODE_CONTEXTS from vp9_entropy.h to vp9_blockd.h.
        EOSB_TOKEN from vp9_entropy.h to vp9_tokenize.h
      
      Change-Id: I5fcbf081318e1d365792b6d290a930c6cb0f3fc2
      8e89e2f2
  7. 03 Dec, 2013 4 commits
    • Jingning Han's avatar
      Fix initialization order for the encoder · 3c346191
      Jingning Han authored
      This commit makes the coefficient tree initialized prior to token
      initialization, where the coefficient costs are filled out according
      to the probabilities associated with coefficient value categories.
      
      Change-Id: If4e89c3923058376f8382c683fe4a225a4a38af3
      3c346191
    • Jingning Han's avatar
      Fix intra prediction ref selection in skip_encode · f01ad926
      Jingning Han authored
      This commit fixes the intra prediction reference source selection
      in the settings of skip_encode. Use original boundary pixels as
      prediction reference, when the inverse transform and reconstruction
      are skipped in the per block size rate-distortion optimization loop.
      
      Change-Id: I36081aa30aa46e203e0e6f4e8a420fd08269469a
      f01ad926
    • Alex Converse's avatar
      Remove plane_block_idx. · 2360a5f0
      Alex Converse authored
      Its last remaining caller can be passed its results directly without any
      additional work. Also, it's not non-4:2:0 safe.
      
      Change-Id: Ia5089ba5f7f66c7617270483c619c9271aefd868
      2360a5f0
    • Jingning Han's avatar
      Fix use_uv_intra_estimate in rd loop · 9f81a50c
      Jingning Han authored
      This commit fixes the use of uv_intra_estimate by properly restoring
      the mode_info struct required by rd_pick_intra_sbuv_mode.
      
      Change-Id: I6a156d79533c4e2e60dfd3b8c5bb0a42a8eca280
      9f81a50c
  8. 02 Dec, 2013 1 commit
  9. 27 Nov, 2013 6 commits
  10. 26 Nov, 2013 3 commits