shithub: opus

Download patch

ref: aa8ff201b5f8c489c52f00d83cd188bb168c310b
parent: d6eb9c468f3343768755550c250c975f405aeeaf
author: Timothy B. Terriberry <[email protected]>
date: Tue Nov 26 12:10:37 EST 2013

Clean up celt_pitch_xcorr() test code.

This will be removed shortly, but at least it should be correct
 before it goes.
Makes the code get used unconditionally (when uncommented), and
 actually frees the buffer it allocates (now using the libopus
 allocation functions).

--- a/celt/pitch.h
+++ b/celt/pitch.h
@@ -167,15 +167,17 @@
 #  define celt_pitch_xcorr(_x, _y, xcorr, len, max_pitch, arch) \
   ((void)(arch),celt_pitch_xcorr_c(_x, _y, xcorr, len, max_pitch))
 # endif
-#else
+#endif
 
-/*static inline opus_val32 real_celt_pitch_xcorr(const opus_val16 *_x,
+/*#include "os_support.h"
+
+static inline opus_val32 real_celt_pitch_xcorr(const opus_val16 *_x,
  const opus_val16 *_y,opus_val32 *xcorr,int len,int max_pitch,int arch){
   opus_val32 *xcorr_tmp;
   opus_val32  ret_tmp;
   opus_val32  ret;
   int         i;
-  xcorr_tmp=(opus_val32 *)malloc(max_pitch*sizeof(*xcorr));
+  xcorr_tmp=(opus_val32 *)opus_alloc(max_pitch*sizeof(*xcorr));
   ret_tmp=celt_pitch_xcorr_c(_x,_y,xcorr_tmp,len,max_pitch);
   ret=celt_pitch_xcorr(_x,_y,xcorr,len,max_pitch,arch);
   for(i=0;i<max_pitch;i++)if(xcorr[i]!=xcorr_tmp[i]){
@@ -185,12 +187,11 @@
   if(ret!=ret_tmp){
     fprintf(stderr,"ret (0x%08X) != ret_tmp (0x%08X)\n",ret,ret_tmp);
   }
+  opus_free(xcorr_tmp);
   return ret_tmp;
 }
 
 #undef celt_pitch_xcorr
 #define celt_pitch_xcorr real_celt_pitch_xcorr*/
-
-#endif
 
 #endif