1. 13 Jul, 2012 1 commit
  2. 10 Jul, 2012 1 commit
  3. 02 Jul, 2012 1 commit
    • Yunqing Wang's avatar
      Add 0 offsets handling in SSSE3 sixtap_predict functions · 147e8646
      Yunqing Wang authored
      This patch fixed issue 458 by calling copy function when both
      offsets are 0, which guarantees the SSSE3 functions output
      same result as the c function for all possible offsets.
      
      Change-Id: I209aec7a4c6b3362db2646a8887c1038493b6496
      147e8646
  4. 28 Jun, 2012 1 commit
  5. 19 Jun, 2012 1 commit
    • Adrian Grange's avatar
      Corrected usage of image strides · 5eaa9bcf
      Adrian Grange authored
      The function vp8_post_proc_down_and_across_c takes the
      stride of both the src and dst images as parameters, but
      assumes that they are the same.
      
      I modified the code to use the correct strides, as the
      assembler versions of these functions do.
      
      Change-Id: I222715b774cd071b21c15a4b0d2f4aef64a520de
      5eaa9bcf
  6. 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
  7. 11 Jun, 2012 1 commit
    • John Koleszar's avatar
      Fix pedantic compiler warnings · 0164a1cc
      John Koleszar authored
      Allows building the library with the gcc -pedantic option, for improved
      portabilty. In particular, this commit removes usage of C99/C++ style
      single-line comments and dynamic struct initializers. This is a
      continuation of the work done in commit 97b766a4, which removed most
      of these warnings for decode only builds.
      
      Change-Id: Id453d9c1d9f44cc0381b10c3869fabb0184d5966
      0164a1cc
  8. 04 Jun, 2012 2 commits
    • Johann's avatar
      Remove extra enum · 965d8686
      Johann authored
      VP8_REFFRAME is the same as vpx_ref_frame_type
      
      Change-Id: I63c2ddfb39f6ec87d1e5eb6a8852846464552b1b
      965d8686
    • Johann's avatar
      Remove redundant assignment · 2b10528a
      Johann authored
      clang complains about self-assignment
      
      Change-Id: Iead70eed0a960e84a4b167f67f05b05e2965b3b6
      2b10528a
  9. 30 May, 2012 5 commits
    • Stefan Holmer's avatar
      Added another denoising threshold for finding DC shifts. · dd6134b4
      Stefan Holmer authored
      Compares the sum of differences between the input block and the averaged
      block. If they differ too much the block will not be filtered. Negligible
      perfomance hit.
      
      Change-Id: Ib1c31a265efd4d100b3abc4a1ea6675038c8ddde
      dd6134b4
    • Alpha Lam's avatar
      Make libvpx Chromium build friendly · fc2fc899
      Alpha Lam authored
      Add PRIVATE macro for adding private_extern directive for yasm
      to hide global symbols. This is only enabled if -DCHROMIUM is used
      with YASM.
      
      Also fixed a small problem with	rtcd_defs.sh to guard TEMPORAL_DENOISING.
      
      Change-Id: I9027fce3ebddcf20078293e4b86b396f21da7857
      fc2fc899
    • Jim Bankoski's avatar
      fix denoiser for temporal patterns and rd · f78e5a04
      Jim Bankoski authored
      This extends the denoiser to work for temporally scalable
      coding.
      
      I believe this also fixes a very rare but really bad bug in the original
      implementation.
      
      Change-Id: I8b3593a8c54b86eb76f785af1970935f7d56262a
      f78e5a04
    • Christian Duvivier's avatar
      Inline Intrinsic optimized Denoiser · 5715c39c
      Christian Duvivier authored
      Faster version of denoiser, cut cost by 1.7x for C path, by 3.3x for
      SSE2 path.
      
      Change-Id: I154786308550763bc0e3497e5fa5bfd1ce651beb
      5715c39c
    • Stefan Holmer's avatar
      Added another denoising threshold for finding DC shifts. · d8500344
      Stefan Holmer authored
      Compares the sum of differences between the input block and the averaged
      block. If they differ too much the block will not be filtered. Negligible
      perfomance hit.
      
      Change-Id: Ib1c31a265efd4d100b3abc4a1ea6675038c8ddde
      d8500344
  10. 24 May, 2012 2 commits
    • Jim Bankoski's avatar
      fix denoiser for temporal patterns and rd · 57faddb7
      Jim Bankoski authored
      This extends the denoiser to work for temporally scalable
      coding.
      
      I believe this also fixes a very rare but really bad bug in the original
      implementation.
      
      
      Change-Id: I8b3593a8c54b86eb76f785af1970935f7d56262a
      57faddb7
    • Alpha Lam's avatar
      Make libvpx Chromium build friendly · 0f7e4665
      Alpha Lam authored
      Add PRIVATE macro for adding private_extern directive for yasm
      to hide global symbols. This is only enabled if -DCHROMIUM is used
      with YASM.
      
      Also fixed a small problem with	rtcd_defs.sh to guard TEMPORAL_DENOISING.
      
      Change-Id: I9027fce3ebddcf20078293e4b86b396f21da7857
      0f7e4665
  11. 23 May, 2012 2 commits
    • Attila Nagy's avatar
      Fix another multithreaded encoder loopfilter race condition · 48908530
      Attila Nagy authored
      After a key frame encoding, the frame type could change while
      filtering is still going on. Pass the frame type as parameter to the
      loopfilter function and don't read it from common storage.
      
      vp8cx_set_alt_lf_level has to be done before packing the stream.
      Currently alt_lf_level is not used so there hasn't been any visible
      problem here.
      
      Change-Id: Ia114162158cd833c2b16e3b89303cc9c91f19165
      48908530
    • Attila Nagy's avatar
      Fix another multithreaded encoder loopfilter race condition · ea392d47
      Attila Nagy authored
      After a key frame encoding, the frame type could change while
      filtering is still going on. Pass the frame type as parameter to the
      loopfilter function and don't read it from common storage.
      
      vp8cx_set_alt_lf_level has to be done before packing the stream.
      Currently alt_lf_level is not used so there hasn't been any visible
      problem here.
      
      Change-Id: Ia114162158cd833c2b16e3b89303cc9c91f19165
      ea392d47
  12. 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
  13. 21 May, 2012 1 commit
  14. 16 May, 2012 1 commit
    • Yunqing Wang's avatar
      multi-res: force Key frame sychronization · 65dd157c
      Yunqing Wang authored
      In multi-resolution encoding, frame_type decision for each frame
      is made by the lowest-resolution encoder. For all other higher-
      resolution encoders, kf_mode is always set to VPX_KF_DISABLED,
      and they are forced to use the same frame_type picked by the
      lowest-resolution encoder.
      
      Change-Id: Ic4d52ec65bbc012ca9c2d236210e28a295591eaf
      65dd157c
  15. 11 May, 2012 1 commit
  16. 04 May, 2012 2 commits
    • John Koleszar's avatar
      fix vp8_ namespace issues · 14d827f4
      John Koleszar authored
      Make functions only referenced from one translation unit static. Other
      symbols with extern linkage get a vp8/vpx prefix.
      
      Change-Id: I928c7e0d0d36e89ac78cb54ff8bb28748727834f
      14d827f4
    • 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
  17. 02 May, 2012 5 commits
    • John Koleszar's avatar
      Add VPX_TS_ prefix to MAX_LAYERS, MAX_PERIODICITY · d46ddd08
      John Koleszar authored
      Preserved the prior names for compatibility, will remove in the future.
      
      Change-Id: I8773f959ebce72f60168a2972f7a8ffe6642b9b2
      d46ddd08
    • Timothy B. Terriberry's avatar
      Fix TEXTRELs in the ARM asm. · e50c8427
      Timothy B. Terriberry authored
      Besides imposing a performance penalty at startup in most
       configurations, these relocations break the dynamic linker for
       native Fennec, since it does not support them at all.
      
      Change-Id: Id5dc768609354ebb4379966eb61a7313e6fd18de
      e50c8427
    • Timothy B. Terriberry's avatar
      Fix trailing commas in enums. · 22ae1403
      Timothy B. Terriberry authored
      These are warnings in most builds, but show up as compile errors on
       some platforms when these headers are included from C++ code.
      
      Change-Id: I6c523b4dbbc699075fe73830442b51922e5a61d5
      22ae1403
    • Timothy B. Terriberry's avatar
      Fix trailing commas in enums. · 28f54515
      Timothy B. Terriberry authored
      These are warnings in most builds, but show up as compile errors on
       some platforms when these headers are included from C++ code.
      
      Change-Id: I6c523b4dbbc699075fe73830442b51922e5a61d5
      28f54515
    • Attila Nagy's avatar
      Fix compiler warnings · 14c9fce8
      Attila Nagy authored
      Fix code for following warnings:
      -Wimplicit-function-declaration
      -Wuninitialized
      -Wunused-but-set-variable
      -Wunused-variable
      
      Change-Id: I2be434f22fdecb903198e8b0711255b4c1a2947a
      14c9fce8
  18. 26 Apr, 2012 1 commit
    • Attila Nagy's avatar
      Moves error concealment allocations from common parts to decoder · 24e7b1b9
      Attila Nagy authored
      The backup MODE_INFO buffer used in the error concealment was
      allocated in the codec common parts allocation even though this is a
      decoder only resource. Moved the allocation to the decoder side.
      No need to update_mode_info_border as mode_info buffers are zero
      allocated.
      
      This fixes also a potential memory leak as the EC overlaps buffer was not
      properly released before reallocation after a frame size change.
      
      Change-Id: I12803d3e012308d95669069980b1c95973fb775f
      24e7b1b9
  19. 23 Apr, 2012 2 commits
  20. 19 Apr, 2012 4 commits
    • 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
    • John Koleszar's avatar
      rtcd: serialize function pointer initialization · c311b3b3
      John Koleszar authored
      Ensure that RTCD function pointers are set at most once, to silence
      some data race warnings. Implementation provided for POSIX threads and
      Win32, with the prior unsynchronized behavior left in place for other
      platforms.
      
      Change-Id: I65c5856df43ef67043b3d5f26ddafddd8fcb2f7e
      c311b3b3
    • Attila Nagy's avatar
      Ports vpx_xcaler to new RTCD method · 5948a021
      Attila Nagy authored
      We can get rid of all remaining global initializers now:
       vp8_scale_machine_specific_config()
       vp8_initialize()
       vp8dx_initialize()
      
      Change-Id: I2825cea5d1c01ad9f6c45df49a0f86d803bfeb69
      5948a021
    • Attila Nagy's avatar
      Makes all mode token tables const · 441cac8e
      Attila Nagy authored
      Mode token tabels precalculated in entropymode.c.
      Removes vp8_initialize_common()as all common global data
      is precalculated const now.
      
      Change-Id: I9b2ccc883e4f618069e1bc180dad3a823394eb73
      441cac8e
  21. 17 Apr, 2012 1 commit
    • Attila Nagy's avatar
      Makes all global data in entropy.c const · a91b42f0
      Attila Nagy authored
      Removes all runtime initialization of global data in entropy.c.
      Precalculated values are used for initializing all entropy related
      tabels.
      
      First patch in a series to make sure code is reentrant.
      
      Change-Id: I9aac91a2a26f96d73c6470d772a343df63bfe633
      a91b42f0
  22. 12 Apr, 2012 1 commit
    • Scott LaVarnway's avatar
      loopfilter improvements · e0a80519
      Scott LaVarnway authored
      Local variable offsets are now consistent for the functions,
      removed unused parameters, reworked the assembly to eliminate
      stalls/instructions.
      
      Change-Id: Iaa37668f8a9bb8754df435f6a51c3a08d547f879
      e0a80519
  23. 10 Apr, 2012 1 commit
    • Deb Mukherjee's avatar
      Fixes to disable MFQE when there is motion. · 6b33ca39
      Deb Mukherjee authored
      This patch includes:
      1. fixes to disable block based termporal mixing when motion
      is detected (because this version of mfqe only handles zero motion).
      2. The criterion used for determining whether to mix or
      not are changed to use squared differences rather than
      absolute differences.
      3. Additional checks on color mismatch and excessive block
      flatness added. If the block as decoded has very low activity
      it is unlikely to yield benefits for mixing.
      
      Change-Id: I07331e5ab5ba64844c56e84b1a4b7de823eac6cb
      6b33ca39