1. 25 Mar, 2016 1 commit
    • Adrian Grange's avatar
      Convert "vpx" to "aom" · cebe6f0c
      Adrian Grange authored
      Change the name of source files to replace "vpx" with "aom".
      Change occurences of "vpx" in the code to "aom".
      
      Change-Id: I002c0eaa2c350cf1a895bf01bea5788c61328027
      cebe6f0c
  2. 24 Mar, 2016 1 commit
  3. 22 Mar, 2016 1 commit
  4. 28 Jan, 2016 1 commit
  5. 09 Oct, 2015 1 commit
  6. 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
  7. 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
  8. 19 Mar, 2015 2 commits
    • 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
    • James Zern's avatar
      vpx/vpx_encoder.h: bump ABI version · 1ca2e4e3
      James Zern authored
      missed in updates for high bitdepth, others
      
      Change-Id: Id30076ce09beb361b5e1ff0ac99e3ae1ad4f987e
      1ca2e4e3
  9. 13 Mar, 2015 1 commit
  10. 15 Jan, 2015 1 commit
  11. 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
  12. 15 Oct, 2014 1 commit
    • James Zern's avatar
      fix CONFIG_SPATIAL_SVC warning · 91657abe
      James Zern authored
      this change checks that CONFIG_SPATIAL_SVC is defined and adds a TODO to
      ensure this is changed in the future as the release headers can't
      depend on vpx_config.h.
      
      vpx/vpx_encoder.h:164:5: warning: "CONFIG_SPATIAL_SVC" is not defined
      [-Wundef]
      
      Change-Id: I797a0150e5f56caf048e7ee00b282fbc9c5ede19
      91657abe
  13. 19 Sep, 2014 1 commit
  14. 11 Sep, 2014 1 commit
  15. 02 Sep, 2014 1 commit
    • Deb Mukherjee's avatar
      Adds config opt for highbitdepth + misc. vpx · 5acfafb1
      Deb Mukherjee authored
      Adds config parameter vp9_highbitdepth, to support highbitdepth profiles.
      Also includes most vpx level high bit-depth functions. However
      encode/decode in the highbitdepth profiles will not work until
      the rest of the code is in place.
      
      Change-Id: I34c53b253c38873611057a6cbc89a1361b8985a6
      5acfafb1
  16. 25 Aug, 2014 1 commit
  17. 22 Aug, 2014 1 commit
  18. 12 Aug, 2014 1 commit
  19. 11 Aug, 2014 1 commit
  20. 22 Jul, 2014 1 commit
  21. 15 Jul, 2014 1 commit
  22. 14 Jul, 2014 1 commit
    • Minghai Shang's avatar
      [spatial svc]Implement alt reference frames · e899859c
      Minghai Shang authored
      All changes are for spatial svc only.
      1. Enable encoding hidden frames in each layer and use alt reference idex to reference the hidden frame in each layer
      2. Use golden reference idx for spatial reference
      3. For those layers that don't have hidden frames (caused by lack of frame buffers), reference a hidden frame in lower layers
      4. Add "auto-alt-refs" in svc options
      Change-Id: Idf27d1fd2fb5f3ffd9e86d2119235e3dad36c178
      e899859c
  23. 14 Apr, 2014 1 commit
    • Adrian Grange's avatar
      Enable vpxenc to specify internal coded frame size · f7bd1274
      Adrian Grange authored
      Added command line flags "resize-width" & "resize-height"
      to allow the user to specify the frame size to encode at.
      
      These two flags are ignored if the "resize-allowed" switch
      is not set to 1.
      
      All frames in the clip are then encoded at this size, which
      must be smaller than the raw frame size.
      
      Change-Id: I3d64bd9303d5c0bd678461a866a1ea621700d744
      f7bd1274
  24. 19 Mar, 2014 1 commit
    • Minghai Shang's avatar
      [svc] Finalize spatial svc first pass rate control · d2053350
      Minghai Shang authored
            1. Save stats for each spatial layer
            2. Add frame buffer management for svc first pass rc
            3. Set default spatial layer to 1
            4. Flush encoder at the end of stream in test app
      This only supports spatial svc.
      Change-Id: Ia89cfa87bb6394e6c0405b921d86c426d0a0c9ae
      d2053350
  25. 26 Feb, 2014 1 commit
  26. 06 Feb, 2014 1 commit
    • Marco Paniconi's avatar
      Layer based rate control for CBR mode. · 4864ab21
      Marco Paniconi authored
      This patch adds a buffer-based rate control for temporal layers,
      under CBR mode.
      
      Added vpx_temporal_scalable_patters.c encoder for testing temporal
      layers, for both vp9 and vp8 (replaces the old vp8_scalable_patterns).
      
      Updated datarate unittest with tests for temporal layer rate-targeting.
      
      Change-Id: I8900a854288b9354d9c697cfeb0243a9fd6790b1
      4864ab21
  27. 03 Feb, 2014 1 commit
  28. 02 Feb, 2014 1 commit
    • Marco Paniconi's avatar
      Layer based rate control for CBR mode. · 6be2b750
      Marco Paniconi authored
      This patch adds a buffer-based rate control for temporal layers,
      under CBR mode.
      
      Added vpx_temporal_scalable_patters.c encoder for testing temporal
      layers, for both vp9 and vp8 (replaces the old vp8_scalable_patterns).
      
      Updated datarate unittest with tests for temporal layer rate-targeting.
      
      Change-Id: I9cb6cce2494390ae6096ee17774af7fb9308bde7
      6be2b750
  29. 17 Dec, 2013 1 commit
  30. 16 Dec, 2013 1 commit
  31. 29 Oct, 2013 1 commit
    • Adrian Grange's avatar
      Resolved Doxygen warnings. · f58eca90
      Adrian Grange authored
      Added comments to make the codebase build cleanly in Doxygen.
      
      Change-Id: I01e000ceac57dbafa04342858c8f1be250ba20d1
      f58eca90
  32. 09 Sep, 2013 1 commit
    • Ivan Maltz's avatar
      API extensions and sample app for spacial scalable encoder · 01b35c3c
      Ivan Maltz authored
      Sample app: vp9_spatial_scalable_encoder
      vpx_codec_control extensions:
        VP9E_SET_SVC
        VP9E_SET_WIDTH, VP9E_SET_HEIGHT, VP9E_SET_LAYER
        VP9E_SET_MIN_Q, VP9E_SET_MAX_Q
      expanded buffer size for vp9_convolve
      
      modified setting of initial width in vp9_onyx_if.c so that layer size
      can be set prior to initial encode
      
      Default number of layers set to 3 (VPX_SS_DEFAULT_LAYERS)
      Number of layers set explicitly in vpx_codec_enc_cfg.ss_number_layers
      
      Change-Id: I2c7a6fe6d665113671337032f7ad032430ac4197
      01b35c3c
  33. 06 Sep, 2013 1 commit
    • Deb Mukherjee's avatar
      Support a constant quality mode in VP9 · e378a89b
      Deb Mukherjee authored
      Adds a new end-usage option for constant quality encoding in vpx. This
      first version implemented for VP9, encodes all regular inter frames
      using the quality specified in the --cq-level= option, while encoding
      all key frames and golden/altref frames at a quality better than that.
      
      The current performance on derfraw300 is +0.910% up from bitrate control,
      but achieved without multiple recode loops per frame.
      
      The decision for qp for each altref/golden/key frame will be improved
      in subsequent patches based on better use of stats from the first pass.
      Further, the qp for regular inter frames may also be varied around the
      provided cq-level.
      
      Change-Id: I6c4a2a68563679d60e0616ebcb11698578615fb3
      e378a89b
  34. 27 Mar, 2013 1 commit
  35. 26 Jan, 2013 1 commit
    • Deb Mukherjee's avatar
      Adding a frame parallel decoding mode · dfd89f2e
      Deb Mukherjee authored
      Adds a flag to disable features that would inhibit frame parallel
      decoding. This includes backward adaptation and MV sorting based
      on search in ref frame buffer.
      
      Also includes some minor clean-ups.
      
      Change-Id: I434846717a47b7bcb244b37ea670c5cdf776f14d
      dfd89f2e
  36. 06 Nov, 2012 1 commit
  37. 17 Jul, 2012 1 commit
  38. 29 Jun, 2012 1 commit
    • Hui Su's avatar
      Add lossless compression mode. · e44ee38a
      Hui Su authored
      This commit adds lossless compression capability to the experimental
      branch. The lossless experiment can be enabled using --enable-lossless
      in configure. When the experiment is enabled, the encoder will use
      lossless compression mode by command line option --lossless, and the
      decoder automatically recognizes a losslessly encoded clip and decodes
      accordingly.
      
      To achieve the lossless coding, this commit has changed the following:
          1. To encode at lossless mode, encoder forces the use of unit
      quantizer, i.e, Q 0, where effective quantization is 1. Encoder also
      disables the usage of 8x8 transform and allows only 4x4 transform;
          2. At Q 0, the first order 4x4  DCT/IDCT have been switched over
      to a pair of forward and inverse Walsh-Hadamard Transform
      (http://goo.gl/EIsfy),  with proper scaling applied to match the range
      of the original 4x4 DCT/IDCT pair;
          3. At Q 0, the second order remains to use the previous
      walsh-hadamard transform pair. However, to maintain the reversibility
      in second order transform at Q 0, scaling down is applied to first
      order DC coefficients prior to forward transform, and scaling up is
      applied to the second order output prior to quantization. Symmetric
      upscaling and downscaling are added around inverse second order
      transform;
          4. At lossless mode, encoder also disables a number of minor
      features to ensure no loss is introduced, these features includes:
              a. Trellis quantization optimization
              b. Loop filtering
              c. Aggressive zero-binning, rounding and zero-bin boosting
              d. Mode based zero-bin boosting
      
      Lossless coding test was performed on all clips within the derf set,
      to verify that the commit has achieved lossless compression for all
      clips. The average compression ratio is around 2.57 to 1.
      (http://goo.gl/dEShs)
      
      Change-Id: Ia3aba7dd09df40dd590f93b9aba134defbc64e34
      e44ee38a
  39. 15 Jun, 2012 1 commit
    • John Koleszar's avatar
      Remove threading dependencies with --disable-multithread · 8df79e9d
      John Koleszar authored
      Avoid a pthreads dependency via pthread_once() when compiled with
      --disable-multithread.
      
      In addition, this synchronization is disabled for Win32 as well, even
      though we can be sure that the required primatives exist, so that the
      requirements on the application when built with --disable-multithread
      are consistent across platforms.
      
      Users using libvpx built with --disable-multithread in a multithreaded
      context should provide their own synchronization. Updated the
      documentation to vpx_codec_enc_init_ver() and vpx_codec_dec_init_ver()
      to note this requirement. Moved the RTCD initialization call to match
      this description, as previously it didn't happen until the first
      frame.
      
      Change-Id: Id576f6bce2758362188278d3085051c218a56d4a
      8df79e9d