1. 09 Nov, 2017 1 commit
    • Jerome Jiang's avatar
      vp9: SVC feature to use partition from lower resolution. · fdb054a0
      Jerome Jiang authored
      For SVC with 3 spatial layers:
      Add feature to copy/upscale partition from middle spatial layer
      to the upper/highest resolution, when superblock sad is not high.
      
      Enabled for speed >= 7 and only for non-reference frames.
      
      Speedup ~3-4%, small loss in avgPNSR/SSIM of ~1%.
      
      Change-Id: I7f0a2716c0fde28bade0f86159d11b7e31d6ab8d
      fdb054a0
  2. 11 Jul, 2017 1 commit
  3. 02 Jun, 2017 1 commit
    • Marco's avatar
      vp9: SVC: Force subpel search off under certain conditions. · e30781ff
      Marco authored
      For SVC 1 pass non-rd mode:
      Force subpel seach off for SVC for non-reference frames
      under motion threshold.
      
      Add flag to svc context to indicate if the frame is not used
      as a reference.
      
      Little/no quaity loss, ~2% speedup.
      
      Change-Id: Ic433c44b514d19d08b28f80ff05231dc943b28e9
      e30781ff
  4. 10 May, 2017 1 commit
    • Marco's avatar
      vp9: SVC: Add option to set downsampling filter type. · 4e23998f
      Marco authored
      Add option in SVC to set the filter type and phase for
      the frame level downsampling filters.
      
      For 3 spatial layers: set downsampling filter type to bilinear
      and set phase to 8, for lowest spatial layer.
      
      Change-Id: Id81f4b1ba93db19c1cd37b6a46d1281a2c61bc43
      4e23998f
  5. 08 May, 2017 1 commit
  6. 06 May, 2017 1 commit
    • Marco's avatar
      vp9: SVC: Set downsample filtertype for lowest spatial layer. · 9b729748
      Marco authored
      For lowest spatial layer, in 3 layer SVC, set the
      downsampling filtertype to get averaging filter.
      Needed for reducing aliasing on low-res layer,
      small increase in overall encoder time.
      
      Change-Id: Ia31460123bd91b72eca49b46dd924b9f226d4563
      9b729748
  7. 20 Apr, 2017 1 commit
  8. 18 Apr, 2017 1 commit
    • Marco's avatar
      vp9: Add phase to get averaging filter for 1:2 downsampling. · 348bdc01
      Marco authored
      The scaling filter with zero shift will give sub-sampling for
      2x downsampling. Allow for a phase shift to get an averaging filter.
      
      Usage is for source scaling in 1 pass SVC mode for 1:2 downscale.
      Reduces aliasing in downsampled image.
      
      Keep the phase to 0/off for now.
      
      Change-Id: Ic547ea0748d151b675f877527e656407fcf4d51e
      348bdc01
  9. 14 Apr, 2017 1 commit
  10. 09 Dec, 2016 1 commit
    • Marco's avatar
      vp9: Fix to crash in svc code. · 076d4bd9
      Marco authored
      use_base_mv assumes 2x2 scaling, so fix is to shutoff
      this feature unless spatial scale factors are 2.
      
      Added svc unittest for 2 spatial layers with 5x5 scaling,
      which generates the issue without this fix.
      
      Also fix some settings in svc unittest:
      let the speed setting vary (from 5 to 8), and enable static threshold.
      
      BUG=webm:1344
      
      Change-Id: Idfd0a6c633c21b49a0479601506302cfe974e30e
      076d4bd9
  11. 15 Sep, 2016 1 commit
  12. 02 Aug, 2016 1 commit
  13. 25 Jul, 2016 1 commit
  14. 12 Jul, 2016 1 commit
  15. 22 Apr, 2016 1 commit
  16. 08 Mar, 2016 1 commit
  17. 07 Mar, 2016 1 commit
  18. 01 Mar, 2016 1 commit
    • Marco's avatar
      vp9-svc: Allow for 2 stage downscaling for spatial layers. · c83bcb34
      Marco authored
      For 1 pass cbr mode: allow for two-stage 1:2 scaling
      (which will use the 1:2 optimized scaler) if the spatial
      layer is 1/4x1/4 of souce.
      
      Without this change, the base layer for 3 spatial layers would
      be using the non-normative scaler which is un-optimized/C code.
      
      Change-Id: I9d73f92a4a96927d0f1d6bf75315c1e60513226a
      c83bcb34
  19. 27 Feb, 2016 1 commit
    • James Zern's avatar
      Revert "vp9-svc: Fix speed issue with source downscaling for spatial layers." · 8062e101
      James Zern authored
      This reverts commit f51f0998.
      
      This causes datarate tests to fail. Some are due to the new default
      keyframe distance, another causes an assert even forcing 9999:
      
      [ RUN      ] VP9/DatarateOnePassCbrSvc.OnePassCbrSvc3SpatialLayers/0
      test_libvpx:
      vpx_dsp/x86/vpx_subpixel_8t_intrin_ssse3.c:853: scaledconvolve2d:
      Assertion `y_step_q4 <= 32' failed.
      
      Change-Id: I4ee4fea97f47e4f1a23b82a62e6afc6280961e38
      8062e101
  20. 26 Feb, 2016 1 commit
    • Marco's avatar
      vp9-svc: Fix speed issue with source downscaling for spatial layers. · f51f0998
      Marco authored
      For 1 pass cbr mode: allow for two-stage 1:2 scaling
      (which will use the 1:2 optimized scaler) if the spatial
      layer is 1/4x1/4 of souce.
      
      Without this change, the base layer for 3 spatial layers would
      be using the non-normative scaler which is un-optimized/C code.
      
      Change-Id: Ifcf526ec2aaf3e5fa7924588d9dd8660bf02fb46
      f51f0998
  21. 18 Feb, 2016 1 commit
  22. 03 Feb, 2016 1 commit
  23. 20 Jan, 2016 1 commit
    • Marco's avatar
      Vidyo patch: Changes to the scalability code. · abf58ecf
      Marco authored
      Changes to mode selection for 1 pass SVC mode:
      use base layer motion vector, changes to intra-prediction.
      
      Change-Id: I3e883aa04db521cfa026a0b12c9478ea35a344c9
      abf58ecf
  24. 04 Jan, 2016 1 commit
    • Marco's avatar
      vp9-svc: Set initial values for ext_buffer/flag indices. · e5dfca02
      Marco authored
      Set initial values for these parameters in the vp9_init_layer_context().
      
      This also fixes an issue in the svc-bypass mode when frame flags are
      passed via the vpx_codec_encode().
      
      Change-Id: I0968f04672f8d3d2fe2cea6b8a23f79f80d7a8b1
      e5dfca02
  25. 14 Dec, 2015 1 commit
    • Marco's avatar
      SVC 1 pass mode: Constrain inter mode search within superframe. · c760c33b
      Marco authored
      Keep track of frame indexes for the references, and
      constrain inter mode search for reference with same
      temporal alignment.
      
      Improves speed by about ~15%, no noticeable loss in
      compression performance.
      
      Change-Id: I5c407a8acca921234060c4fcef4afd7d734201c8
      c760c33b
  26. 01 Dec, 2015 1 commit
  27. 18 Nov, 2015 1 commit
  28. 27 Oct, 2015 1 commit
  29. 06 Oct, 2015 1 commit
    • Marco's avatar
      Add first_spatial_layer_to_encode to SVC. · 7266bedc
      Marco authored
      Use the existing VP9_SET_SVC control to set the
      first spatial layer to encode.
      
      Since we loop over all spatial layers inside the encoder, the
      setting of spatial_layer_id via VP9_SET_SVC has no relevance.
      Use it instead to set the first_spatial_layer_to_encode,
      which allows an application to skip encoding lower layer(s).
      
      Change only affects the 1 pass CBR SVC.
      
      Change-Id: I5d63ab713c3e250fdf42c637f38d5ec8f60cd1fb
      7266bedc
  30. 29 Sep, 2015 1 commit
  31. 17 Sep, 2015 1 commit
    • Marco's avatar
      Add SVC codec control to set frame flags and buffer indices. · 730cdefd
      Marco authored
      Add SVC codec control to set the frame flags and buffer indices
      for each spatial layer of the current (super)frame to be encoded.
      This allows the application to set (and change on the fly) the
      reference frame configuration for spatial layers.
      
      Added an example layer pattern (spatial and temporal layers)
      in vp9_spatial_svc_encoder for the bypass_mode using new control.
      
      Change-Id: I05f941897cae13fb9275b939d11f93941cb73bee
      730cdefd
  32. 15 Sep, 2015 2 commits
    • Marco's avatar
      SVC fix to set worst/best_quality per layer. · 15c43d9a
      Marco authored
      Allow the worst/best_quality to be set per layer via the
      VP9E_SET_SVC_PARAMETERS control.
      
      Change-Id: Icba5ec8ac757152f3bb7860d6010d9174a7bd578
      15c43d9a
    • Marco's avatar
      Add cyclic refresh parameters to svc-layer context. · eb53c69e
      Marco authored
      For 1 pass CBR spatial-SVC:
      Add cyclic refresh parameters to the svc-layer context.
      
      This allows cyclic refresh (aq-mode=3) to be applied to
      the whole super-frame (all spatial layers).
      This gives a performance improvement for spatial layer encoding.
      
      Addd the aq_mode mode on/off setting as command line option.
      
      Change-Id: Ib9c3b5ba3cb7851bfb8c37d4f911664bef38e165
      eb53c69e
  33. 31 Aug, 2015 1 commit
  34. 27 Aug, 2015 1 commit
  35. 26 Aug, 2015 1 commit
  36. 24 Aug, 2015 1 commit
    • Debargha Mukherjee's avatar
      Prevent an ASAN failure for svc tests · 653832ea
      Debargha Mukherjee authored
      This patch just fixes the test for the time being, but does not
      actually solve the underlying issue, which still needs investigation.
      
      Change-Id: I54a35de839723f5b499b57e38dd2bdd400adc427
      653832ea
  37. 14 Aug, 2015 1 commit
  38. 15 Jun, 2015 1 commit
  39. 04 Jun, 2015 1 commit
    • Marco's avatar
      Bugfx in setting layer framerate. · 8f7e7663
      Marco authored
      Index for ts_rate_decimator should be temporal layer (tl) index.
      
      Change-Id: I0320b7f7ae987ef64fdfe7c45099e7978a8fef17
      8f7e7663