1. 10 Jan, 2014 1 commit
    • Johann's avatar
      Apply neon flags to intrinsic files · dadf3505
      Johann authored
      Filter out files ending in _neon.c and append .neon so the Android build
      system knows to apply -mfpu=neon
      
      Change-Id: Ib67277e5920bfcaeda7c4aa16cd1001b11d59305
      dadf3505
  2. 09 Jan, 2014 1 commit
  3. 09 Jul, 2013 1 commit
  4. 02 Mar, 2013 1 commit
  5. 15 Nov, 2012 1 commit
  6. 01 Nov, 2012 2 commits
  7. 30 Oct, 2012 1 commit
  8. 26 Oct, 2012 1 commit
    • Scott LaVarnway's avatar
      Faster 8t filtering · ce811f87
      Scott LaVarnway authored
      Quickly modified the ssse3 sixtap filters to support eight taps.  For the test
      clip used, a 23+% boost in decoder performance was seen.  We can
      revisit later and improve further.
      
      Change-Id: I5f59860459e80d6fa23e6cc0fd91296a969f5240
      ce811f87
  9. 25 Oct, 2012 1 commit
  10. 22 Oct, 2012 1 commit
  11. 19 Oct, 2012 1 commit
    • Scott LaVarnway's avatar
      sse2 intrinsic version of vp8_mbloop_filter_vertical_edge() · 085433c2
      Scott LaVarnway authored
      First sse2 version of vp8_mbloop_filter_vertical_edge().  For now,
      intrinsics are being used until the bitstream is finalized.  This function
      will be revisited later for further performance improvements.
      
      For the test clip used, a 34+% decoder performance improvement
      was seen.  This will vary depending on material.
      
      Change-Id: I455b438bc8d8af76cf7533ac42eda5f689b21f7c
      085433c2
  12. 18 Oct, 2012 1 commit
    • Scott LaVarnway's avatar
      sse2 intrinsic version of vp8_mbloop_filter_horizontal_edge() · 992b5e2d
      Scott LaVarnway authored
      First sse2 version of vp8_mbloop_filter_horizontal_edge().  For now,
      intrinsics are being used until the bitstream is finalized.  This function
      will be revisited later for further performance improvements.
      For the test clip used, a 31+% decoder performance improvement
      was seen.  This will vary depending on material.
      
      Change-Id: I03ed3a7182478bdd1f094644ff3e0442625600e7
      992b5e2d
  13. 17 Oct, 2012 1 commit
  14. 24 Aug, 2012 1 commit
    • Paul Wilkins's avatar
      New Motion Reference Search · 2d60bee1
      Paul Wilkins authored
      Alternative strategy for finding a list of candidate motion
      vectors to use as reference values in mv coding and as
      nearest and near.
      
      Sort by sad in vp8_find_best_ref_mvs() rather than just
      pick the best. Allow 0,0 as a best ref option but not a
      nearest or near unless there are no alternatives.
      
      Encode/Decode verified on at least some clips.
      
      Some commented out experimental and stats code still in place.
      
      Gain over existing code averages about 1% on derf (alll metrics)
      with improvement on all clips. Other test results pending.
      
      The entropy coding of the mode (nearest/near etc) still
      depends upon and requires the old "findnear" code so
      this needs looking at and may provide room for further gains.
      
      Change-Id: I871d7cba1d1c379c4bad9bcccce1fb19c46b8247
      2d60bee1
  15. 21 Aug, 2012 2 commits
  16. 16 Aug, 2012 1 commit
  17. 08 Aug, 2012 2 commits
  18. 01 Aug, 2012 1 commit
    • Johann's avatar
      Rename vp8_intra4x4_predict_d · a497cb59
      Johann authored
      predict_d has become canonical. Remove previous helper function.
      
      Disable ARM assembly pending update.
      
      Change-Id: Idd84ac8a28f9b0221ea97904a77de1e705d06a7d
      a497cb59
  19. 10 Jul, 2012 1 commit
  20. 23 May, 2012 1 commit
    • Yaowu Xu's avatar
      changed the way that default probs for 8x8 is set. · e9818bb6
      Yaowu Xu authored
      The commit changed how baseline 8x8 coefficient probabilities are
      initialized, to be consistent with the initialization of baseline
      4x4 coefficient probabilities.
      
      The commit does not have any effect on compression.
      
      Change-Id: Ifb3902b5dc0b0c2e6dc3aa5d4a6589d528e58355
      e9818bb6
  21. 22 May, 2012 2 commits
    • John Koleszar's avatar
      Move all tests to test/ directory · 2d225689
      John Koleszar authored
      Consolodate the unit tests under vp8/ to the test/ directory
      
      Change-Id: I6d6a0fb60f5e3874a4d6710e9e121dd3e81a93db
      2d225689
    • John Koleszar's avatar
      Build unit tests monolithically · e82d261d
      John Koleszar authored
      Rework unit tests  to have a single executable rather than many, which
      should avoid pollution of the visual studio project namespace, improve
      build times, and make it easier to use the gtest test sharding system
      when we get these going on the continuous build cluster.
      
      Change-Id: If4c3e5d4b3515522869de6c89455c2a64697cca6
      e82d261d
  22. 04 May, 2012 1 commit
    • Attila Nagy's avatar
      Make global data const · f039a85f
      Attila Nagy authored
      Removes all runtime initialization of global data. This commit is a
      squashed version of the following series cherry-picked from master.
      This is necessary because of a change that was merged to the tester
      that depends on the scaler being moved to the RTCD framework, which
      is a worthwhile thing to include in Eider anyway.
      
        - a91b42f0 Makes all global data in entropy.c const
        - b35a0db0 Makes all global data in tokenize.c const
        - 441cac8e Makes all mode token tables const
        - 5948a021 Ports vpx_xcaler to new RTCD method
        - 317d4244 Makes all mode token tables const part 2
      
      Change-Id: Ifeaea24df2b731e7c509fa6c6ef6891a374afc26
      f039a85f
  23. 19 Apr, 2012 1 commit
    • Scott LaVarnway's avatar
      Makes all mode token tables const part 2 · 317d4244
      Scott LaVarnway authored
      (see Change I9b2ccc88: Makes all mode token tables const)
      Further remove runtime table initialization and use
      precalculated const data.  Data footprint reduced
      by 4112 bytes.
      
      Change-Id: Ia3ae9fc19f77316b045cabff01f6e5f0876a86ab
      317d4244
  24. 15 Mar, 2012 1 commit
    • Yaowu Xu's avatar
      WebM Experimental Codec Branch Snapshot · 6035da54
      Yaowu Xu authored
      This is a code snapshot of experimental work currently ongoing for a
      next-generation codec.
      
      The codebase has been cut down considerably from the libvpx baseline.
      For example, we are currently only supporting VBR 2-pass rate control
      and have removed most of the code relating to coding speed, threading,
      error resilience, partitions and various other features.  This is in
      part to make the codebase easier to work on and experiment with, but
      also because we want to have an open discussion about how the bitstream
      will be structured and partitioned and not have that conversation
      constrained by past work.
      
      Our basic working pattern has been to initially encapsulate experiments
      using configure options linked to #IF CONFIG_XXX statements in the
      code. Once experiments have matured and we are reasonably happy that
      they give benefit and can be merged without breaking other experiments,
      we remove the conditional compile statements and merge them in.
      
      Current changes include:
      * Temporal coding experiment for segments (though still only 4 max, it
        will likely be increased).
      * Segment feature experiment - to allow various bits of information to
        be coded at the segment level. Features tested so far include mode
        and reference frame information, limiting end of block offset and
        transform size, alongside Q and loop filter parameters, but this set
        is very fluid.
      * Support for 8x8 transform - 8x8 dct with 2nd order 2x2 haar is used
        in MBs using 16x16 prediction modes within inter frames.
      * Compound prediction (combination of signals from existing predictors
        to create a new predictor).
      * 8 tap interpolation filters and 1/8th pel motion vectors.
      * Loop filter modifications.
      * Various entropy modifications and changes to how entropy contexts and
        updates are handled.
      * Extended quantizer range matched to transform precision improvements.
      
      There are also ongoing further experiments that we hope to merge in the
      near future: For example, coding of motion and other aspects of the
      prediction signal to better support larger image formats, use of larger
      block sizes (e.g. 32x32 and up) and lossless non-transform based coding
      options (especially for key frames). It is our hope that we will be
      able to make regular updates and we will warmly welcome community
      contributions.
      
      Please be warned that, at this stage, the codebase is currently slower
      than VP8 stable branch as most new code has not been optimized, and
      even the 'C' has been deliberately written to be simple and obvious,
      not fast.
      
      The following graphs have the initial test results, numbers in the
      tables measure the compression improvement in terms of percentage. The
      build has  the following optional experiments configured:
      --enable-experimental --enable-enhanced_interp --enable-uvintra
      --enable-high_precision_mv --enable-sixteenth_subpel_uv
      
      CIF Size clips:
      http://getwebm.org/tmp/cif/
      HD size clips:
      http://getwebm.org/tmp/hd/
      (stable_20120309 represents encoding results of WebM master branch
      build as of commit#7a159071)
      
      They were encoded using the following encode parameters:
      --good --cpu-used=0 -t 0 --lag-in-frames=25 --min-q=0 --max-q=63
      --end-usage=0 --auto-alt-ref=1 -p 2 --pass=2 --kf-max-dist=9999
      --kf-min-dist=0 --drop-frame=0 --static-thresh=0 --bias-pct=50
      --minsection-pct=0 --maxsection-pct=800 --sharpness=0
      --arnr-maxframes=7 --arnr-strength=3(for HD,6 for CIF)
      --arnr-type=3
      
      Change-Id: I5c62ed09cfff5815a2bb34e7820d6a810c23183c
      6035da54
  25. 12 Mar, 2012 1 commit
    • Yaowu Xu's avatar
      fixed .mk files to reflect add/remove of a header file · 3f5feb7d
      Yaowu Xu authored
      In a previous commit, the duplicate of headerfile defaultcoefcounts.h
      was identified. This commit updates the .mk file to ensure configure
      and make works properly for all platforms.
      
      Change-Id: I31a39c809a734ba438ee53db700f252e9a03eddd
      3f5feb7d
  26. 06 Mar, 2012 2 commits
    • Johann's avatar
      RFC: Reorganize MFQE loops · fd903902
      Johann authored
      Break MFQE code into it's own file.
      
      It is currently only valid for 16x16 and 8x8 Y blocks. It also filters
      4x4 U/V blocks.
      
      Refactor filtering and add associated assembly. Limited test cases show
      --mfqe introduces a penalty of ~20% with HD content. The assembly
      reduces the penalty to ~15%
      
      Change-Id: I4b8de6b5cdff5413037de5b6c42f437033ee55bf
      fd903902
    • Johann's avatar
      Move SAD and variance functions to common · e50f96a4
      Johann authored
      The MFQE function of the postprocessor depends on these
      
      Change-Id: I256a37c6de079fe92ce744b1f11e16526d06b50a
      e50f96a4
  27. 21 Feb, 2012 1 commit
  28. 16 Feb, 2012 1 commit
    • Makoto Kato's avatar
      Support Android x86 NDK build · 7989bb7f
      Makoto Kato authored
      On Android NDK, rand() is inlined function.  But, on our SSE optimization,
      we need symbol for rand()
      
      Change-Id: I42ab00e3255208ba95d7f9b9a8a3605ff58da8e1
      7989bb7f
  29. 10 Feb, 2012 1 commit
    • Paul Wilkins's avatar
      Removal of threading code. · 2615ca5d
      Paul Wilkins authored
      For the experimental branch we are trying to slim the codebase
      down removing features such as threading for now which complicate
      the process of development and testing.
      
      Change-Id: I657c0246aef4d1fa8c8ffc6a1adfeee45bce8e24
      2615ca5d
  30. 31 Jan, 2012 1 commit
    • Paul Wilkins's avatar
      Added common prediction modules. · b2f64dff
      Paul Wilkins authored
      This function adds the common prediction modules,  some data structures
      and a config option but does not use them.
      
      It also corrects a bug in clearing down  the MODE_INFO border and introduces
      a new element that indicates if an entry corresponds to an "in image" macro block
      or is part of the border.
      
      Change-Id: Ib69eec0876173ebe9d1de9df9537d0b2447702e0
      b2f64dff
  31. 30 Jan, 2012 5 commits
    • John Koleszar's avatar
      RTCD: add subpixel functions · f103dcef
      John Koleszar authored
      This commit continues the process of converting to the new RTCD
      system.
      
      Change-Id: I6c519ab61e4f4e0ebcc796f2df061f945c48cefe
      f103dcef
    • John Koleszar's avatar
      RTCD: add postproc functions · 2a8f57f5
      John Koleszar authored
      This commit continues the process of converting to the new RTCD
      system.
      
      Change-Id: If54eb5cb5d1b0cac6c4c0633a9e99c93ca860ba2
      2a8f57f5
    • John Koleszar's avatar
      RTCD: add recon functions · fdb61a45
      John Koleszar authored
      This commit continues the process of converting to the new RTCD
      system.
      
      Change-Id: I9bfcf9bef65c3d4ba0fb9a3e1532bad1463a10d6
      fdb61a45
    • John Koleszar's avatar
      RTCD: add remaining IDCT functions · ab77b4e8
      John Koleszar authored
      This commit continues the process of converting to the new RTCD
      system.
      
      Change-Id: I03c4dbf30dfd3558b0e256ff9d3ff4c012aadc80
      ab77b4e8
    • John Koleszar's avatar
      RTCD: add loopfilter functions · 55f74c59
      John Koleszar authored
      This commit continues the process of converting to the new RTCD
      system.
      
      Change-Id: Ic8a4047d72ff3a54ec98977dd90e70c13213db71
      55f74c59