Wim Taymans
5981ad182e
midi: set midi parser rank primary
...
Now that it supports seeking and all, mark it primary
2013-03-22 14:48:52 +01:00
Wim Taymans
5474532f57
midiparse: always seek back to beginning
...
We always need to seek back to the beginning because when we do a flushing seek,
we might have lost events downstream.
2013-03-22 13:49:49 +01:00
Wim Taymans
803f564013
midiparse: implement seeking
...
Seek back to 0 for backward seeking and let things run and clip for forwards
seeking.
2013-03-22 12:25:16 +01:00
Wim Taymans
661989bcb7
midiparse: simplify the callbacks
...
We only need one callback to send bytes out.
2013-03-21 18:18:29 +01:00
Wim Taymans
06e06b6159
midiparse: clean up tracks
2013-03-21 17:25:32 +01:00
Wim Taymans
7a14606b51
midiparse: don't leak midi data
2013-03-21 17:16:24 +01:00
Wim Taymans
15f07e7f12
midiparse: small cleanups in error paths
2013-03-21 16:06:46 +01:00
Wim Taymans
adae7f1859
midiparse: duration is max of all track durations
2013-03-21 16:06:46 +01:00
Wim Taymans
7498d104a7
midiparse: fix klass
2013-03-21 16:06:46 +01:00
Wim Taymans
5492631d84
midiparse: Update duration
...
Rework things a bit so that we can run over the midi events and fire callbacks
for each of them. We can then use that for calculating the duration and also for
doing playback.
Only parse as many tracks as specified in the header.
Fix default tempo;
Send MIDI tick events every 10ms
2013-03-21 15:00:16 +01:00
Wim Taymans
76cd090503
midiparse: handle midi in RIFF
2013-03-21 09:30:41 +01:00
Wim Taymans
a093d65310
midiparse: small fixes
2013-03-21 07:21:41 +01:00
Wim Taymans
10cb1a7a3a
midi: set rank as marginal
...
Set the mark to marginal until we implement more features.
2013-03-21 07:21:41 +01:00
Wim Taymans
235f2a962e
midiparse: add basic midi parser
...
Parses midi files and outputs buffers with midi events.
2013-03-21 07:21:40 +01:00