shithub: aubio

Download patch

ref: 52d6145a0a9a9ab5cada373d290c86c350a7f547
parent: db120acffbf8fa0cc71e8bc8fba056c60a5f9ec1
parent: 987fb86c97aee37ed3a19ebeee659eec6a7e88e0
author: Paul Brossier <piem@piem.org>
date: Fri Mar 22 14:33:01 EDT 2013

Merge /Users/piem/projects/aubio/aubio into device

--- a/src/io/source_apple_audio.c
+++ b/src/io/source_apple_audio.c
@@ -237,6 +237,13 @@
 }
 
 uint_t aubio_source_apple_audio_seek (aubio_source_apple_audio_t * s, uint_t pos) {
+  if (1) {
+    AudioBufferList *bufferList = &s->bufferList;
+    UInt32 samples = s->block_size * s->channels;
+    Float64 rateRatio = s->samplerate / s->source_samplerate;
+    uint_t segmentSize= (uint_t)(samples * rateRatio + .5);
+    bufferList->mBuffers[0].mDataByteSize = segmentSize * sizeof(short);
+  }
   SInt64 resampled_pos = (SInt64)ROUND( pos * s->source_samplerate * 1. / s->samplerate );
   OSStatus err = ExtAudioFileSeek(s->audioFile, resampled_pos);
   if (err) AUBIO_ERROR("source_apple_audio: error in ExtAudioFileSeek (%d)\n", (int)err);
--