1. 20 Oct, 2015 1 commit
  2. 17 Oct, 2015 1 commit
  3. 06 Oct, 2015 1 commit
  4. 26 Sep, 2015 1 commit
    • Ronald S. Bultje's avatar
      vp9/10: improve support for render_width/height. · 812945a8
      Ronald S. Bultje authored
      In the decoder, map this to the output variable vpx_image_t.r_w/h.
      This is intended as an improved version of VP9D_GET_DISPLAY_SIZE,
      which doesn't work with parallel frame decoding. In the encoder,
      map this to a codec control func (VP9E_SET_RENDER_SIZE) that takes
      a w/h pair argument in a int[2] (identical to VP9D_GET_DISPLAY_SIZE).
      
      Also add render_size to the encoder_param_get_to_decoder unit test.
      
      See issue 1030.
      
      Change-Id: I12124c13602d832bf4c44090db08c1009c94c7e8
      812945a8
  5. 16 Sep, 2015 1 commit
    • Ronald S. Bultje's avatar
      Add support for color-range. · eeb5ef0a
      Ronald S. Bultje authored
      In decoder, export (eventually) into vpx_image_t.range field. In
      encoder, use oxcf->color_range to set it (same way as for
      color_space).
      
      See issue 1059.
      
      Change-Id: Ieabbb2a785fa58cc4044bd54eee66f328f3906ce
      eeb5ef0a
  6. 28 Aug, 2015 1 commit
    • Yunqing Wang's avatar
      vp10 cleanup: remove svc code · c147c4d6
      Yunqing Wang authored
      Spatial/temporal svc code was removed. Verified using Borg test,
      and the results before and after the change are matching.
      
      Change-Id: I4c2ee5cd560428e3e50be02e57e5871ef4246390
      c147c4d6
  7. 17 Aug, 2015 1 commit
  8. 13 Aug, 2015 1 commit
  9. 12 Aug, 2015 3 commits
  10. 14 Jul, 2015 1 commit
    • Debargha Mukherjee's avatar
      Fixes part of merge regression from adding arf parameters. · 3c524488
      Debargha Mukherjee authored
      From Change  Ibf0c30b72074b3f71918ab278ccccc02a95a70a0
      There is still an issue relating to one animated test clip with repeat
      patterns where this change effectively increase the default  maximum
      arf interval by +1. This can be examined seperately.
      
      Change-Id: Idd01d5480fc45202d8a059a0c3afc0997cc5bdd1
      3c524488
  11. 06 Jul, 2015 1 commit
    • Debargha Mukherjee's avatar
      Expose params min-gf-interval/max-gf-interval · 98526433
      Debargha Mukherjee authored
      Adds two new vp9 parameters --min-gf-interval and --max-gf-interval
      to enable testing based on frequency of alt-ref frames.
      
      Also adds a unit-test to test enforcement of min-gf-interval.
      
      For both these parameters the default value is 0, which indicates
      they are picked by the encoder, based on resolution and framerate
      considerations. If they are greater than zero, the specified
      parameter is honored.
      
      (Additional note by paulwilkins)
      Note that there is a slight oddity in that key frames are also GFs and
      considered part of  GF only group. However they are treated as not
      being part of an arf group because for arf groups the previous GF is
      assumed to be the terminal or overlay frame for the previous group.
      
      (end note)
      
      Change-Id: Ibf0c30b72074b3f71918ab278ccccc02a95a70a0
      98526433
  12. 04 Jun, 2015 1 commit
    • Marco's avatar
      Remove ABI check for 1 pass CBR SVC. · a8c5ab2c
      Marco authored
      Remove the ABI check for the controls needed for SVC 1 pass CBR mode.
      Bump up the ABI version.
      
      Change-Id: I35b79ee010e14af83c6d1e801d574deaaa2fc7eb
      a8c5ab2c
  13. 02 Jun, 2015 1 commit
    • Marco's avatar
      Vidyo patch: Rate control for SVC, 1 pass CBR mode. · c139b81a
      Marco authored
      -Make Rate control work for SVC 1 pass CBR mode.
      -Added temporal layering mode.
      -Fixed bug in non-rd variance partition.
      -Modified/updated the sample encoders (vp9_spatial_svc_encoder, vpx_temporal_svc_encoder).
      -Added datarate unittest(s) for 1 pass CBR SVC.
      
      Change-Id: Ie94b1b68a56ea1267b5087c625e5df04def2ee48
      c139b81a
  14. 24 Mar, 2015 1 commit
  15. 20 Mar, 2015 1 commit
  16. 19 Mar, 2015 1 commit
    • James Zern's avatar
      put spatial svc behind an ABI check · 18613408
      James Zern authored
      this removes the CONFIG_* checks from public headers, but means
      '--enable-experimental --enable-spatial-svc' builds will fail without a
      local change to the ABI in vpx_encoder.h. this should be all right for
      testing this experiment.
      
      Change-Id: Ief55e7b9d1e8332cfce990275e04c29b30af0c4a
      18613408
  17. 16 Mar, 2015 1 commit
  18. 13 Mar, 2015 2 commits
    • Yaowu Xu's avatar
      Provide information on codec controls · 268f1066
      Yaowu Xu authored
      The commit updates the comments in vp8cx.h to make it clear which
      codec support each of codec control functions.
      
      Change-Id: Ibf876e289d4325bbb61ce19311da60d384624c2f
      268f1066
    • Yaowu Xu's avatar
      Rename a vp9 only control with vp9e prefix · 41652906
      Yaowu Xu authored
      Also updated comments and doc to make it clear that the control is
      supported in VP9 only.
      
      Change-Id: I6f120b65135fc1185695e9e3dc29fbe0d430824b
      41652906
  19. 05 Mar, 2015 1 commit
  20. 04 Mar, 2015 1 commit
  21. 03 Mar, 2015 1 commit
  22. 26 Feb, 2015 1 commit
  23. 23 Feb, 2015 1 commit
    • paulwilkins's avatar
      Account for rate error in GF group Q calculation. · 8d7f53f0
      paulwilkins authored
      When GF group adaptive maxQ is enabled this patch accounts
      somewhat for accumulated error in the rate control.
      
      This improves accuracy quite a bit on many clips especially
      when there is  overshoot.
      
      Examples when the overshoot and undershoot command line
      parameters are set to 100:
      
      Hall @ 1200 overshoot is reduced from 67-24%.
      Akiyo @ 400 undershoot is reduced from 28%-15%.
      
      Setting a lower value for undershoot or overshoot still
      reduces the error further.
      
      Impact on metrics is mixed with some gains in average psnr
      but generally a little lower (e.g. 0.5%) on overall and ssim.
      
      The GF group adaptation is still off by default in this patch.
      Compared to with the head, enabling this mode now gives
      big average psnr gains on the YT sets (e.g. YT_HD >11.2%),
      a drop in overall PSNR (YT-HD 3.9%) and a smaller drop or
      neutral for SSIM.
      
      Change-Id: If4b32cd0740d3fb941317b374f9c2951954eee90
      8d7f53f0
  24. 03 Feb, 2015 1 commit
  25. 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
  26. 29 Jan, 2015 1 commit
  27. 23 Jan, 2015 1 commit
  28. 21 Jan, 2015 1 commit
  29. 14 Jan, 2015 1 commit
    • Yaowu Xu's avatar
      Add encoder control for setting color space · e94b415c
      Yaowu Xu authored
      This commit adds encoder side control for vp9 to set color space info
      in the output compressed bitstream.
      
      It also amends the "vp9_encoder_params_get_to_decoder" test to verify
      the correct color space information is passed from the encoder end to
      decoder end.
      
      Change-Id: Ibf5fba2edcb2a8dc37557f6fae5c7816efa52650
      e94b415c
  30. 09 Jan, 2015 2 commits
    • Yaowu Xu's avatar
      Added plumbing for setting color space · ce52b0f8
      Yaowu Xu authored
      Change-Id: If64052cc6e404abc8a64a889f42930d14fad21d3
      ce52b0f8
    • Yaowu Xu's avatar
      Fix comments and color format · ecbca31a
      Yaowu Xu authored
      Replaced "color space" with "color format" in comments where color
      sampling format is concerned, so to differentiate from the concept
      defined in COLOR_SPACE.
      
      Change-Id: I8c935034c166b24307a99352dab1686531276bb8
      ecbca31a
  31. 18 Dec, 2014 1 commit
  32. 17 Dec, 2014 1 commit
    • Yaowu Xu's avatar
      Corrected value range of --cpu-used for vp9 · a16f0753
      Yaowu Xu authored
      This commit removes undefined value options of cpu-used for VP9 and
      changed vpxenc prompt to reflect the usable range of [-8,8]
      
      Change-Id: Ib80fef3dbb6ec9aabac45ed13e8ab6fbaf94f55e
      a16f0753
  33. 04 Dec, 2014 1 commit
    • Yunqing Wang's avatar
      vp9_ethread: the tile-based multi-threaded encoder · eba9c762
      Yunqing Wang authored
      Currently, VP9 supports column-tile encoding, which allows a frame
      to be encoded in multiple column tiles independently. The number of
      column tiles are set by encoder option "--tile-columns". This
      provides a way to encode a frame in parallel.
      
      Based on previous set of patches, this patch implemented the tile-
      based multi-threaded encoder. Each thread processes one or more
      tiles.
      
      Usage:
      For HD clips:
      --tile-columns=2 --threads=1/2/3/4
      
      While using 4 threads, tests showed that the encoder achieved
      2.3X - 2.5X speedup at good-quality speed 3, and 2X speedup at
      realtime speed 5.
      
      Change-Id: Ied987f8f2618b1283a8643ad255e88341733c9d4
      eba9c762
  34. 13 Nov, 2014 1 commit
    • Adrian Grange's avatar
      Prepare for dynamic frame resizing in the recode loop · 0d085ebc
      Adrian Grange authored
      Prepare for the introduction of frame-size change
      logic into the recode loop.
      
      Separated the speed dependent features into
      separate static and dynamic parts, the latter being
      those features that are dependent on the frame size.
      
      Change-Id: Ia693e28c5cf069a1a7bf12e49ecf83e440e1d313
      0d085ebc
  35. 11 Nov, 2014 1 commit
    • Deb Mukherjee's avatar
      Vidyo: Support for one-pass rc-enabled SVC encoder · 0ba1542f
      Deb Mukherjee authored
      Adds support for one-pass rc-enabled SVC encoder with callbacks for
      getting per-layer packets.
      - the callback function registration is implemented as an encoder
      control function.
      - if the callback function is not registered, the old way of
      aggregating packets with superframe will take effect.
      - one more control function “VP9E_GET_SVC_LAYER_ID” has been
      implemented to get the temporal/spatial id from the encoder
      within the callback. This can be used to get the ids to put on RTP
      packet.
      
      Change-Id: I1a90e00135dde65da128b758e6c00b57299a111a
      0ba1542f
  36. 27 Oct, 2014 1 commit
    • Yaowu Xu's avatar
      Add a new control of golden frame boost in CBR mode · 03a60b78
      Yaowu Xu authored
      0 means that golden boost is off, and uses average frame target rate,
      a non-zero number means the percentage of boost over average frame
      bitrate is given initially to golden frames in CBR mode.
      
      Change-Id: If4334fe2cc424b65ae0cce27f71b5561bf1e577d
      03a60b78