-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 25.01.2014 15:31, raf wrote: >> This composition compiler should ideally support JACK, with stuff >> like transport control. It should be able to support optional >> hardware synths, which will be controlled via MIDI messages and >> mixed back into the full result via an input JACK port. >> >> I am aware of the KISS principle and actually love it very much. >> So if anyone has suggestions on how to implement such a >> workflow/tool with existing tools and plumbing code, I am very >> open to ideas and suggestions. However, I get a feeling that >> what I want is only convenient if relatively tightly integrated, >> so that I do not have to tinker with too many individual tools >> while trying to be productive. >> I don't see the original message on this list, so I'll just reply to this one. You might have seen my recent post about the ongoing development of teqqer (a console based tracker style midi/cv sequencer). It is based on a simple library called teq [1] which provides a pattern/tracker based abstraction for playing midi/cv events over jack ports. The simplest (somewhat complete) program to generate a loop of notes would be something like this: import teq from pyteq import * t = teq.teq() # start pattern/tick, end pattern/tick set_loop_range(t, 0, 0, 1, 0, True) t.insert_midi_track("foo", 0) # create a pattern p = t.create_pattern(16) # fill it with notes for n in range(0, 16): "...") # track, tick, event p.set_midi_event(0, n, teq.midi_event(teq.midi_event_type.ON, 60, 64)) # insert pattern at position 0 t.insert_pattern(0, p) # some cleanup (call regularly to collect garbage after editing operations) t.gc() # ticks per second t.set_global_tempo(4) # pattern, tick set_transport_position(t, 0, 0) # ... play(t) # wait for the user to press enter try: i = input("Press Enter to continue...") except: pass t.deactivate() It is still not feature complete (alpha stage, though teq is more complete than teqqer). jack_transport is definitely on the TODO list. And I also ponder implementing basic sampler functionality. So maybe it interests you.. [1] https://github.com/fps/teq -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.14 (GNU/Linux) Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/ iQEcBAEBAgAGBQJS4+CYAAoJEA5f4Coltk8ZJ70IAJX58Jh5dIEK/rchWJI/tyzn WcxBHmQq3yg1pCRcV88wn9sgwPkkEKibWvZbAqyfxJ1gHRb6gbbE5plQnV/tAc+C UbYL4CJS6c3kthyQnnzUc6/YelLTM1/24wEHwJvP3x0ovlHCZp9sfOigStkQog4U vavlNcOPurV1oVzmxPytnNvvvaz42DT0WaT5V+xUT0bIDZ+OC31ZSKkrOaYS0pmP h/CW9AV0AMGrNHTOCX5nVJ6eZtCLhx3KK6o/FYygcu2IiMRYqDxEEozzQaPe/uqX 9cL81hyZ+h5QcPHJlrbyfnZ64q6I4reYv+7DF54sRJWYh8ScPks6BuMuugmL0xs= =jL+F -----END PGP SIGNATURE----- _______________________________________________ Linux-audio-user mailing list Linux-audio-user@xxxxxxxxxxxxxxxxxxxx http://lists.linuxaudio.org/listinfo/linux-audio-user