1. 16 Dec, 2013 2 commits
  2. 02 Dec, 2013 1 commit
    • Adrian Grange's avatar
      Fix bug in extend_frame chroma extended too far · 2e88f2f2
      Adrian Grange authored
      This fixes issue 667.
      
      In the case where the frame was an odd number of pixels
      wide or high, the border was being extended by one col
      or row too far.
      
      The calculation of color plane dimensions was modified
      to use those already computed at the time the frame
      buffer was allocated.
      
      Also freed the temporary scaling buffer in vpxdec to
      prevent a memory leak.
      
      Change-Id: I195bc81d84c0fc5d8260c1232200d62399e4b51f
      2e88f2f2
  3. 22 Nov, 2013 1 commit
    • Adrian Grange's avatar
      Fix bug in extend_frame chroma extended too far · d427fab5
      Adrian Grange authored
      This fixes issue 667.
      
      In the case where the frame was an odd number of pixels
      wide or high, the border was being extended by one col
      or row too far.
      
      The calculation of color plane dimensions was modified
      to use those already computed at the time the frame
      buffer was allocated.
      
      Also freed the temporary scaling buffer in vpxdec to
      prevent a memory leak.
      
      Change-Id: Ied04bdcdfd77469731408c05da205db1a6f89bf5
      d427fab5
  4. 14 Nov, 2013 1 commit
  5. 29 Sep, 2013 1 commit
  6. 24 Aug, 2013 2 commits
    • James Zern's avatar
      cosmetics: yv12extend add some const · 8b970da4
      James Zern authored
      Change-Id: I87f1ce2ceca80d3869dd72ba862329a98eb3e0c2
      8b970da4
    • James Zern's avatar
      yv12extend: name variables consistently · 5724b7e2
      James Zern authored
      - s|source -> src
      - dest -> dst
      - use verbose names in extend_plane dropping the redundant comments
      
      + light cosmetics:
      - join a few lines / assignments
      - drop some unnecessary comments & includes
      
      Change-Id: I6d979a85a0223a0a79a22f79a6d9c7512fd04532
      5724b7e2
  7. 23 Aug, 2013 1 commit
  8. 16 Aug, 2013 1 commit
  9. 09 Aug, 2013 1 commit
  10. 30 Jul, 2013 1 commit
  11. 17 Jul, 2013 1 commit
  12. 16 Jul, 2013 2 commits
    • Yaowu Xu's avatar
      Change to extend full border only when needed · 5b915ebd
      Yaowu Xu authored
      This is a short term optimization till we work out a decoder
      implementation requiring no frame border extension.
      
      Change-Id: I02d15bfde4d926b50a4e58b393d8c4062d1be70f
      5b915ebd
    • Ronald S. Bultje's avatar
      Increase border size from 96 to 160. · b02c4d36
      Ronald S. Bultje authored
      This is required because upon downscaling, if a motion vector points
      partially into the UMV (e.g. all minus 1 of 64+7 pixels, i.e. 70),
      then we can point up to 140 pixels into the larger-resolution (2x)
      reference buffer UMV, which means the UMV for reference buffers in
      downscaling needs to be 140 rounded up to the nearest multiple of 32,
      i.e. 160.
      
      Longer-term, we should probably handle the UMV differently by detecting
      edge coverage on-the-fly and using a temporary buffer for edge extensions
      instead of adding 160 pixels on all sides of the image (which means a
      CIF image uses 3x its own area size for borders).
      
      Change-Id: I5184443e6731cd6721fc6a5d430a53e7d91b4f7e
      b02c4d36
  13. 12 Jul, 2013 1 commit
    • James Zern's avatar
      yv12config: remove YUV_TYPE · 4fc6c88e
      James Zern authored
      this was never fleshed out in the context of VP8, for which it was
      added. for VP9 it has no meaning.
      
      Change-Id: Iba2ecc026d9e947067b96690245d337e51e26eff
      4fc6c88e
  14. 25 Jun, 2013 1 commit
  15. 08 Jun, 2013 1 commit
  16. 17 May, 2013 1 commit
    • John Koleszar's avatar
      Initial version of alpha channel support · 679e4abd
      John Koleszar authored
      This is a mostly-working implementation of an extra channel in the
      bitstream. Configure with --enable-alpha to test. Notable TODOs:
      
       - Add extra channel to all mismatch tests, PSNR, SSIM, etc
       - Configurable subsampling
       - Variable number of planes (currently always uses all 4)
       - Loop filtering
       - Per-plane lossless quantizer
       - ARNR support
      
      This implementation just uses the same contents as the Y channel
      for the A channel, due to lack of content and general pain in
      playing back 4 channel content. A later patch will use the actual
      alpha channel passed in from outside the codec.
      
      Change-Id: Ibf81f023b1c570bd84b3064e9b4b8ae52e087592
      679e4abd
  17. 16 May, 2013 1 commit
    • John Koleszar's avatar
      Add vp9_extend_frame_borders · 418564e7
      John Koleszar authored
      Adds a subsampling aware border extension function. This may be reworked
      soon to support more than 3 planes.
      
      Change-Id: I76b81901ad10bb1e678dd4f0d22740ca6c76c43b
      418564e7
  18. 15 May, 2013 1 commit
  19. 10 May, 2013 1 commit
    • John Koleszar's avatar
      Subsampling aware allocs and bitstream · da58436f
      John Koleszar authored
      Make framebuffer allocations according to the chroma subsamping
      factors in use. A bit is placed in the raw part of the frame header for
      each of the two subsampling factors. This will be moved in a future
      commit to make them part of the TBD feature set bits, probably only set
      on keyframes, etc.
      
      Change-Id: I59ed38d3a3c0d4af3c7c277617de28d04a001853
      da58436f
  20. 30 Apr, 2013 1 commit
    • John Koleszar's avatar
      Expand UMV border to 96 pixels · 9f5fd31d
      John Koleszar authored
      Ensures that the full 64 pixel border is available for prediction (need a minimum of
      64+INTERP_EXTEND on all sides, and 32+INTERP_EXTEND on UV). Value also must be a
      multiple of 32 to keep UV stride alignment. The smaller border was causing the prediction
      to read outside the frame, which can cause a mismatch.
      
      TODO: Get rid of this explicit border and use edge emulation instead.
      
      Change-Id: I3f68453a088ec0ab4349d0f5cc02b573be06d7c4
      9f5fd31d
  21. 03 Apr, 2013 1 commit
  22. 14 Mar, 2013 1 commit
    • John Koleszar's avatar
      Fix pulsing issue with scaling · 9b7be888
      John Koleszar authored
      Updates the YV12_BUFFER_CONFIG structure to be crop-aware. The
      exiting width/height parameters are left unchanged, storing the
      width and height algined to a 16 byte boundary. The cropped
      dimensions are added as new fields.
      
      This fixes a nasty visual pulse when switching between scaled and
      unscaled frame dimensions due to a mismatch between the scaling
      ratio and the 16-byte aligned sizes.
      
      Change-Id: Id4a3f6aea6b9b9ae38bdfa1b87b7eb2cfcdd57b6
      9b7be888
  23. 08 Feb, 2013 1 commit
    • John Koleszar's avatar
      Avoid allocating memory when resizing frames · c03d45de
      John Koleszar authored
      As long as the new frame is smaller than the size that was originally
      allocated, we don't need to free and reallocate the memory allocated.
      Instead, do the allocation on the size of the first frame. We could
      make this passed in from the application instead, if we wanted to
      support external upscaling.
      
      Change-Id: I204d17a130728bbd91155bb4bd863a99bb99b038
      c03d45de
  24. 26 Dec, 2012 1 commit
  25. 18 Dec, 2012 1 commit
  26. 06 Dec, 2012 3 commits
  27. 05 Dec, 2012 2 commits
    • Johann's avatar
      Begin to refactor vpx_scale usage in VP9 · 52d350fe
      Johann authored
      Only declare the functions in vpx_scale RTCD and include the relevant
      header.
      
      Remove unused files and functions in vpx_scale to avoid wasting time
      renaming. vpx_scale/win32/scaleopt.c contains functions which have not
      been called in a long time but are potentially optimized.
      
      The 'vp8' functions have not been renamed yet. That is for after the
      cleanup.
      
      Change-Id: I2c325a101d60fa9d27e7dfcd5b52a864b4a1e09c
      52d350fe
    • Johann's avatar
      Update ARM for vpx_scale changes · 4a9b9547
      Johann authored
      Refactor asm_offsets for vpx_scale.
      
      Change-Id: I2db0eeb28c8e757bd033c6614a1e5319a1a204a5
      4a9b9547
  28. 03 Dec, 2012 2 commits
    • Johann's avatar
      Begin to refactor vpx_scale usage in VP9 · c6bd29e2
      Johann authored
      Only declare the functions in vpx_scale RTCD and include the relevant
      header.
      
      Remove unused files and functions in vpx_scale to avoid wasting time
      renaming. vpx_scale/win32/scaleopt.c contains functions which have not
      been called in a long time but are potentially optimized.
      
      The 'vp8' functions have not been renamed yet. That is for after the
      cleanup.
      
      Change-Id: I2c325a101d60fa9d27e7dfcd5b52a864b4a1e09c
      c6bd29e2
    • Johann's avatar
      Update ARM for vpx_scale changes · 0d793ccf
      Johann authored
      Refactor asm_offsets for vpx_scale.
      
      Change-Id: I2db0eeb28c8e757bd033c6614a1e5319a1a204a5
      0d793ccf
  29. 30 Nov, 2012 1 commit
  30. 15 Nov, 2012 1 commit
  31. 05 Nov, 2012 1 commit
    • Paul Wilkins's avatar
      Build / make problem · b90df36d
      Paul Wilkins authored
      yv12extend_generic.h target not found.
      
      Change-Id: I8b5c9280c92573e5c1917ba4e18a99a6ce7dcb65
      b90df36d
  32. 02 Nov, 2012 2 commits
    • John Koleszar's avatar
      vpx_scale: sync from experimental · 9e06601d
      John Koleszar authored
      Import changes made on the experimental branch in preparation for
      merging the two branches.
      
      Change-Id: I7b5b8fb4fca155cb1d72e7ba13eef18e6a94a298
      9e06601d
    • John Koleszar's avatar
      vpx_scale: sync from master · 06f3e51d
      John Koleszar authored
      Update vpx_scale from current code in master, run style transform, fix
      lint warnings.
      
      Change-Id: I47eadeb5b6881d448ea3728537f9b8a5b5aac78e
      06f3e51d