Mercurial > gub
view patches/0001-Midi2ly-grok-midi-files-with-up-to-256-tracks-was-32.patch @ 6512:ccc20ae889ca default tip guix
mingw::guile-2.0.7 builds.
author | Jan Nieuwenhuizen <janneke@gnu.org> |
---|---|
date | Thu, 24 Mar 2016 08:03:39 +0100 |
parents | 0247125e995d |
children |
line wrap: on
line source
From 85c0ce205e1a9b5fad4ac79d02292ac1231db532 Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen <janneke@gnu.org> Date: Tue, 18 Jan 2011 15:31:58 +0100 Subject: [PATCH] Midi2ly: grok midi files with up to 256 tracks, was 32. Fixes #1479. --- scripts/midi2ly.py | 13 +++++++++++-- 1 files changed, 11 insertions(+), 2 deletions(-) diff --git a/scripts/midi2ly.py b/scripts/midi2ly.py index 86c32ba..b03e1a8 100644 --- a/scripts/midi2ly.py +++ b/scripts/midi2ly.py @@ -712,11 +712,20 @@ def dump_channel (thread, skip): return '\n '.join (lines) + '\n' +def number2ascii (i): + s = '' + i += 1 + while i > 0: + m = (i - 1) % 26 + s = '%c' % (m + ord ('A')) + s + i = (i - m)/26 + return s + def track_name (i): - return 'track%c' % (i + ord ('A')) + return 'track' + number2ascii (i) def channel_name (i): - return 'channel%c' % (i + ord ('A')) + return 'channel' + number2ascii (i) def dump_track (channels, n): s = '\n' diff --git a/python/midi.c b/python/midi.c index 972410f..4e6368a 100644 --- a/python/midi.c +++ b/python/midi.c @@ -388,7 +388,7 @@ midi_parse (unsigned char **midi,unsigned char *midi_end) format = get_number (midi, *midi + 2, 2); tracks = get_number (midi, *midi + 2, 2); - if (tracks > 32) + if (tracks > 256) return midi_error (__FUNCTION__, ": too many tracks: ", compat_itoa (tracks)); division = get_number (midi, *midi + 2, 2) * 4; -- 1.7.1