summaryrefslogtreecommitdiff
path: root/libs/ardour/smf_source.cc
diff options
context:
space:
mode:
authorHans Baier <hansfbaier@googlemail.com>2008-04-08 23:57:59 +0000
committerHans Baier <hansfbaier@googlemail.com>2008-04-08 23:57:59 +0000
commitf39606f985223d211d218799c9e0de1e7c0e7f0c (patch)
tree792d7b0d4bfcbd4eada91b6de6c69b9d38018b80 /libs/ardour/smf_source.cc
parent9228d5dc23e196fb0dc11ef40d8f7517e2395ef5 (diff)
* fixed bug: MIDI region did not sound if its position was less than its start offset
git-svn-id: svn://localhost/ardour2/branches/3.0@3239 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/smf_source.cc')
-rw-r--r--libs/ardour/smf_source.cc4
1 files changed, 2 insertions, 2 deletions
diff --git a/libs/ardour/smf_source.cc b/libs/ardour/smf_source.cc
index 6df78f3b29..18d7e87d88 100644
--- a/libs/ardour/smf_source.cc
+++ b/libs/ardour/smf_source.cc
@@ -331,7 +331,7 @@ SMFSource::read_event(uint32_t* delta_t, uint32_t* size, Byte** buf) const
/** All stamps in audio frames */
nframes_t
-SMFSource::read_unlocked (MidiRingBuffer& dst, nframes_t start, nframes_t cnt, nframes_t stamp_offset) const
+SMFSource::read_unlocked (MidiRingBuffer& dst, nframes_t start, nframes_t cnt, nframes_t stamp_offset, nframes_t negative_stamp_offset) const
{
cerr << "SMF read_unlocked " << name() << " read " << start << ", count=" << cnt << ", offset=" << stamp_offset << endl;
@@ -377,7 +377,7 @@ SMFSource::read_unlocked (MidiRingBuffer& dst, nframes_t start, nframes_t cnt, n
((time / (double)_ppqn) * frames_per_beat)) + stamp_offset;
if (ev_frame_time <= start + cnt)
- dst.write(ev_frame_time, ev_size, ev_buffer);
+ dst.write(ev_frame_time - negative_stamp_offset, ev_size, ev_buffer);
else
break;
}