Skip to content
Snippets Groups Projects
  1. Apr 24, 2014
  2. Apr 23, 2014
  3. Apr 18, 2014
  4. Apr 09, 2014
  5. Apr 08, 2014
    • Frank Galligan's avatar
      Fix decoder resolution change with tiles · 6ae58931
      Frank Galligan authored
      There was a bug with the decoder that if you started the decoder
      with more threads than the first frame had tile columns. Afterwards
      tried to decode a frame with more tile columns than the first frame,
      the decoder would hang. E.g. run vpxdec --threads=4. The first frame
      had two tile columns, then the next key frame had 4 tile columns, the
      decoder would hang. If you started with 4 tiles and switched to 2
      tiles the decoder would be fine. The issue is that the worker the thread
      loop is using is stale.
      
      I added a test vector "vp90-2-14-resize-848x480-1280x720.webm" that
      exhibited the bug.
      
      Change-Id: I7bdd47241a52ac0fe1c693a609bc779257e94229
      6ae58931
  6. Mar 28, 2014
    • Yaowu Xu's avatar
      [BITSTREAM]Fix the scaling calculation · 4f857bac
      Yaowu Xu authored
      For very large size video image, the scaling calculation may need use
      value beyond the range of int. This commit upgrade the value to 64bit
      to make sure the calculation do not wrap around INT_MAX.
      
      The change corrected the decoder behavior.
      
      The bug affects only very large resolution video because the scaling
      calculation was sufficient for image size smaller than 2^13.
      
      This resolves issue:
      https://code.google.com/p/webm/issues/detail?id=750
      
      Change-Id: I2d2ed303ca6482f31f819f3c07d6d3e98ef3adc5
      4f857bac
  7. Mar 27, 2014
  8. Mar 18, 2014
  9. Mar 12, 2014
  10. Feb 27, 2014
  11. Feb 22, 2014
  12. Feb 21, 2014
  13. Feb 20, 2014
  14. Feb 13, 2014
    • Frank Galligan's avatar
      Add VP9 decoder support for external frame buffers · a4f30a50
      Frank Galligan authored
      Added support for external frame buffers to libvpx's VP9 decoder.
      If the external frame buffer functions are set then libvpx will
      call the get function whenever it needs a new frame buffer to
      decode a frame into. And it will call the release function
      whenever there are no more references to that buffer.
      
      Change-Id: Id2934d005f606af6e052fb6db0d5b7c02f567522
      a4f30a50
  15. Jan 31, 2014
    • Adrian Grange's avatar
      Disable update of last_show_frame for existing frame · 64e25974
      Adrian Grange authored
      When showing a previously decoded frame, i.e. when
      show_existing_frame=1, the update of the
      last_show_frame flag must be disabled.
      
      This is to ensure that the last_show_frame flag
      reflects the state of the flag for the immediately
      previously decoded frame rather then the value that
      was forced to ensure that a previously decoded frame
      would be displayed.
      
      This patch also adds a test vector to verify that the
      display_existing_frame flag works as expected. Code
      for generating the test vector can be found in this
      patch:
      https://gerrit.chromium.org/gerrit/#/c/68581/
      
      (Bug originally reported by Alexander Voronov
      <ru.xalba@gmail.com>).
      
      Change-Id: I731d288fba02088959f7fcc87707137fffc6acf5
      64e25974
  16. Jan 24, 2014
    • 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
  17. Jan 22, 2014
  18. Jan 16, 2014
  19. Dec 18, 2013
    • Yaowu Xu's avatar
      Added a test vector that exercises lpf deltas · 2424ba3d
      Yaowu Xu authored
      From frame 2, the lpf deltas are all cleared for for even frames, and
      a set of values are set and used for odd frames. The intention is to
      exercise decoding code around lpf delta/update decoding.
      
      Change-Id: Ic9ff1bc2c2a023f4805852f8573398f2ec2249d7
      2424ba3d
  20. Dec 17, 2013
  21. Dec 16, 2013
    • Yaowu Xu's avatar
      Added a test vector · a3e919a4
      Yaowu Xu authored
      The added vector was encoded with aq mode on, with the intent to
      exercise the decode code around segment feature.
      
      Change-Id: Iedcb7261e87d3e11b25ecf031d3a69385271148e
      a3e919a4
    • Frank Galligan's avatar
      Add frame buffer lru cache. · fbada948
      Frank Galligan authored and James Zern's avatar James Zern committed
      Add an option for libvpx to return the least recently used
      frame buffer.
      
      Change-Id: I886a96ffb94984f1c42de53086e0131922df3260
      fbada948
    • Frank Galligan's avatar
      Add support to pass in external frame buffers. · 10f89169
      Frank Galligan authored
      VP9 decoder can now use frame buffers passed in by the application.
      
      Change-Id: I599527ec85c577f3f5552831d79a693884fafb73
      10f89169
  22. Dec 12, 2013
  23. Dec 06, 2013
    • James Zern's avatar
      add tile test vectors · 937c3b99
      James Zern authored
      3840x2160
      
      vp90-2-08-tile_1x8_frame_parallel.webm
      vp90-2-08-tile_1x8.webm
      
      vpxenc crowd_run_2160p50.y4m \
        --codec=vp9 -p 2 \
        --frame-parallel=${fpm} \
        --tile-columns=${tc} \
        --limit=10 \
        --auto-alt-ref=1 \
        --lag-in-frames=5 \
        --target-bitrate=2500
      
      Change-Id: I6dc19b4fca483d03ef9a897a843bf9037d095c8e
      937c3b99
  24. Dec 04, 2013
    • Jingning Han's avatar
      Add a test vector for loopfilter · ebb583d2
      Jingning Han authored
      The test vector exercises the loopfilter behavior at frame boundary.
      
      blue_sky_1080p25.y4m --good --cpu-used=2 --threads=0 --profile=0
      --lag-in-frames=25 --limit=300 --min-q=0 --max-q=63 --cq-level=20
      --end-usage=0 --auto-alt-ref=1 -p 2 --kf-max-dist=9999 --kf-min-dist=0
      --drop-frame=0 --static-thresh=0 --bias-pct=50 --minsection-pct=0
      --maxsection-pct=2000 --arnr-maxframes=7 --arnr-strength=5
      --arnr-type=3 --sharpness=0 --undershoot-pct=100 --target-bitrate=6000
      
      Change-Id: Ibd0807395d2fe87f24f81f990369678df3de7c23
      ebb583d2
    • Yaowu Xu's avatar
      Fix VP8 border replication for very small image · a0f77f6a
      Yaowu Xu authored
      Also added a test vector for this issue.
      
      Change-Id: I8a8654f9d33b27afd53c295f1ea44d198550d067
      a0f77f6a
  25. Nov 26, 2013
    • Yunqing Wang's avatar
      Add a noise test vector · f2341364
      Yunqing Wang authored
      Added the test vector provided by Attila, which caught the bug in
      Issue 661 "Decoder produces mismatched outputs with ssse3 enabled
      and disabled"
      
      vp90-hantro-stream-001.ivf
      size: 320x180; 20 frames
      
      Change-Id: Ic0d2b57ac7596ecb938dd55abc8c706fc2dd6d8f
      f2341364
  26. Nov 19, 2013
  27. Nov 12, 2013
    • Jingning Han's avatar
      Add test vector for row/col tile decoding · 458951d8
      Jingning Han authored
      1920x1080
      
      vp90-2-08-tile-4x4.webm
      vp90-2-08-tile-4x4.webm.md5
      
      vpxenc blue_sky_1080p25 --frame-parallel=0 \
      --tile-columns=2 --tile-rows=2 \
      --lossless=0 --error-resilient=0 \
      --min-q=0 --max-q=30 --kf-min-dist=0 --kf-max-dist=9999 \
      --cpu-used=0 --codec=vp9 -p 2 --good --fps=25/1 --limit=5
      
      vp90-2-08-tile-4x1.webm
      vp90-2-08-tile-4x1.webm.md5
      
      vpxenc blue_sky_1080p25 --frame-parallel=0 \
      --tile-columns=0 --tile-rows=2 \
      --lossless=0 --error-resilient=0 \
      --min-q=0 --max-q=30 --kf-min-dist=0 --kf-max-dist=9999 \
      --cpu-used=0 --codec=vp9 -p 2 --good --fps=25/1 --limit=5
      
      Change-Id: I77d0ccf9b721ae5cfa72781fe0d3c534ea43b756
      458951d8
  28. Nov 06, 2013
    • Ivan Maltz's avatar
      Move SVC per-frame loop from sample app into libvpx proper · 1ed0e1be
      Ivan Maltz authored
      SVC multiple layer per frame encoding is invoked with vpx_svc_init and
      vpx_svc_encode. These interfaces are designed to be invoked from ffmpeg.
      Additional improvements:
      - make dummy frame handling a bit more explicit
      - fixed bug with single layer encodes
      - track individual frame sizes and psnrs instead of averages
      - parameterized quantizer, 16th scalefactors, more logging,
      - enabled single layer encodes to generate baseline
      - include new mode for 3 layer I frame with 5 total layers
      
      Change-Id: I46cfa600d102e208c6af8acd6132e0cc25cda8d4
      1ed0e1be
  29. Oct 28, 2013
    • James Zern's avatar
      add tile test vectors · ea9b2c03
      James Zern authored
      1920x1080
      
      vp90-2-08-tile_1x2_frame_parallel.webm
      vp90-2-08-tile_1x2.webm
      vp90-2-08-tile_1x4_frame_parallel.webm
      vp90-2-08-tile_1x4.webm
      
      vpxenc blue_sky_1080p25.y4m \
        --codec=vp9 -p 2 \
        --frame-parallel=${fpm} \
        --tile-columns=${tc} \
        --limit=10 \
        --auto-alt-ref=1 \
        --lag-in-frames=5 \
        --target-bitrate=2500
      
      Change-Id: Id9c94b722cc553a6865d443a94e8482c78b038bb
      ea9b2c03
  30. Oct 22, 2013
    • James Zern's avatar
      Revert "Merge "SVC improvements"" · cd74a901
      James Zern authored
      This reverts commit a82001b1, reversing
      changes made to f6d870f7.
      
      This commit breaks windows builds and needs some work to fix those and
      some additional comments.
      
      Change-Id: Ic0b0228e36704b127e5e399ce59db26182cfffe7
      cd74a901
  31. Oct 21, 2013
    • Ivan Maltz's avatar
      SVC improvements · 663916ce
      Ivan Maltz authored
      These changes were originally made in the Stratacaster team-review repository
      
      commit e114bffcd82ad74c3696ec58e13c0ac895d6c82d
      Author: Charles 'Buck' Krasic <ckrasic@google.com>
      Date:   Mon Oct 14 16:52:13 2013 -0700
      
          Make dummy frame handling a bit more explicit, fixing bug
          with single layer encodes.
      
      Squashed commit of the following:
      
      commit 1ebbfd976c0fadb02bf1ea562a2d0e3f0206daad
      Merge: ac468dde 54e88b7
      Author: Ivan Maltz <ivanmaltz@google.com>
      Date:   Fri Oct 11 17:29:58 2013 -0700
      
          Move SVC code from vp9_spatial_scalable_encoder to libvpx module accessible from ffmpeg
      
      commit 54e88b78b160becc9569fc3c6cb6b0a8c95dc357
      Author: Ivan Maltz <ivanmaltz@google.com>
      Date:   Tue Oct 8 09:08:40 2013 -0700
      
          common svc encoding code for sample app and ffmpeg
      
          added svc_encodeframe.c, svc_context.h, svc_test.cc
      
          vp9_spatial_scalable_encoder uses vpx_svc_encode
      
      commit 5616ec8e2e3d3e8d277333d8a9242f6c70151162
      Merge: 4528014 e29137df
      Author: Ivan Maltz <ivanmaltz@google.com>
      Date:   Tue Oct 8 08:47:58 2013 -0700
      
          Merge branch 'master' into stratacaster
      
      commit 45280148450b1f3d61e390df8aadedf85cd5bce1
      Merge: bb2b675 1ab60f7b
      Author: Sujeevan Rajayogam <sujee@google.com>
      Date:   Fri Oct 4 10:22:31 2013 -0700
      
          Merge branch 'master' into stratacaster
      
      commit bb2b675e595dc9bfc8551e963edf56800c3aea61
      Author: Sujeevan Rajayogam <sujee@google.com>
      Date:   Wed Oct 2 12:37:26 2013 -0700
      
          Track individual frame sizes and psnrs instead of averages.
      
      commit c6d303b714795c81e7ceb4173967115c9f8ff5b7
      Merge: fa87df9 35830879
      Author: Sujeevan Rajayogam <sujee@google.com>
      Date:   Fri Sep 27 10:05:35 2013 -0700
      
          Merge branch 'master' into stratacaster
      
      commit fa87df94fba923d9f7aeb8ae20c6e15f777e00b5
      Merge: bf22d71 3c465af2
      Author: Sujeevan Rajayogam <sujee@google.com>
      Date:   Thu Sep 26 16:10:31 2013 -0700
      
          Merge branch 'master' into stratacaster
      
      commit bf22d7144895a82e0c348ac177c8a261b9e2b88e
      Author: Sujeevan Rajayogam <sujee@google.com>
      Date:   Thu Sep 26 11:10:34 2013 -0700
      
          Parameterized quantizer, 16th scalefactors, more logging, enabled single layer encodes to generate baseline.
      
      commit ceffd7e6025b765f9886b5ea0f324248aa37e327
      Author: Sujeevan Rajayogam <sujee@google.com>
      Date:   Thu Sep 19 10:04:49 2013 -0700
      
          - Include new mode for 3 layer I frame with 5 total layers.
          - Refactor svc api.
      
      Change-Id: Ie4d775e21e006fa597d884c59488dc999478e9b5
      663916ce
  32. Oct 14, 2013
  33. Oct 03, 2013
  34. Sep 17, 2013
    • Adrian Grange's avatar
      Modified resize unit test to output test vector · 88c8ff25
      Adrian Grange authored
      Modified the resize unit test so that it optionally
      writes the encoded bitstream to file. The macro
      WRITE_COMPRESSED_STREAM should be set to 1 to enable
      output of the test bitstream; it is set to 0 by default.
      
      Change-Id: I7d436b1942f935da97db6d84574a98d379f57fb1
      88c8ff25
Loading