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 */