1. 24 Jul, 2014 - 1 commit
    • Johann's avatar
      Set and use uv_crop_[width|height] · e956c007
      Johann authored
      Ensure consistent border extension by rounding uv_crop_* at image
      creation time. Where it was rounded problems could arise with the right
      and bottom extensions.
      When padding = 32, y_width = 64, and y_crop_width = 63:
       (padding + width - crop_width + 1) / 2
       32 + 64 - 63 + 1 should equal 32 *but*
       32 + 1 + 1 equals 34 giving a right buffer of 17 instead of 16.
      By calculating uv_crop_* earlier we round up at the appropriate time and
      for the same values:
       (y_crop_width + 1) / 2
       63 + 1 / 2
       64
       (padding / 2) + uv_width - uv_crop_width
       16 + 16 - 16
       16
      
      Change-Id: If866cd1b63444771440edb1432280ac83875969b
      e956c007
  2. 18 Jul, 2014 - 1 commit
  3. 17 Jul, 2014 - 1 commit
  4. 11 Jun, 2014 - 1 commit
  5. 24 Apr, 2014 - 1 commit
  6. 28 Feb, 2014 - 1 commit
  7. 13 Feb, 2014 - 1 commit
  8. 10 Feb, 2014 - 1 commit
    • Frank Galligan's avatar
      Add get release decoder frame buffer functions. · e8e15279
      Frank Galligan authored
      This CL changes libvpx to call a function when a frame buffer
      is needed for decode. Libvpx will call a release callback when
      no other frames reference the frame buffer. This CL adds a
      default implementation of the frame buffer callbacks. Currently
      only VP9 is supported. A future CL will add support for
      applications to supply their own frame buffer callbacks.
      
      Change-Id: I1405a320118f1cdd95f80c670d52b085a62cb10d
      e8e15279
  9. 24 Jan, 2014 - 1 commit
    • Frank Galligan's avatar
      Revert external frame buffer code. · b1c72b63
      Frank Galligan authored
      A future CL will add external frame buffers
      differently.
      
      Squash commit of four revert commits:
      Revert "Increase required number of external frame buffers"
      
      This reverts commit 9e41d569.
      
      Revert "Add external constants."
      
      This reverts commit bbf53047.
      
      Revert "Add frame buffer lru cache."
      
      This reverts commit fbada948.
      
      Conflicts:
      	vpxdec.c
      
      Change-Id: I76fe42419923a6ea6c75d9997cbbf941d73d3005
      
      Revert "Add support to pass in external frame buffers."
      
      This reverts commit 10f89169.
      
      Conflicts:
      	test/external_frame_buffer_test.cc
      	vp9/common/vp9_alloccommon.c
      	vp9/common/vp9_reconinter.c
      	vp9/decoder/vp9_decodeframe.c
      	vp9/encoder/vp9_onyx_if.c
      	vp9/vp9_dx_iface.c
      	vpx/vpx_decoder.h
      	vpx/vpx_external_frame_buffer.h
      	vpx_scale/generic/yv12config.c
      	vpxdec.c
      
      Change-Id: I7434cf590f1c852b38569980e4247fad0d939c2e
      b1c72b63
  10. 10 Jan, 2014 - 1 commit
  11. 16 Dec, 2013 - 2 commits
  12. 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
      v1.3.0
      2e88f2f2
  13. 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
  14. 14 Nov, 2013 - 1 commit
  15. 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
  16. 23 Aug, 2013 - 1 commit
  17. 16 Aug, 2013 - 1 commit
  18. 09 Aug, 2013 - 1 commit
  19. 30 Jul, 2013 - 1 commit
  20. 17 Jul, 2013 - 1 commit
  21. 16 Jul, 2013 - 1 commit
    • 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
  22. 25 Jun, 2013 - 1 commit
  23. 08 Jun, 2013 - 1 commit
  24. 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
  25. 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
  26. 15 May, 2013 - 1 commit
  27. 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
  28. 03 Apr, 2013 - 1 commit
  29. 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
  30. 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
  31. 06 Dec, 2012 - 3 commits
  32. 05 Dec, 2012 - 1 commit
    • 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
  33. 03 Dec, 2012 - 1 commit
    • 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
  34. 15 Nov, 2012 - 1 commit
  35. 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