1. 07 Oct, 2010 2 commits
    • Johann's avatar
      configure is not in src · a31a58d1
      Johann authored
      one comment in the README said the configure script was in src.
      it's not. pointed out by Aaron Sherman
      
      Change-Id: Ife0b53e096856d46669a99eefd71ac23d0351f65
      a31a58d1
    • Yunqing Wang's avatar
      Remove unused file in encoder · 7e6f7b57
      Yunqing Wang authored
      Remove vp8/encoder/x86/csystemdependent.c
      
      Change-Id: I7c590dcd07b68704d463a1452f62f29ffb1402f4
      7e6f7b57
  2. 06 Oct, 2010 1 commit
    • Yaowu Xu's avatar
      optimize fast_quantizer c version · d338d14c
      Yaowu Xu authored
      As the zbin and rounding constants are normalized, rounding effectively
      does the zbinning, therefore the zbin operation can be removed. In
      addition, the memset on the two arrays are no longer necessary.
      
      Change-Id: If39c353c42d7e052296cb65322e5218810b5cc4c
      d338d14c
  3. 05 Oct, 2010 3 commits
  4. 04 Oct, 2010 4 commits
    • Jan Kratochvil's avatar
      nasm: avoid relative include paths · fc2b06c6
      Jan Kratochvil authored
      nasm does not automatically assume the source's directory also for its
      include files.
      
      Provide nasm compatibility.  No binary change by this patch with yasm on
      {x86_64,i686}-fedora13-linux-gnu.  Few longer opcodes with nasm on
      {x86_64,i686}-fedora13-linux-gnu have been checked as safe.
      
      Change-Id:	I386efa0cca5d401193416c11bd7363a283541645
      fc2b06c6
    • Jan Kratochvil's avatar
      nasm: address labels 'rel label' vice 'wrt rip' · 5cdc3a4c
      Jan Kratochvil authored
      nasm does not support `label wrt rip', it requires `rel label'. It is
      still fully compatible with yasm.
      
      Provide nasm compatibility. No binary change by this patch with yasm on
      {x86_64,i686}-fedora13-linux-gnu. Few longer opcodes with nasm on
      {x86_64,i686}-fedora13-linux-gnu have been checked as safe.
      
      Change-Id: I488773a4e930a56e43b0cc72d867ee5291215f50
      5cdc3a4c
    • Jan Kratochvil's avatar
      nasm: match instruction length (movd/movq) to parameters · e114f699
      Jan Kratochvil authored
      nasm requires the instruction length (movd/movq) to match to its
      parameters. I find it more clear to really use 64bit instructions when
      we use 64bit registers in the assembly.
      
      Provide nasm compatibility. No binary change by this patch with yasm on
      {x86_64,i686}-fedora13-linux-gnu. Few longer opcodes with nasm on
      {x86_64,i686}-fedora13-linux-gnu have been checked as safe.
      
      Change-Id: Id9b1a5cdfb1bc05697e523c317a296df43d42a91
      e114f699
    • Yaowu Xu's avatar
      2d4ef375
  5. 02 Oct, 2010 2 commits
    • Paul Wilkins's avatar
      Tune effect of motion on KF/GF boost in two pass; · 788c0eb5
      Paul Wilkins authored
      This code adjust the impact of the amount and speed of motion
      on GF and KF boost.
      
      Sections with lots of slow motion will tend to have a
      somewhat bigger boost and sections with fast motion may
      have less.
      
      There is a knock on effect to the selection of the active
      quantizer range.
      
      This will likely require further tuning but helps with a couple
      of particularly bad edge cases.
      
      Change-Id: Ic2449cda7305672b69acf42fc0a845b77ac98d40
      788c0eb5
    • Yaowu Xu's avatar
      enable trellis quantization for 2nd order blocks · dcd29e36
      Yaowu Xu authored
      Experimented with different value for Y2_RD_MULT ranging f[1, 32],
      without adapting the value to MB coding mode/frame type/Q value,
      4 works out best among all values, providing overall 0.1% coding
      gain on the test set.
      
      Change-Id: I6b2583a8aa5db5e7e5c65c646301909c0c58f876
      dcd29e36
  6. 01 Oct, 2010 3 commits
  7. 30 Sep, 2010 3 commits
  8. 29 Sep, 2010 7 commits
    • John Koleszar's avatar
      Rename mode_ref_lf_test_function · 7e5e3151
      John Koleszar authored
      This function graduated from being a test func to something that's on
      by default. Rename it and remove some spurious comments that confuse
      its status.
      
      Change-Id: I689695a3ad29c35e9a72a43ec93766733ac6c20b
      7e5e3151
    • Fritz Koenig's avatar
      Merge "Optimizations on the loopfilters." · 439b2ecd
      Fritz Koenig authored
      439b2ecd
    • John Koleszar's avatar
      Fix loopfilter delta zero transitions · b9be7a46
      John Koleszar authored
      Loopfilter deltas are initialized to zero on keyframes in the decoder.
      The values then persist from the previous frame unless an update bit
      is set in the bitstream. This data is not included in the entropy
      data saved by the 'refresh entropy' bit in the bitstream, so it is
      effectively an additional contextual element beyond the 3 ref-frames
      and the entropy data.
      
      The encoder was treating this delta update bit as update-if-nonzero,
      meaning that the value would be refreshed even if it hadn't changed,
      and more significantly, if the correct value for the delta changed
      to zero, the update wouldn't be sent, and the decoder would preserve
      the last (presumably non-zero) value.
      
      This patch updates the encoder to send an update only if the value
      has changed from the previously transmitted value. It also forces the
      value to be transmitted in error resilient mode, to account for lost
      context in the event of lost frames.
      
      Change-Id: I56671d5b42965d0166ac226765dbfce3e5301868
      b9be7a46
    • Paul Wilkins's avatar
      Change to coefficient optimization rules. · 7288cdf7
      Paul Wilkins authored
      Allow coefficient optimization for good quality speed 0.
      
      Change-Id: Id0cb363df6823c6798671584fbba097916a7df2c
      7288cdf7
    • Adrian Grange's avatar
    • Adrian Grange's avatar
      Moved row-specific computation of MV bounds out of col loop · 0e7c45b3
      Adrian Grange authored
      Moved the bounds computation on vertical MV component out
      of the loop that processes MBs within a MB row.
      0e7c45b3
    • Paul Wilkins's avatar
      Control of active min quantizer for two pass. · ff3068d6
      Paul Wilkins authored
      Create  look up tables for controlling the active quantizer range.
      Some initial tuning to improve quality circa 0.5% on test set.
      Clean up of some stats output code
      
      Change-Id: Ia698a8525f8b8129a503cadace3ee73fe888f543
      ff3068d6
  9. 28 Sep, 2010 7 commits
    • Fritz Koenig's avatar
      Optimizations on the loopfilters. · 0964ef0e
      Fritz Koenig authored
      - Scheduling for Atom processors
      - Combining of macros to allow for better interleaving
      - Change from multiplies to adds for main filter
      - Use of movhps/movlps to fill xmm registers without
        shifting and orring
      
      Change-Id: I0b3500a5f58abf7085253ec92d64c8a96723040b
      0964ef0e
    • Adrian Grange's avatar
      Enabled AltRef motion map creation · 47fc8f26
      Adrian Grange authored
      Enabled the first-pass encode to output the
      map of macroblock coding modes required by
      the AltRef filter.
      47fc8f26
    • Adrian Grange's avatar
    • Adrian Grange's avatar
      Made AltRef filter adaptive & added motion compensation · 1b2f8308
      Adrian Grange authored
      Modified AltRef temporal filter to adapt filter length based
      on macroblock coding modes selected during first-pass
      encode.
      
      Also added sub-pixel motion compensation to the AltRef
      filter.
      1b2f8308
    • Johann's avatar
      Merge "update gitignore" · e4d43c21
      Johann authored
      e4d43c21
    • Johann's avatar
      update gitignore · 6fa5c24a
      Johann authored
      this was excluding all .asm files when it should have just been .asm
      files in the top level directory and .asm.s files lower down. also be
      more restrictive on some other items, and run the whole thing through
      sort to keep it organized
      
      Change-Id: Ia48525033226b13098a491ce89465d0377b990c2
      6fa5c24a
    • Timothy B. Terriberry's avatar
      Add 4-tap version of 2nd-pass ARMv6 MC filter. · 18dc92fd
      Timothy B. Terriberry authored
      The existing code applied a 6-tap filter with 0's on either end.
      We're already paying the branch penalty to avoid computing the two
       extra columns needed as input to this filter.
      We might as well save time computing the filter as well.
      This reduces the inner loop from 21 instructions to 16, the number
       of loads per iteration from 4 to 1, and the number of multiplies
       from 7 to 4.
      The gain in overall decoding performance, however, is small (less
       than 1%).
      
      This change also means we now valgrind clean on ARMv6, which is
       its real purpose.
      The errors reported here were valgrind's fault (it does not detect
       that 0 times an uninitialized value is initialized), but Julian
       Seward says it would slow down valgrind considerably to make such
       checks.
      Speeding up libvpx rather, even by a small amount, seems a much
       better idea if only to enable proper valgrind checking of the
       rest of the codec.
      
      Change-Id: Ifb376ea195e086b60f61daf1097d8910c4d8ff16
      18dc92fd
  10. 27 Sep, 2010 6 commits
  11. 24 Sep, 2010 2 commits
    • Timothy B. Terriberry's avatar
      Fix valgrind errors in vp8_sixtap_predict8x4_armv6(). · e2795e99
      Timothy B. Terriberry authored
      This function was accessing values below the stack pointer, which
       can be corrupted by signal delivery at any time.
      
      Change-Id: I92945b30817562eb0340f289e74c108da72aeaca
      e2795e99
    • Johann's avatar
      combine max values and compare once · f30e8dd7
      Johann authored
      previous implementation compared each set of values to limit and then
      &'d them together, requiring a compare and & for each value.
      
      this does the accumulation first, requiring only one compare
      
      Change-Id: Ia5e3a1a50e47699c88470b8c41964f92a0dc1323
      f30e8dd7