Skip to content
Snippets Groups Projects
  1. Jul 31, 2011
  2. Jul 29, 2011
  3. Feb 10, 2011
  4. Jan 23, 2011
  5. Jan 21, 2011
  6. Jan 20, 2011
    • Timothy B. Terriberry's avatar
      Make collapse-detection bitexact. · 21af73eb
      Timothy B. Terriberry authored and Jean-Marc Valin's avatar Jean-Marc Valin committed
      Jean-Marc's original anti-collapse patch used a threshold on the
       content of a decoded band to determine whether or not it should
       be filled with random noise.
      Since this is highly sensitive to the accuracy of the
       implementation, it could lead to significant decoder output
       differences even if decoding error up to that point was relatively
       small.
      
      This patch detects collapsed bands from the output of the vector
       quantizer, using exact integer arithmetic.
      It makes two simplifying assumptions:
       a) If either input to haar1() is non-zero during TF resolution
           adjustments, then the output will be non-zero.
       b) If the content of a block is non-zero in any of the bands that
           are used for folding, then the folded output will be non-zero.
      b) in particular is likely to be false when SPREAD_NONE is used.
      It also ignores the case where mid and side are orthogonal in
       stereo_merge, but this is relatively unlikely.
      This misses just over 3% of the cases that Jean-Marc's anti-collapse
       detection strategy would catch, but does not mis-classify any (all
       detected collapses are true collapses).
      
      This patch overloads the "fill" parameter to mark which blocks have
       non-zero content for folding.
      As a consequence, if a set of blocks on one side of a split has
       collapsed, _no_ folding is done: the result would be zero anyway,
       except for short blocks with SPREAD_AGGRESSIVE that are split down
       to a single block, but a) that means a lot of bits were available
       so a collapse is unlikely and b) anti-collapse can fill the block
       anyway, if it's used.
      This also means that if itheta==0 or itheta==16384, we no longer
       fold at all on that side (even with long blocks), since we'd be
       multiplying the result by zero anyway.
      21af73eb
  7. Nov 24, 2010
  8. Sep 13, 2010
  9. Jul 25, 2010
  10. Jul 24, 2010
  11. Jul 13, 2010
  12. May 09, 2010
  13. Apr 26, 2010
  14. Apr 19, 2010
  15. Feb 26, 2010
  16. Oct 18, 2009
  17. Oct 01, 2009
  18. Sep 18, 2009
  19. Sep 12, 2009
  20. Aug 29, 2009
  21. Jul 13, 2009
  22. Mar 27, 2009
    • Jean-Marc Valin's avatar
      Squashed commit of the following: · ca53b7c9
      Jean-Marc Valin authored
      commit ea807b68678dd76175def2c5eb006c6bdb16679e
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Wed Mar 25 23:24:41 2009 -0400
      
          cleanup before merge
      
      commit 73ad1a0202641be6a23903e464ece21fe332a131
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Sat Mar 21 00:02:16 2009 -0400
      
          Some tuning of the new stereo
      
      commit c05057eb57a7723045214a2f830fd561388ae48a
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Sun Mar 15 19:56:11 2009 -0400
      
          fixed-point: atan2() converted
      
      commit a8476cf8be55b0612d42df98d9807ca1335adfe3
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Sat Mar 14 23:10:04 2009 -0400
      
          fixed-point: Getting the new stereo code working in fixed-point (still more
          work left)
      
      commit 70a452761a5ce15700664e7167886dce5914cbd0
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Mon Mar 2 23:36:25 2009 -0500
      
          Coding left and right independently for lower bands
      
      commit 4efd1e6385c7d036749080265a8d26668312b91b
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Sun Mar 1 23:56:46 2009 -0500
      
          Removed the sqrt(C) from the normalisation, which simplifies a lot of things.
      
      commit a4f3c5c60bc396bf644afa49b49e6b24ccf144f8
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Fri Feb 20 20:49:38 2009 -0500
      
          Better point stereo calculation when we don't encode the side anyway
      
      commit f08525de4739f4017d19ec2e2022883deda8f826
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Thu Feb 19 19:43:09 2009 -0500
      
          Apparently, Timothy's calculations for fine energy allocation also apply
          to the quantisation of theta.
      
      commit 6548cffc9d3f996b8a8dbfab982f0da0bc6c2dc2
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Thu Feb 19 07:35:24 2009 -0500
      
          Better handling of the "theta bits" and disabling the orthogonalize()
      
      commit 7aa82c694967afa85dd30be8cc670663f98829fe
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Wed Feb 18 08:01:07 2009 -0500
      
          tuning the new stereo
      
      commit c2b780a773de66fd9613c7cd54c09b705fe9ce45
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Sun Feb 15 22:24:52 2009 -0500
      
          The new stereo coupling actually decodes properly now.
      
      commit 85513c203d773bebcf0a6055f953170d563d890c
      Author: Jean-Marc Valin <jean-marc.valin@usherbrooke.ca>
      Date:   Sun Feb 15 21:31:16 2009 -0500
      
          First attempt at a new "constrained" MS stereo scheme
      ca53b7c9
  23. Dec 05, 2008
  24. Nov 07, 2008
  25. Jul 21, 2008
  26. May 05, 2008
  27. Apr 21, 2008
  28. Mar 25, 2008
  29. Mar 03, 2008
  30. Feb 27, 2008
  31. Feb 26, 2008
  32. Feb 22, 2008
  33. Feb 20, 2008
Loading