1. 04 Feb, 2013 2 commits
    • Yaowu Xu's avatar
      re-write 8 point idct · 1eb79dc1
      Yaowu Xu authored
      to be consistent with idct16 and idct32.
      
      Change-Id: Ie89dbd32b65c33274b7fecb4b41160fcf1962204
      1eb79dc1
    • Yaowu Xu's avatar
      a couple of minor fixes · ccaaeb4b
      Yaowu Xu authored
      fixed a function prototypes to prevent compiler warnings;
      removed a function not in use;
      un-capitialize "Refstride" to ref_stride
      
      Change-Id: Ib4472b6084f357d96328c6a06e795b6813a9edba
      ccaaeb4b
  2. 01 Feb, 2013 3 commits
    • Yaowu Xu's avatar
      Merge "Changes 16 point idct" into experimental · af4c9d2f
      Yaowu Xu authored
      af4c9d2f
    • Yaowu Xu's avatar
    • Yaowu Xu's avatar
      Changes 16 point idct · 91e0e801
      Yaowu Xu authored
      This commit changes the inverse 16 point dct to use the same algorithm
      as the one for 32 point idct. In fact, now 16 point dct uses the exact
      version of the souce code for even portion of the 32 point idct.
      
      Tests showed current implementation has significant better accuracy
      than the previous version. With this implementation and the minor bug
      fix on forward 16 point dct, encoding tests showed about 0.2% better
      compression of CIF set, test results on std-hd setting pending.
      
      Change-Id: I68224b60c816ba03434e9f08bee147c7e344fb63
      91e0e801
  3. 31 Jan, 2013 3 commits
    • Yaowu Xu's avatar
      fix a small bug in 16 point forward dct · ab1cad9b
      Yaowu Xu authored
      The commit fixes a minor error in 16 point fdct where in a rotation can
      produce result of -1 instead of 0.
      
      Change-Id: I45aac4a52bcd06225c6d04e643547a13e1c1aade
      ab1cad9b
    • Yaowu Xu's avatar
    • Yaowu Xu's avatar
      A fix point implementation of 32x32 idct · 5149d7f7
      Yaowu Xu authored
      This commit changes the 32x32 idct to use integer only. The algorithm
      was taken directly from "A Fast Computational Algorithm for the
      Discrete Cosine Tranform" by W. Chen, et al., which was published in
      IEEE Transaction on Communication Vol. Com.-25 No. 9, 1977. The signal
      flow graph in the original paper is for a 32 point forward dct, the
      current implementation of inverse DCT was done by follow the graph in
      reversed direction.
      
      With this implementation, the 32 point inverse dct contains a 16 point
      inverse dct in its even portion, similarly the 16 point idct further
      contains 8 point and 4 point inverse dcts.
      
      As of patch 4, encoding tests showed there is no compression loss when
      compared against the floating point baseline. Numbers even showed very
      small postives. (cif: .01%, std-hd: .05%).
      
      Change-Id: I2d2d17a424b0b04b42422ef33ec53f5802b0f378
      5149d7f7
  4. 30 Jan, 2013 9 commits
  5. 29 Jan, 2013 8 commits
  6. 28 Jan, 2013 3 commits
    • Paul Wilkins's avatar
      Segment Skip Flag · 0ff9b033
      Paul Wilkins authored
      First step in simplifying the segment mode and
      segment EOB flags into a simpler segment skip
      flag that implies 0,0 mv and EOB at position 0.
      
      Change-Id: Ib750cac31a7a02dc21082580498efd9f7d8d72a5
      0ff9b033
    • Paul Wilkins's avatar
    • Paul Wilkins's avatar
      Simplify Zero bin and zero bin run code. · 8e2c03fb
      Paul Wilkins authored
      Simplification to eliminate a number of very large data
      data structures. All zero run, zbin boosts for different
      transform sizes are now limited to a maximum run length
      of 15 before they max out the boost.
      
      Some further work still needs be done to refactor, rationalize
      and optimize the multiple quantizer functions.
      
      The simplification coupled with tweaks to the 16 element array
      now used for all transform sizes, has minimal effect on quality.
      
      Change-Id: I6f3948b8ca0418b60d4db9030ff19026a34ed423
      8e2c03fb
  7. 26 Jan, 2013 3 commits
  8. 25 Jan, 2013 3 commits
  9. 24 Jan, 2013 5 commits
    • Paul Wilkins's avatar
      Mvref speedup · fcb4a25c
      Paul Wilkins authored
      Quality / decode speed trade off changes.
      Simpler insert method without sort. Quality impact small.
      
      Change-Id: Id0c0941bc508d985405abd06a13ffe7489170b62
      fcb4a25c
    • Paul Wilkins's avatar
      425316bc
    • Paul Wilkins's avatar
      MSVS compiler error · f7597625
      Paul Wilkins authored
      Visual Studio reports and error on the line
        static const int bsize2 = bsize >> 1;
      
      "error C2099: initializer is not a constant"
      
      Also warnings on signed/unsigned mismatch
      
      Change-Id: I76cb06f736bd9c90107a26bfb3c130ec3f6c33de
      f7597625
    • Scott LaVarnway's avatar
    • Deb Mukherjee's avatar
      Adds an error-resilient mode with test · 01cafaab
      Deb Mukherjee authored
      Adds an error-resilient mode where frames can be continued
      to be decoded even when there are errors (due to network losses)
      on a prior frame. Specifically, backward updates are turned off
      and probabilities of various symbols are reset to defaults at
      the beginning of each frame. Further, the last frame's mvs are
      not used for the mv reference list, and the sorting of the
      initial list based on search on previous frames is turned off
      as well.
      
      Also adds a test where an arbitrary set of frames are skipped
      from decoding to simulate errors. The test verifies (1) that if
      the error frames are droppable - i.e. frame buffer updates have
      been turned off - there are no mismatch errors for the remaining
      frames after the error frames; and (2) if the error-frames are non
      droppable, there are not only no decoding errors but the mismatch
      PSNR between the decoder's version of the post-error frames and the
      encoder's version is at least 20 dB.
      
      Change-Id: Ie6e2bcd436b1e8643270356d3a930e8989ff52a5
      01cafaab
  10. 23 Jan, 2013 1 commit