1. 24 May, 2016 1 commit
    • Zoe Liu's avatar
      Fix --test-decode=warn to test mismatch · a63147ae
      Zoe Liu authored
      This patch always compares the most recent show frames between
      the encoder and the decoder to test the mismatch.
      
      Change-Id: I68a91ad0996a598231450debfd616e24992419b5
      a63147ae
  2. 11 May, 2016 1 commit
    • Yunqing Wang's avatar
      Add decoder APIs and unit tests in tile-coding experiment · 8e5e3387
      Yunqing Wang authored
      In the tile-coding experiment,
      1. In tile decoder, added 2 set control APIs:
         VP10_SET_DECODE_TILE_ROW and VP10_SET_DECODE_TILE_COL. It allowed
         users to set the range of decoding at frame level.
      2. Added a unit test while tile-coding experiment is on. It tested
         both tile encoder and decoder to make sure the encoded frame
         can be decoded as a whole frame or as independent tiles.
      
      Change-Id: I73fd0632b685047cb9376008127cde72efa3fb2b
      8e5e3387
  3. 28 Mar, 2016 1 commit
    • Yunqing Wang's avatar
      Make set_reference control API work in VP9 and VP10 · 9aaa3c93
      Yunqing Wang authored
      Moved the API patch from NextGen to NextGenv2 and also added this
      API to VP10. An example was included. To try it, for example, run
      the following command:
      $ examples/vpx_cx_set_ref vp10 352 288 in.yuv out.ivf 4 30
      
      Change-Id: Ib56bc3d365e530cfc8d859a13ddbf4c007907b81
      9aaa3c93
  4. 24 Mar, 2016 1 commit
    • Geza Lore's avatar
      Port large scale tile coding features from nextgen. · 490ba1ad
      Geza Lore authored
      If configured with --enable-ext-tile, the codec uses an alternative
      tile coding syntax in the bitstream. Changes include::
       - The maximum number of tile rows and columns is extended to 1024
         each.
       - The minimum tile width/height is 64 pixels (1 superblock).
       - A tile copy mode is added where a tile directly reuse the coded
         data of a previous tile
       - The meaning of the tile-columns and tile-rows codec parameters are
         overloaded to mean tile-width and tile-height in units of 64
         pixels.
       - All tiles should now be independent, including rows within the
         same columns, so large scale parallel, or independent decoding is
         possible.
       - vpxdec also gained the options to decode only a particular tile,
         tile row, or tile column.
      
      Changes without --enable-ext-tile:
       - All tiles should now be independent, including rows within the
         same columns, so large scale parallel, or independent decoding is
         possible.
       - vpxenc default tile configuration changed to use 1 tile column.
      
      Change-Id: I0cd08ad550967ac18622dae5e98ad23d581cb33e
      490ba1ad
  5. 21 Jan, 2016 1 commit
    • Debargha Mukherjee's avatar
      Loop restoration filter · 84ca7a9f
      Debargha Mukherjee authored
      Current implementation is a bilateral filter whose
      parameters are transmitted in the bitstream.
      
      derflr: -0.647% BDRATE
      hevcmr: -0.794% BDRATE
      
      This is a prelimary patch. Various other variations are to
      be investigated next, that will hopefully be less expensive
      on the decoder side.
      
      Change-Id: I50634ae8f5014ad0bf7432306348908a349d81e1
      84ca7a9f
  6. 09 Nov, 2015 1 commit
    • Johann's avatar
      Release v1.5.0 · cbecf57f
      Johann authored
      Javan Whistling Duck release.
      
      Change-Id: If44c9ca16a8188b68759325fbacc771365cb4af8
      cbecf57f
  7. 29 Sep, 2015 1 commit
    • Yaowu Xu's avatar
      Merged branch 'master' into nextgenv2 · 7c514e2d
      Yaowu Xu authored
      Resolved Conflicts in the following files:
              configure
              vp10/common/idct.c
              vp10/encoder/dct.c
              vp10/encoder/encodemb.c
              vp10/encoder/rdopt.c
      
      Change-Id: I4cb3986b0b80de65c722ca29d53a0a57f5a94316
      7c514e2d
  8. 26 Sep, 2015 1 commit
    • Ronald S. Bultje's avatar
      Rename display_{size,width,height} to render_*. · 36ffe644
      Ronald S. Bultje authored
      The name "display_*" (or "d_*") is used for non-compatible information
      (that is, the cropped frame dimensions in pixels, as opposed to the
      intended screen rendering surface size). Therefore, continuing to use
      display_* would be confusing to end users. Instead, rename the field
      to render_*, so that struct vpx_image can include it.
      
      Change-Id: Iab8d2eae96492b71c4ea60c4bce8121cb2a1fe2d
      36ffe644
  9. 11 Sep, 2015 1 commit
  10. 10 Sep, 2015 1 commit
  11. 31 Aug, 2015 1 commit
  12. 27 Aug, 2015 1 commit
  13. 13 Aug, 2015 2 commits
  14. 12 Aug, 2015 3 commits
  15. 21 Jul, 2015 2 commits
  16. 20 Jul, 2015 1 commit
  17. 17 Jul, 2015 1 commit
  18. 02 Jul, 2015 3 commits
  19. 05 Jun, 2015 1 commit
    • Frank Galligan's avatar
      Add control to skip loop filter in VP9 decoder. · bfb6d488
      Frank Galligan authored
      This control allows the application to skip the loop filter in the
      decoder. This is an advanced control that should only be used in
      extreme circumstances as it may introduce and accumulate decode
      artifacts.
      
      Change-Id: I278c65c60826f84c9141ebe06c6eeed3c2335fa8
      bfb6d488
  20. 14 May, 2015 1 commit
  21. 29 Apr, 2015 1 commit
    • James Zern's avatar
      vpx_mem: remove vpx_memcpy · f274c219
      James Zern authored
      vestigial. replace instances with memcpy() which they already were being
      defined to.
      
      Change-Id: Icfd1b0bc5d95b70efab91b9ae777ace1e81d2d7c
      f274c219
  22. 02 Apr, 2015 1 commit
  23. 30 Mar, 2015 1 commit
  24. 19 Mar, 2015 1 commit
  25. 04 Mar, 2015 2 commits
    • hkuang's avatar
      Fix variable shadowing. · 31fae6ac
      hkuang authored
      Change-Id: I287c61ad4aa85654aef3c871a62131bcd0d891ac
      31fae6ac
    • Adrian Grange's avatar
      Make encoder buffer allocation dynamic · 3807dd82
      Adrian Grange authored
      Frame buffers are now allocated dynamically on-demand.
      
      Entries in the reference frame map, cm->ref_frame_map,
      may now be set to -1 (INVALID_IDX) to indicate that
      there is not a valid reference buffer in that "slot".
      
      All slots in the reference frame map are now initialized
      to the empty state (-1) and each buffer is initialized
      to have a reference count of 0.
      
      Change-Id: Id1afe98de98db4ae8b2dfefed7889c3b28c68582
      3807dd82
  26. 17 Feb, 2015 1 commit
    • hkuang's avatar
      Fix the frame parallel invalid file test failure on ARM. · 2fa9e9e2
      hkuang authored
      There is a corner case that when a frame is corrupted, the following
      inter frame decode worker will miss the previous failure. To solve
      this problem, a need_resync flag needs to be added to master thread
      to keep control of that.
      
      Change-Id: Iea9309b2562e7b59a83dd6b720607410286c90a6
      2fa9e9e2
  27. 13 Feb, 2015 2 commits
  28. 09 Feb, 2015 1 commit
    • hkuang's avatar
      Set the maximum decode threads to be 8. · dd88f482
      hkuang authored
      This will fix the frame parallel decode hang on windows
      due to not enough semaphores.
      
      This will also make the frame parallel decode safer as
      the number of frame buffers could only support maximum
      8 threads.
      
      Change-Id: Id9ef50692819dcbebbd74a0aabffbfb3f39a4309
      dd88f482
  29. 07 Feb, 2015 1 commit
  30. 04 Feb, 2015 1 commit
    • hkuang's avatar
      Fix a thread lost bug in frame parallel decode. · b104b840
      hkuang authored
      After syncing the frame worker thread, avaiable thread count should
      increase by 1 even the worker thread does not have displayable frame
      to output.
      
      Change-Id: I9eeb87720fed82dfe38555286833ff88e8a8e746
      b104b840
  31. 31 Jan, 2015 1 commit
    • hkuang's avatar
      Try again to merge branch 'frame-parallel' into master branch. · be6aeada
      hkuang authored
      In frame parallel decode, libvpx decoder decodes several frames on all
      cpus in parallel fashion. If not being flushed, it will only return frame
      when all the cpus are busy. If getting flushed, it will return all the
      frames in the decoder. Compare with current serial decode mode in which
      libvpx decoder is idle between decode calls, libvpx decoder is busy
      between decode calls.
      
      Current frame parallel decode will only speed up the decoding for frame
      parallel encoded videos. For non frame parallel encoded videos, frame
      parallel decode is slower than serial decode due to lack of loopfilter
      worker thread.
      
      There are still some known issues that need to be addressed. For example:
      decode frame parallel videos with segmentation enabled is not right sometimes.
      
      * frame-parallel:
        Add error handling for frame parallel decode and unit test for that.
        Fix a bug in frame parallel decode and add a unit test for that.
        Add two test vectors to test frame parallel decode.
        Add key frame seeking to webmdec and webm_video_source.
        Implement frame parallel decode for VP9.
        Increase the thread test range to cover 5, 6, 7, 8 threads.
        Fix a bug in adding frame parallel unit test.
        Add VP9 frame-parallel unit test.
        Manually pick "Make the api behavior conform to api spec." from master branch.
        Move vp9_dec_build_inter_predictors_* to decoder folder.
        Add segmentation map array for current and last frame segmentation.
        Include the right header for VP9 worker thread.
        Move vp9_thread.* to common.
        ctrl_get_reference does not need user_priv.
        Seperate the frame buffers from VP9 encoder/decoder structure.
        Revert "Revert "Revert "Revert 3 patches from Hangyu to get Chrome to build:"""
       Conflicts:
             test/codec_factory.h
             test/decode_test_driver.cc
             test/decode_test_driver.h
             test/invalid_file_test.cc
             test/test-data.sha1
             test/test.mk
             test/test_vectors.cc
             vp8/vp8_dx_iface.c
             vp9/common/vp9_alloccommon.c
             vp9/common/vp9_entropymode.c
             vp9/common/vp9_loopfilter_thread.c
             vp9/common/vp9_loopfilter_thread.h
             vp9/common/vp9_mvref_common.c
             vp9/common/vp9_onyxc_int.h
             vp9/common/vp9_reconinter.c
             vp9/decoder/vp9_decodeframe.c
             vp9/decoder/vp9_decodeframe.h
             vp9/decoder/vp9_decodemv.c
             vp9/decoder/vp9_decoder.c
             vp9/decoder/vp9_decoder.h
             vp9/encoder/vp9_encoder.c
             vp9/encoder/vp9_pickmode.c
             vp9/encoder/vp9_rdopt.c
             vp9/vp9_cx_iface.c
             vp9/vp9_dx_iface.c
      
      This reverts commit a18da976.
      
      Change-Id: I361442ffec1586d036ea2e0ee97ce4f077585f02
      be6aeada
  32. 23 Jan, 2015 1 commit