[xiph-commits] r9785 - trunk/theora/lib

giles at svn.xiph.org giles at svn.xiph.org
Sat Aug 20 11:10:03 PDT 2005


Author: giles
Date: 2005-08-20 11:10:00 -0700 (Sat, 20 Aug 2005)
New Revision: 9785

Modified:
   trunk/theora/lib/quant.c
Log:
Remove the check for only 3 base matricies from the setup header
read function now that we have hacky half-support for more.


Modified: trunk/theora/lib/quant.c
===================================================================
--- trunk/theora/lib/quant.c	2005-08-20 18:01:11 UTC (rev 9784)
+++ trunk/theora/lib/quant.c	2005-08-20 18:10:00 UTC (rev 9785)
@@ -217,7 +217,6 @@
   }
   /* base matricies */
   theora_read(opb,9,&N); N++;
-  if(N!=3)return OC_BADHEADER; /* we only support the VP3 config */
   ci->qmats=_ogg_malloc(N*64*sizeof(Q_LIST_ENTRY));
   ci->MaxQMatrixIndex = N;
   for(y=0; y<N; y++) {
@@ -310,11 +309,10 @@
   memcpy(pbi->DcScaleFactorTable, ci->DcScaleFactorTable,
          sizeof(pbi->DcScaleFactorTable));
 
-  /* the decoder only supports 3 different base matricies; do the
+  /* the decoder only supports 6 different base matricies; do the
      best we can with the range table. We assume the first range
-     entry for Intra U is also good for V, and that the first 
-     Inter Y is good for all the Inter channels. A NULL range 
-     table entry indicates we fall back to the previous value. */
+     entry is good for all qi values. A NULL range table entry 
+     indicates we fall back to the previous value. */
   qmat = ci->range_table[0]->qmat;
   memcpy(pbi->Y_coeffs, qmat, sizeof(pbi->Y_coeffs));
   if (ci->range_table[1]) qmat = ci->range_table[1]->qmat;



More information about the commits mailing list