1. 18 Feb, 2014 1 commit
    • Jingning Han's avatar
      Enable sub-pixel motion search for rtc mode · 64786739
      Jingning Han authored
      Run sub-pixel motion search when NEWMV gives lower rate-distortion
      cost. This improves coding performance of derf set by 8%, std-hd by
      2.2%.
      
      Change-Id: Ife50f7fda8463927784fe59a41cc439c833e941a
      64786739
  2. 13 Feb, 2014 2 commits
    • Jingning Han's avatar
      Initialize internal buffer pointers in rtc mode · cc10ee0a
      Jingning Han authored
      In rtc coding mode, the encoder is running non-RD mode decision. It
      does not need dual buffer swap as was the case in the RD mode. This
      commit initializes the internal buffer pointers outside the block
      coding loop for rtc mode.
      
      Change-Id: Ie076705c60d6b7919217e3f1dfd49e7db5064ac2
      cc10ee0a
    • Jingning Han's avatar
      Remove redundant set_offsets in rtc coding mode · 4712877e
      Jingning Han authored
      The functionalities of set_offsets() are subsumed in later
      set_partitioning() and rtc_use_partition() functions, hence removed.
      
      Change-Id: Ie514b13cb66c2379f13d0be9b1da4c12ca4581e5
      4712877e
  3. 12 Feb, 2014 7 commits
  4. 11 Feb, 2014 2 commits
    • Yunqing Wang's avatar
      Enable encode_breakout in real time encoding · 507fd522
      Yunqing Wang authored
      In real time encoding, we enable encode_breakout to make encoding
      fast. A speed feature "use_encode_breakout" is defined to set
      encode_breakout thresholds for different speeds.
      
      However, currently, static_thresh is an encoder option. The encode_
      breakout can be turned off if user sets static_thresh=0 specifically.
      
      The rtc set borg test result: (need to set --static_thresh=1)
      speed -5, psnr loss -3.543%;
      speed -4, psnr loss -2.358%;
      speed -3, psnr loss -0.771%.
      
      Encoding speed test:
      speed -5, 11% - 60% speedup;
      speed -4, 5.5% - 28% speedup;
      speed -3, 0.8% - 7% speedup.
      
      Change-Id: Icde592ffbe77eac7446f872a2e9eb2051733677b
      507fd522
    • Paul Wilkins's avatar
      Modified Aq1 and Aq2 · f30b3231
      Paul Wilkins authored
      Aq 1 only updates segment map on kf and arf and
      only uses 3 segments. With these settings AQ1 is
      + for most clips in SSIM but negative in psnr.
      However, the penalty in PSNR is much less than
      previously.
      
      Old version aq1 average results for std hd
      -20.899% psnr, -5.809% SSIM
      New version aq1 for std hd
      -3.57% psnr, +1.23% SSIM
      
      Aq2 Now uses only 2 segments and rd.
      This mode is still slightly negative for most clips on
      psnr and SSIM but seems to have a much bigger visual
      impact on several problem clips than aq mode 1.
      
      Old results for std hd:
      -2.578% psnr, -1.151% SSIM
      New results for std hd:
      -1.561% psnr, -0.85% SSIM
      
      Change-Id: I94f57f8a73121629ce598fb921aad761c1450e1c
      f30b3231
  5. 10 Feb, 2014 2 commits
    • Jingning Han's avatar
      Use more meaningful names for speed features · 734938dc
      Jingning Han authored
      Use frame_parameter_update to precisely describe the functionality.
      
      Change-Id: Ia9a55ba8efef7b987e30d949dd00ac716189bdb9
      734938dc
    • Yaowu Xu's avatar
      Merged two similar functions to reduce duplication · 855070e2
      Yaowu Xu authored
      Function encode_rtc_frame_internal() and encode_frame_internal() only
      differed by a couple of speed features, this commit relocation those
      difference into the setup of speed features and merged two functions
      into one to remove duplication.
      
      It also fixed a subtle bug super_fast_rtc was used before it was
      initialized.
      
      Change-Id: I234a5a1d11a4450930e5b4943dbab434208d5030
      855070e2
  6. 09 Feb, 2014 1 commit
  7. 08 Feb, 2014 1 commit
  8. 07 Feb, 2014 1 commit
  9. 05 Feb, 2014 2 commits
  10. 03 Feb, 2014 1 commit
  11. 01 Feb, 2014 1 commit
  12. 31 Jan, 2014 4 commits
    • Jim Bankoski's avatar
      bsize problem 360p · 18330286
      Jim Bankoski authored
      Fixes an assert that crashed for 360p..
      
      Change-Id: I2faf15c93cbdb0e62a27a3b663f0d09ba62774a8
      18330286
    • Yaowu Xu's avatar
      Only allow interp_filter change in SWITCHABLE mode · 538b1c6d
      Yaowu Xu authored
      This commit added a logic to prevent the inter_filter type from being
      changed if the default interp_filter mode is not switchable. Also, it
      sets the default interp_filter to BILINEAR at very and super fast rtc
      encoding modes
      
      Change-Id: Ic41e6d31de29795a4ce536ec79afb01cab6daad3
      538b1c6d
    • Yaowu Xu's avatar
      Properly merge two different real time modes · 6a4e2dda
      Yaowu Xu authored
      --rt --cpu-used=-5 uses the progressive rtc mode
      --rt --cpu-used=-6 uses the new super fast rtc mode
      
      Change-Id: Id6469ca996100cdf794a0e42d76430161f22f976
      6a4e2dda
    • Jim Bankoski's avatar
      remove confusing compressor_speed · da6b1862
      Jim Bankoski authored
      use mode instead
      
      Change-Id: I419d7a2dc4b0714ca6ff723c5e824521c150c460
      da6b1862
  13. 30 Jan, 2014 2 commits
  14. 29 Jan, 2014 6 commits
    • Yaowu Xu's avatar
      Add a strict mode for auto_min_max_partition_size feature · 1ca11865
      Yaowu Xu authored
      In this new mode, the size range is strictly determined by the min
      and max partition size in neighborhood blocks.
      
      Niklas720 encoding time at cpu-used -5 goes from 56250ms to 50676ms,
      a 10% reduction.
      
      Change-Id: I316b0e2ac967ff3fad57b28d69c0ec80b7d8b34e
      1ca11865
    • Dmitry Kovalev's avatar
      Renaming "mbskip" to "skip". · b107f2c4
      Dmitry Kovalev authored
      Change-Id: I27a30b43eae026a77f92958e2238d02d9cdf7832
      b107f2c4
    • Dmitry Kovalev's avatar
      Removing ENC_DEBUG. · 70cde0af
      Dmitry Kovalev authored
      Change-Id: I101017621003314f000a454725ea13fc9db43177
      70cde0af
    • Dmitry Kovalev's avatar
      Finally removing vp9_setup_interp_filters() function. · b00eb5c4
      Dmitry Kovalev authored
      Change-Id: If446225afbb49f6033c2a4516a37c377de6f70f7
      b00eb5c4
    • Jim Bankoski's avatar
      create super fast rtc mode · ea8aaf15
      Jim Bankoski authored
      This patch only works if the video is a width and height that are both
      a multiple of 32..   It sets every partition to 16x16, and does INTRADC
      only on the first frame and ZEROMV on every other frame.   It always does
      does the largest possible transform, and loop filter level is set to 4.
      
      Was ~20% faster than speed -5 of vp8
      
      Now 20% slower but adds motion search ( every block ), nearest, near
      and zeromv
      
      The SVC test was changed because - while this realtime mode produces
      bad quality albeit quickly, it isn't obeying all the rules it should
      about which frames are available.
      
      Change-Id: I235c0b22573957986d41497dfb84568ec1dec8c7
      ea8aaf15
    • Paul Wilkins's avatar
      Trap divide by 0. · c3821361
      Paul Wilkins authored
      Trap divide by 0 that could occur with a 0 rate target
      in aq mode COMPLEXITY_AQ.
      
      Change-Id: I034514f512b2a0db470ae8d37ea395278bf473cf
      c3821361
  15. 28 Jan, 2014 1 commit
  16. 24 Jan, 2014 1 commit
    • Dmitry Kovalev's avatar
      Renaming INTERPOLATION_TYPE to INTERP_FILTER. · 4264c938
      Dmitry Kovalev authored
      Corresponding renames:
        subpel_kernel              => interp_kernel
        vp9_get_filter_kernel()    => vp9_get_interp_kernel()
        pred_filter_type           => pred_interp_filter
        adaptive_pred_filter_type  => adaptive_pred_interp_filter
        mcomp_filter_type          => interp_filter
        read_interp_filter_type()  => read_interp_filter()
        write_interp_filter_type() => write_interp_filter()
        fix_mcomp_filter_type()    => fix_interp_filter()
      
      Change-Id: I1fa61fa1dc81ebbf043457c3ee2d8d4515bee6d3
      4264c938
  17. 22 Jan, 2014 1 commit
    • Yaowu Xu's avatar
      Prevent invaid memory access · ebe16056
      Yaowu Xu authored
      Reading second motion vector only when it has a second ref_frame
      
      Change-Id: Ica72c1cd955832e15ceccda5e5a17b0bfcd83044
      ebe16056
  18. 18 Jan, 2014 1 commit
    • Jingning Han's avatar
      Deprecate best_mv from encoder · b461c088
      Jingning Han authored
      This commit deprecates the use of best_mv from encoding and bit-stream
      writing stages. It hence removes the definition from MACROBLOCKD.
      
      Change-Id: I8e5302775a2aa4a18900726df407bff881f2dfb1
      b461c088
  19. 17 Jan, 2014 1 commit
  20. 16 Jan, 2014 1 commit
    • Jingning Han's avatar
      Inter-frame non-RD mode decision · 2f52decd
      Jingning Han authored
      This commit setups a test framework for real-time coding. It enables
      a light motion search for non-RD mode decision purpose.
      
      Change-Id: I8bec656331539e963c2b685a70e43e0ae32a6e9d
      2f52decd
  21. 15 Jan, 2014 1 commit
    • Jim Bankoski's avatar
      As you go mbmi->skip_coeff · 73cd22f8
      Jim Bankoski authored
      Calculate the skip_coeff as part of the encode process, rather than
      checking the eobs after the fact with another pass.
      
      Change-Id: Ib41b139e96a97dee30e4b993b4cc53d86337128d
      73cd22f8