At the Sounding Edge: Introducing seq24
The Performance editor (Figure 4) also is easy to use. Right-click and hold to bring up the pencil edit cursor, and left-click while holding to enter or delete a pattern. Concurrent patterns are allowed, and patterns can be added or removed in real time. Playback is either normal or defined by the loop points. The loop points are moved by selecting one of the L/R markers with the appropriate mouse button—left for L, right for R—and then clicking with the same button at the new location. The loop points also can be edited in real time.
The three buttons in the top-right corner of the editor expand, collapse or expand and copy the material between the L/R markers. They are simple but useful tools for working with larger formal designs and elements of a composition.
Saving your work in seq24 is as uncomplicated as the rest of the program. Select File/Save As, give your work any name you like, with or without any extension (MID is best), click OK and that's it. From that point on, you simply can use File/Save. Reloading your work is equally simple.
seq24's native file format is the Format 1 standard MIDI file format. seq24 also can load a MIDI file and break its individual tracks into sequence containers. This feature is another neat musical extension to seq24's utility, offering new possibilities for material from other sequencing environments.
Despite its evident simplicity, there is more to see in seq24, but the program is easy to learn. Complete documentation is found in a brief text file named SEQ24. Also, starting the program with the --help long help option lists the available command-line options. The tooltips help is well-written and should clarify the interface even for complete beginners.
As a final tease, I leave you with the screenshot in Figure 5 to illustrate seq24 accompanied by some friends and helpers. seq24 manages its MIDI I/O internally (see above), and the synths it drives in the screenshot are all JACK clients. I use QJackCtl's audio connections panel to route the audio data to and from my selected synths and effects processors. In Figure 5, the output ports for QSynth and amSynth are connected to the JACK Rack running a single LADSPA plate reverb plugin. The processed output from the JACK Rack is connected to the ALSA PCM audio output ports. ZAddSubFX has its own effects, so its output is connected directly to the PCM ports.
Thus, I have seq24 driving QSynth, amSynth, ZynAddSubFX and my SBLive's EMU10k1 synth (internal connection), with two of these devices routed through a software reverb unit. If you'd like to hear what this system sounds like you can visit this page for some brief examples in the OGG audio format. They're not complete pieces, but they should give you an idea of what can be done with some of the modern Linux audio and MIDI software now available.
seq24 can be invoked as a JACK transport client, giving it synchronization capability as either a JACK master or slave. Alas, my tests failed, which may be due to my JACK version. JACK sync is a cool feature, so I'll keep checking in on this one. Judging from the tarball's TODO file, other likely additions might include a few more edit functions and some randomization routines.
seq24 is not a complicated program. It has been designed for speed, stability and efficiency. Admittedly, it is short on editing functions and long on usability, but its features are well chosen and musically useful. It's also incredibly addictive fun, as befits any serious musical instrument.
Dave Phillips is a musician, teacher and writer living in Findlay, Ohio. He has been an active member of the Linux Audio community since his first contact with Linux in 1995. He is the author of The Book of Linux Music & Sound, as well as numerous articles in Linux Journal.
Similis sum folio de quo ludunt venti.
|Non-Linux FOSS: libnotify, OS X Style||Jun 18, 2013|
|Containers—Not Virtual Machines—Are the Future Cloud||Jun 17, 2013|
|Lock-Free Multi-Producer Multi-Consumer Queue on Ring Buffer||Jun 12, 2013|
|Weechat, Irssi's Little Brother||Jun 11, 2013|
|One Tail Just Isn't Enough||Jun 07, 2013|
|Introduction to MapReduce with Hadoop on Linux||Jun 05, 2013|
- Containers—Not Virtual Machines—Are the Future Cloud
- Non-Linux FOSS: libnotify, OS X Style
- Linux Systems Administrator
- Validate an E-Mail Address with PHP, the Right Way
- Lock-Free Multi-Producer Multi-Consumer Queue on Ring Buffer
- Senior Perl Developer
- Technical Support Rep
- UX Designer
- Introduction to MapReduce with Hadoop on Linux
- RSS Feeds
Free Webinar: Hadoop
How to Build an Optimal Hadoop Cluster to Store and Maintain Unlimited Amounts of Data Using Microservers
Realizing the promise of Apache® Hadoop® requires the effective deployment of compute, memory, storage and networking to achieve optimal results. With its flexibility and multitude of options, it is easy to over or under provision the server infrastructure, resulting in poor performance and high TCO. Join us for an in depth, technical discussion with industry experts from leading Hadoop and server companies who will provide insights into the key considerations for designing and deploying an optimal Hadoop cluster.
Some of key questions to be discussed are:
- What is the “typical” Hadoop cluster and what should be installed on the different machine types?
- Why should you consider the typical workload patterns when making your hardware decisions?
- Are all microservers created equal for Hadoop deployments?
- How do I plan for expansion if I require more compute, memory, storage or networking?