comparison audioio/BufferingAudioCallbackRecordTarget.cpp @ 5:7fc28f7a935a

...
author cannam
date Mon, 06 Nov 2006 20:12:38 +0000
parents b8f6bbf172e7
children
comparison
equal deleted inserted replaced
4:f0e9092bd3e4 5:7fc28f7a935a
24 24
25 void 25 void
26 BufferingAudioCallbackRecordTarget::putSamples(size_t nframes, float **samples) 26 BufferingAudioCallbackRecordTarget::putSamples(size_t nframes, float **samples)
27 { 27 {
28 for (size_t c = 0; c < getChannelCount(); ++c) { 28 for (size_t c = 0; c < getChannelCount(); ++c) {
29 size_t written = nframes;
29 if (samples[c]) { 30 if (samples[c]) {
30 m_buffers[c]->write(samples[c], nframes); 31 written = m_buffers[c]->write(samples[c], nframes);
31 } else { 32 } else {
32 m_buffers[c]->zero(nframes); 33 written = m_buffers[c]->zero(nframes);
34 }
35 if (written < nframes) {
36 std::cerr << "WARNING: BufferingAudioCallbackRecordTarget::putSamples: Buffer overflow: wrote " << written << " of " << nframes << " samples on channel " << c << std::endl;
33 } 37 }
34 } 38 }
35 } 39 }
36 40
37 size_t 41 size_t
64 int reader) 68 int reader)
65 { 69 {
66 return m_buffers[channel]->skip(nframes, reader); 70 return m_buffers[channel]->skip(nframes, reader);
67 } 71 }
68 72
73 size_t
74 BufferingAudioCallbackRecordTarget::skipAllSamples(size_t channel,
75 int reader)
76 {
77 return m_buffers[channel]->skip(m_buffers[channel]->getReadSpace(reader),
78 reader);
79 }
80