shithub: aubio

Download patch

ref: 0af05d386255b5c4f06e70a206b5db0369502132
parent: 9daf0183f0a28b112be50bb3282a66699ee59b5d
author: Paul Brossier <piem@piem.org>
date: Thu Oct 8 08:27:41 EDT 2009

rename src/temporal/resample.c to src/temporal/resampler.c

--- a/src/aubio.h
+++ b/src/aubio.h
@@ -69,7 +69,7 @@
 #include "utils/hist.h"
 #include "spectral/tss.h"
 #if HAVE_SAMPLERATE
-#include "temporal/resample.h"
+#include "temporal/resampler.h"
 #endif /* HAVE_SAMPLERATE */
 #include "temporal/biquad.h"
 #include "temporal/filter.h"
--- a/src/temporal/resample.c
+++ /dev/null
@@ -1,69 +1,0 @@
-/*
-	 Copyright (C) 2003 Paul Brossier
-
-	 This program is free software; you can redistribute it and/or modify
-	 it under the terms of the GNU General Public License as published by
-	 the Free Software Foundation; either version 2 of the License, or
-	 (at your option) any later version.
-
-	 This program is distributed in the hope that it will be useful,
-	 but WITHOUT ANY WARRANTY; without even the implied warranty of
-	 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-	 GNU General Public License for more details.
-
-	 You should have received a copy of the GNU General Public License
-	 along with this program; if not, write to the Free Software
-	 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-	 
-*/
-
-#include "config.h"
-
-#if HAVE_SAMPLERATE
-
-#include <samplerate.h> /* from libsamplerate */
-
-#include "aubio_priv.h"
-#include "fvec.h"
-#include "temporal/resample.h"
-
-struct _aubio_resampler_t {
-	SRC_DATA  *proc;
-	SRC_STATE *stat;
-	float ratio;
-	uint_t type;
-};
-
-aubio_resampler_t * new_aubio_resampler(float ratio, uint_t type) {
-	aubio_resampler_t * s  = AUBIO_NEW(aubio_resampler_t);
-	int error = 0;
-	s->stat = src_new (type, 1, &error) ; /* only one channel */
-	s->proc = AUBIO_NEW(SRC_DATA);
-	if (error) AUBIO_ERR("%s\n",src_strerror(error));
-	s->ratio = ratio;
-	return s;
-}
-
-void del_aubio_resampler(aubio_resampler_t *s) {
-	src_delete(s->stat);
-	AUBIO_FREE(s->proc);
-	AUBIO_FREE(s);
-}
-
-void aubio_resampler_do (aubio_resampler_t *s, 
-    fvec_t * input,  fvec_t * output) {
-	uint_t i ;
-	s->proc->input_frames = input->length;
-	s->proc->output_frames = output->length;
-	s->proc->src_ratio = s->ratio;
-	for (i = 0 ; i< input->channels; i++) 
-	{
-		/* make SRC_PROC data point to input outputs */
-		s->proc->data_in = (float *)input->data[i];
-		s->proc->data_out= (float *)output->data[i];
-		/* do resampling */
-		src_process (s->stat, s->proc) ;
-	}
-}	
-
-#endif /* HAVE_SAMPLERATE */
--- a/src/temporal/resample.h
+++ /dev/null
@@ -1,63 +1,0 @@
-/*
-	 Copyright (C) 2003 Paul Brossier
-
-	 This program is free software; you can redistribute it and/or modify
-	 it under the terms of the GNU General Public License as published by
-	 the Free Software Foundation; either version 2 of the License, or
-	 (at your option) any later version.
-
-	 This program is distributed in the hope that it will be useful,
-	 but WITHOUT ANY WARRANTY; without even the implied warranty of
-	 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-	 GNU General Public License for more details.
-
-	 You should have received a copy of the GNU General Public License
-	 along with this program; if not, write to the Free Software
-	 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
-	 
-*/
-
-#ifndef _RESAMPLE_H
-#define _RESAMPLE_H
-
-/** \file
- 
- Resampling object
-
- This object resamples an input vector into an output vector using
- libsamplerate. See http://www.mega-nerd.com/SRC/
- 
-*/
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/** resampler object */
-typedef struct _aubio_resampler_t aubio_resampler_t;
-
-/** create resampler object 
-
-  \param ratio output_sample_rate / input_sample_rate 
-  \param type libsamplerate resampling type
-
-*/
-aubio_resampler_t * new_aubio_resampler(float ratio, uint_t type);
-
-/** delete resampler object */
-void del_aubio_resampler(aubio_resampler_t *s);
-
-/** resample input in output
-
-  \param s resampler object
-  \param input input buffer of size N
-  \param output output buffer of size N*ratio
-
-*/
-void aubio_resampler_do (aubio_resampler_t *s, fvec_t * input,  fvec_t * output);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* _RESAMPLE_H */
--- /dev/null
+++ b/src/temporal/resampler.c
@@ -1,0 +1,69 @@
+/*
+	 Copyright (C) 2003 Paul Brossier
+
+	 This program is free software; you can redistribute it and/or modify
+	 it under the terms of the GNU General Public License as published by
+	 the Free Software Foundation; either version 2 of the License, or
+	 (at your option) any later version.
+
+	 This program is distributed in the hope that it will be useful,
+	 but WITHOUT ANY WARRANTY; without even the implied warranty of
+	 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+	 GNU General Public License for more details.
+
+	 You should have received a copy of the GNU General Public License
+	 along with this program; if not, write to the Free Software
+	 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+	 
+*/
+
+#include "config.h"
+
+#if HAVE_SAMPLERATE
+
+#include <samplerate.h> /* from libsamplerate */
+
+#include "aubio_priv.h"
+#include "fvec.h"
+#include "temporal/resampler.h"
+
+struct _aubio_resampler_t {
+	SRC_DATA  *proc;
+	SRC_STATE *stat;
+	float ratio;
+	uint_t type;
+};
+
+aubio_resampler_t * new_aubio_resampler(float ratio, uint_t type) {
+	aubio_resampler_t * s  = AUBIO_NEW(aubio_resampler_t);
+	int error = 0;
+	s->stat = src_new (type, 1, &error) ; /* only one channel */
+	s->proc = AUBIO_NEW(SRC_DATA);
+	if (error) AUBIO_ERR("%s\n",src_strerror(error));
+	s->ratio = ratio;
+	return s;
+}
+
+void del_aubio_resampler(aubio_resampler_t *s) {
+	src_delete(s->stat);
+	AUBIO_FREE(s->proc);
+	AUBIO_FREE(s);
+}
+
+void aubio_resampler_do (aubio_resampler_t *s, 
+    fvec_t * input,  fvec_t * output) {
+	uint_t i ;
+	s->proc->input_frames = input->length;
+	s->proc->output_frames = output->length;
+	s->proc->src_ratio = s->ratio;
+	for (i = 0 ; i< input->channels; i++) 
+	{
+		/* make SRC_PROC data point to input outputs */
+		s->proc->data_in = (float *)input->data[i];
+		s->proc->data_out= (float *)output->data[i];
+		/* do resampling */
+		src_process (s->stat, s->proc) ;
+	}
+}	
+
+#endif /* HAVE_SAMPLERATE */
--- /dev/null
+++ b/src/temporal/resampler.h
@@ -1,0 +1,63 @@
+/*
+	 Copyright (C) 2003 Paul Brossier
+
+	 This program is free software; you can redistribute it and/or modify
+	 it under the terms of the GNU General Public License as published by
+	 the Free Software Foundation; either version 2 of the License, or
+	 (at your option) any later version.
+
+	 This program is distributed in the hope that it will be useful,
+	 but WITHOUT ANY WARRANTY; without even the implied warranty of
+	 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+	 GNU General Public License for more details.
+
+	 You should have received a copy of the GNU General Public License
+	 along with this program; if not, write to the Free Software
+	 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+	 
+*/
+
+#ifndef _RESAMPLE_H
+#define _RESAMPLE_H
+
+/** \file
+ 
+ Resampling object
+
+ This object resamples an input vector into an output vector using
+ libsamplerate. See http://www.mega-nerd.com/SRC/
+ 
+*/
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/** resampler object */
+typedef struct _aubio_resampler_t aubio_resampler_t;
+
+/** create resampler object 
+
+  \param ratio output_sample_rate / input_sample_rate 
+  \param type libsamplerate resampling type
+
+*/
+aubio_resampler_t * new_aubio_resampler(float ratio, uint_t type);
+
+/** delete resampler object */
+void del_aubio_resampler(aubio_resampler_t *s);
+
+/** resample input in output
+
+  \param s resampler object
+  \param input input buffer of size N
+  \param output output buffer of size N*ratio
+
+*/
+void aubio_resampler_do (aubio_resampler_t *s, fvec_t * input,  fvec_t * output);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* _RESAMPLE_H */