1. 28 Oct, 2014 1 commit
  2. 27 Oct, 2014 1 commit
  3. 24 Oct, 2014 2 commits
    • Yaowu Xu's avatar
      Add a new control of max bitrate for inter frame · 636099f7
      Yaowu Xu authored
      Change-Id: I205de3611622cff7f751ea8baf9f82784581730a
    • Jingning Han's avatar
      Tile based adaptive mode search in RD loop · eee201c2
      Jingning Han authored
      Make the spatially adaptive mode search in rate-distortion
      optimization loop inter tile independent. Experiments suggest that
      this does not significantly change the coding staticstics.
      Single tile, speed 3:
      pedestrian_area 1080p 1500 kbps
      59192 b/f, 40.611 dB, 101689 ms
      blue_sky 1080p 1500 kbps
      58505 b/f, 36.347 dB, 62458 ms
      mobile_cal 720p 1000 kbps
      13335 b/f, 35.646 dB, 45655 ms
      as compared to 4 column tiles, speed 3:
      pedestrian_area 1080p 1500 kbps
      59329 b/f, 40.597 dB, 101917 ms
      blue_sky 1080p 1500 kbps
      58712 b/f, 36.320 dB, 62693 ms
      mobile_cal 720p 1000 kbps
      13191 b/f, 35.485 dB, 45319 ms
      Change-Id: I35c6e1e0a859fece8f4145dec28623cbc6a12325
  4. 23 Oct, 2014 3 commits
    • Adrian Grange's avatar
      Move frame re-sizing into the recode loop · 65753eeb
      Adrian Grange authored
      The point at which frames are scaled to their
      coded dimensions is moved into the re-code loop.
      This is in preparation for a further patch that
      will add logic into the re-code loop to reduce
      the coded frame size if the encoder is struggling
      to hit the target data rate at the native frame
      Change-Id: Ie4131f5ec6fb93148879f6ce96123296442bf2d1
    • Yaowu Xu's avatar
      Move filter_ref initialization · 065809d2
      Yaowu Xu authored
      To outside the loop to avoid repeating the operations.
      Change-Id: I66c1986e98ce0d7594caad3d3b45de655b299bff
    • Paul Wilkins's avatar
      Enable dual arf with constant q. · 8fc3ab77
      Paul Wilkins authored
      Add second level arf Q adjustment when using dual arfs
      in constant Q mode.
      Previously in constant Q mode enabling dual arf hurt by ~5%
      but with this change the average benefit is ~1-1.5% with some
      mid range data points up ~10%.
      Note however that it still hurts on some clips including
      some very low motion show content.
      Change-Id: I5b7789a2f42a6127d9e801cc010c20a7113bdd9b
  5. 22 Oct, 2014 6 commits
  6. 21 Oct, 2014 5 commits
  7. 20 Oct, 2014 3 commits
    • Jingning Han's avatar
      Hybrid partition search for rtc coding mode · 9f128b3e
      Jingning Han authored
      This commit re-designs the recursive partition search scheme in
      rtc speed -5. It first checks if the current block is under cyclic
      refresh mode. If so, apply recursive partition search. Otherwise,
      perform sub-sampled pixel based partition selection. When the
      pre-selection finds the partition size should be 32x32 or above,
      use the partition size directly. Otherwise, apply partition search
      at nearby levels around the preset partition size.
      It is enabled in speed -5. The compression performance of rtc
      speed -5 is improved by 9.4%. Speed wise, the run-time goes slower
      from 1% to 10%.
      nik_720p, 1000 kbps
      33220 b/f, 38.977 dB, 10109 ms -> 33200 b/f, 39.119 dB, 10210 ms
      vidyo1_720p, 1000 kbps
      16536 b/f, 40.495 dB, 10119 ms -> 16536 b/f, 40.827 dB, 11287 ms
      Change-Id: I65adba352e3adc03bae50854ddaea1b421653c6c
    • Paul Wilkins's avatar
      Extend --auto-alt-ref so it can enable multi-alt ref. · 6f0ae3a2
      Paul Wilkins authored
      Extend --auto-alt-ref from parameter so we can use it to
      turn multi-arf on and off from the command line.
      For now the range is 0-off, 1-on, 2-multi-arf on.
      Rename play_alternate to enable_auto_arf
      Change-Id: Id7b64407cfbe76ba0090a83b588a03e22a240386
    • Paul Wilkins's avatar
      Resolve compiler warning. · 9626a0cb
      Paul Wilkins authored
      conversion from 'const int64_t' to 'int', possible loss of data.
      Change-Id: I471a73bba5d448d9be0ef9cbf1590fa73aa74be1
  8. 19 Oct, 2014 1 commit
    • levytamar82's avatar
      SAD32xh and SAD64xh for AVX2 · 7045aec0
      levytamar82 authored
      All sad function that process above 32 consecutive elements are optimized
      for AVX2:
      The functions that appeared as a hotspot is vp9_sad32x32 and vp9_sad64x64
      vp9_sad32x32 was optimized by 68% and vp9_sad64x64 was optimized by 90%
      both of them gave and overall ~2.3% user level gain
      Change-Id: Iccf86b375a2b54c5fbbe685902ead0c9a561b9fd
  9. 18 Oct, 2014 1 commit
  10. 17 Oct, 2014 6 commits
  11. 16 Oct, 2014 5 commits
    • Jingning Han's avatar
      Fix an ioc issue in super_block_uvrd · ed100c0b
      Jingning Han authored
      This commit fixes an ioc issue that will happen when the cumulative
      variables are not in effective use. The fix discards these
      redundant additions.
      Change-Id: Idbac5bfb989c0cedc5f8a323effce938519b2457
    • Paul Wilkins's avatar
      Change initialization of static_scene_max_gf_interval. · 716ae78c
      Paul Wilkins authored
      This removes an unnecessary restriction that causes
      a problem (noticed by AWG) when the forced key frame
      interval is set to a very small value, such as 10. In this case
      we were being forced to code minimal length GF groups.
      Change-Id: I76ef5861a09638ff51f61fea02359554184ada53
    • Minghai Shang's avatar
      [spatial svc]Another workaround to avoid using prev_mi · 68b550f5
      Minghai Shang authored
      We encode a empty invisible frame in front of the base layer frame to
      avoid using prev_mi. Since there's a restriction for reference frame
      scaling factor, we have to make it smaller and smaller gradually until
      its size is 16x16.
      Change remerged.
      Change-Id: I9efab38bba7da86e056fbe8f663e711c5df38449
    • Paul Wilkins's avatar
      Revert "Move input frame scaling into the recode loop" · d5130af5
      Paul Wilkins authored
      This reverts commit 452dc215.
      This change has introduced a significant quality regression on content
      with forced key frames. (e.g. the YT and yt-hd set). It is most
      noticeable in static content where the kf bits dominate. Here, despite
      key frames being apparently coded at the same Q, there is a drop in all
      metrics of ~20% (e.g clXR and BFa0).
      Change-Id: Iba14cc61778c0846fa0a59c33c55a9fc49512cb4
    • Paul Wilkins's avatar
      Revert "[spatial svc]Another workaround to avoid using prev_mi" · 46803296
      Paul Wilkins authored
      This reverts commit c113457a.
      Temporary revert to allow clean revert of another commit.
      Change-Id: Ia9b7b755e6c48e1b6e383329f121fef175a24b27
  12. 15 Oct, 2014 4 commits
    • Jingning Han's avatar
      Add init and reset functions for RD_COST struct · e2612fbd
      Jingning Han authored
      Change-Id: I2902de7051a883fd22e27a655209233733969cfd
    • Jingning Han's avatar
      Use rate/distortion thresholds to control non-RD partition search · 5e766cce
      Jingning Han authored
      Compare the estimated rate and distortion to the thresholds scaled
      according to the operating block size and determine if further
      split partition search will be run. The compression performance of
      speed -5 is changed by -0.074%. The encoding speed is 10% - 15%
      vidyo1 720p
      16545 b/f, 40.492 dB, 11475 ms -> 16535 b/f, 40.486 dB, 10100 ms
      16624 b/f, 36.310 dB, 10071 ms -> 16617 b/f, 36.313 dB, 8346 ms
      Change-Id: Ic9197ab5761279ae55d2fb7813b2af0e0db497b8
    • Marco's avatar
      Some updates for Speed 6/VAR_BASED_PARTITION. · 09ea74f1
      Marco authored
      Reduce the intra_cost_penalty for non-rd mode,
      and some updates to VAR_BASED_PARTITION.
      Visual tests show some improvement at Speed 6, for RTC clips.
      Change-Id: If9090daf7aed14906a32d931a538ab544bbca606
    • Jingning Han's avatar
      Replace copy_partitioning use case with choose_partitioning · 89b8c7a5
      Jingning Han authored
      This commit replaces the use of copy_partitioning with
      choose_partitioning based on the sse of subsamped pixels, which
      provides significantly better coding performance and runs at
      similar speed, as compared to copy_partitioning. It improves rtc
      speed 5 coding performance by 3%.
      Change-Id: I52d3682a12dce0147f5e52383a594fc242ca3228
  13. 14 Oct, 2014 2 commits
    • Minghai Shang's avatar
      [spatial svc]Another workaround to avoid using prev_mi · c113457a
      Minghai Shang authored
      We encode a empty invisible frame in front of the base layer frame to
      avoid using prev_mi. Since there's a restriction for reference frame
      scaling factor, we have to make it smaller and smaller gradually until
      its size is 16x16.
      Change-Id: I60b680314e33a60b4093cafc296465ee18169c19
    • Yunqing Wang's avatar
      Remove an unneeded function call · a614f228
      Yunqing Wang authored
      set_tile_limits() is called in vp9_change_config() already.
      Change-Id: I91c3a0df2c1c7fd7e71546d8f51fd5b65838a7da