src/io/source_{avcodec,sndfile}.c: avoid modifying input param
authorPaul Brossier <piem@piem.org>
Thu, 21 Apr 2016 17:02:41 +0000 (19:02 +0200)
committerPaul Brossier <piem@piem.org>
Thu, 21 Apr 2016 17:02:41 +0000 (19:02 +0200)
src/io/source_avcodec.c
src/io/source_sndfile.c

index 9bf9098..3ab9a1f 100644 (file)
@@ -166,10 +166,10 @@ aubio_source_avcodec_t * new_aubio_source_avcodec(const char_t * path, uint_t sa
   //AUBIO_DBG("input_channels: %d\n", s->input_channels);
 
   if (samplerate == 0) {
-    samplerate = s->input_samplerate;
-    //AUBIO_DBG("sampling rate set to 0, automagically adjusting to %d\n", samplerate);
+    s->samplerate = s->input_samplerate;
+  } else {
+    s->samplerate = samplerate;
   }
-  s->samplerate = samplerate;
 
   if (s->samplerate >  s->input_samplerate) {
     AUBIO_WRN("source_avcodec: upsampling %s from %d to %d\n", s->path,
index 34804e1..f69d2f6 100644 (file)
@@ -107,10 +107,11 @@ aubio_source_sndfile_t * new_aubio_source_sndfile(const char_t * path, uint_t sa
   s->input_format     = sfinfo.format;
 
   if (samplerate == 0) {
-    samplerate = s->input_samplerate;
+    s->samplerate = s->input_samplerate;
     //AUBIO_DBG("sampling rate set to 0, automagically adjusting to %d\n", samplerate);
+  } else {
+    s->samplerate = samplerate;
   }
-  s->samplerate = samplerate;
   /* compute input block size required before resampling */
   s->ratio = s->samplerate/(smpl_t)s->input_samplerate;
   s->input_hop_size = (uint_t)FLOOR(s->hop_size / s->ratio + .5);