1. 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
  2. 09 Nov, 2015 1 commit
    • Johann's avatar
      Release v1.5.0 · cbecf57f
      Johann authored
      Javan Whistling Duck release.
      Change-Id: If44c9ca16a8188b68759325fbacc771365cb4af8
  3. 31 Aug, 2015 1 commit
  4. 27 Aug, 2015 1 commit
  5. 13 Aug, 2015 2 commits
  6. 12 Aug, 2015 3 commits
  7. 10 Aug, 2015 1 commit
  8. 15 May, 2015 1 commit
    • James Zern's avatar
      vp9: add some missing includes · 97db651c
      James Zern authored
      mostly: <file>.c should include <file>.h
      silences missing prototype warnings
      Change-Id: Ic05ec32c6f7b2224b78825904d96d73aacad6000
  9. 29 Apr, 2015 1 commit
    • James Zern's avatar
      vpx_mem: remove vpx_memset · f58011ad
      James Zern authored
      vestigial. replace instances with memset() which they already were being
      defined to.
      Change-Id: Ie030cfaaa3e890dd92cf1a995fcb1927ba175201
  10. 09 Dec, 2014 1 commit
    • Paul Wilkins's avatar
      Substantial restructuring of AQ mode 2. · e68c8dcf
      Paul Wilkins authored
      The restructure moves the decision into the rd pick
      modes loop and makes a decision based at the 16x16
      block level instead of only the 64x64 level.
      This gives finer granularity and better visual results
      on the clips I have tested. Metrics results are worse
      than the old AQ2 especially for PSNR and this mode
      now falls between AQ0 and AQ1 in terms of visual
      impact and metrics results.
      Further tuning of this to follow.
      It should be noted that if there are multiple iterations
      of the recode loop the segment for a MB could change
      in each loop if the previous loop causes a change in the
      complexity / variance bin of the block. Also where a block
      gets a delta Q this will alter the rd multiplier for this block
      in subsequent recode iterations and frames where the
      segmentation is applied.
      Change-Id: I20256c125daa14734c16f7cc9aefab656ab808f7
  11. 02 Dec, 2014 1 commit
    • Paul Wilkins's avatar
      Use average mb energy from first pass in AQ2 test. · 00e3626e
      Paul Wilkins authored
      AQ2 modified to use mb_av_energy in defining variance
      thresholds used alongside complexity when defining the
      segment to be used for an SB64.
      Slight improvements in metrics (ssim and PSNR).
      Change-Id: Idb9cb73f7d9c4f7118cd7e84ac77b0f25cacbf81
  12. 25 Nov, 2014 1 commit
    • Yunqing Wang's avatar
      vp9_ethread: modify VP9_COMP structure · edbd61e1
      Yunqing Wang authored
      This patch modified struct VP9_COMP. Created a struct ThreadData
      to include data that need to be copied for each thread. In
      multiple thread case, one thread processes one tile. all threads
      share one copy of VP9_COMP,
      (refer to VP9_COMP *cpi in the code)
      but each thread has its own copy of ThreadData,
      (refer to ThreadData *td in the code).
      Therefore, within the scope of encode_tiles(), both cpi and td
      need to be passed as function parameters.
      In single thread case, the FRAME_COUNTS pointer in ThreadData
      points to "counts" in VP9_COMMON.
      Change-Id: Ib37908b2d8e2c0f4f9c18f38017df5ce60e8b13e
  13. 21 Nov, 2014 1 commit
    • Paul Wilkins's avatar
      Add variance restriction to AQ2. · d0312379
      Paul Wilkins authored
      Add an additional restriction to bit/complexity based
      segmentation based on spatial variance.
      Only lower Q when both the number of bits spent
      in the initial encoding pass and the spatial complexity are
      below a threshold. This will prevent the low Q segments
      being used just because there is a surfeit of bits.
      Small metrics gains especially opsnr.
      derf ~0.2% std-hd ~0.3%
      Change-Id: I6a8496d466d673f9b0e2b2ca6304ea7b6d8e1cce
  14. 16 Sep, 2014 1 commit
  15. 02 Jul, 2014 1 commit
    • Paul Wilkins's avatar
      Adapt strength of AQ2. · adf4293e
      Paul Wilkins authored
      Adapt the use of segmentation in AQ mode 2 based on
      the ambient kf/arf/gf Q.
      Disable segmentation where the rate per SB is very
      low and overheads are likely to outweigh the benefits.
      This patch reduces the -ve average metrics impact
      of AQ mode 2 while allowing stronger 3 segment AQ
      in some cases. Average improvement ~0.5-1.0%.
      Change-Id: I5892dfcc7507c5cc6444531cc7fe17554cf8d0c7
  16. 03 Jun, 2014 1 commit
    • Paul Wilkins's avatar
      Fix AQ mode 2 bug where delta causes Q 0. · 090d0798
      Paul Wilkins authored
      In Aq mode 2 for kf/arf/gf the segment q delta
      is calculated and then applied by re-quantization without
      going through the rd loop again. If the base Q != 0
      but the segment Q == 0 (lossless) this can could give rise
      to a situation where we have an illegal combination of
      transform size and Q. (Q == 0 requires that all blocks
      are coded 4x4 WHT).
      Change-Id: I241a58c6494ed442e9e4630070b0cde0fb99ae45
  17. 07 Apr, 2014 1 commit
  18. 27 Mar, 2014 1 commit