summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/midi_ring_buffer.h
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2006-08-23 04:30:57 +0000
committerDavid Robillard <d@drobilla.net>2006-08-23 04:30:57 +0000
commitea71de278461b2bc0240515b82bb56ef68f5eee3 (patch)
treecbc615b5f4aa0d01f2d479abc214f6798fd67862 /libs/ardour/ardour/midi_ring_buffer.h
parent50baf0382f1f98793dff151bd0a940a4d140d6c0 (diff)
- Fixes for some recording bugs
- Working MIDI playback - Various SMF fixes - Loading of MIDI containing sessions w/o clobbering .mid files - Varispeed MIDI fixes (still no reverse though) - Fix for crazy rec-region sizes - Throttled MIDI diskstream flush based on time passed (related to rec-region fix) - Fixed playback of MIDI regions not positioned at origin (time stamp translation) - Commented/removed old debug print statements (though some still remain) git-svn-id: svn://localhost/ardour2/branches/midi@844 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/ardour/midi_ring_buffer.h')
-rw-r--r--libs/ardour/ardour/midi_ring_buffer.h24
1 files changed, 1 insertions, 23 deletions
diff --git a/libs/ardour/ardour/midi_ring_buffer.h b/libs/ardour/ardour/midi_ring_buffer.h
index 08ddfd6ca3..662f5a8350 100644
--- a/libs/ardour/ardour/midi_ring_buffer.h
+++ b/libs/ardour/ardour/midi_ring_buffer.h
@@ -124,27 +124,7 @@ MidiRingBuffer::clear_event(size_t index)
_ev_buf[index].buffer = 0;
}
-#if 0
-inline size_t
-MidiRingBuffer::read (MidiBuffer& buf)
-{
- const size_t priv_read_ptr = g_atomic_int_get(&_read_ptr);
- if (read_space() == 0) {
- return 0;
- } else {
- MidiEvent* const read_ev = &_ev_buf[priv_read_ptr];
- assert(read_ev->size > 0);
- buf.push_back(*read_ev);
- printf("MRB - read %xd %d %d with time %u at index %zu\n",
- read_ev->buffer[0], read_ev->buffer[1], read_ev->buffer[2], read_ev->time,
- priv_read_ptr);
- clear_event(priv_read_ptr);
- g_atomic_int_set(&_read_ptr, (priv_read_ptr + 1) % _size);
- return 1;
- }
-}
-#endif
inline size_t
MidiRingBuffer::write (const MidiEvent& ev)
{
@@ -175,7 +155,7 @@ MidiRingBuffer::write (const MidiEvent& ev)
assert(write_ev->size = ev.size);
//last_write_time = ev.time;
- printf("(W) read space: %zu\n", read_space());
+ //printf("(W) read space: %zu\n", read_space());
return 1;
}
@@ -192,8 +172,6 @@ MidiRingBuffer::read(MidiBuffer& dst, jack_nframes_t start, jack_nframes_t end)
size_t count = 0;
size_t limit = read_space();
- assert(time >= start); // FIXME: deal with skipped cycles/lost notes somehow
-
while (time <= end && limit > 0) {
MidiEvent* const read_ev = &_ev_buf[priv_read_ptr];
if (time >= start) {