About the Mod: Part One
Fortunately the situation is not an either/or scenario. Programmer Guy Thornley has written a useful little program called GMid2Mod that converts a standard MIDI file (preferably with a General MIDI patch map) to an XM format module, employing the default Gravis Ultrasound samples used by the TiMidity MIDI player. Using GMid2Mod I converted a four-channel MIDI file (with four GM instruments) to an XM-format mod. I used the MikMod player to convert the module to a CD-quality (44.1KHz, 16-bit) stereo WAV file, and I then used BladeEnc MP3 encoder to convert the WAV to an MP3 file with a bitrate of 128KBps.
As the following comparison of the file sizes indicates, it makes better sense for the composer of mods to distribute works in the original module format:
Interlude.mid 34KB Interlude.xm 737KB Interlude.wav 28MB Interlude.mp3 2.5MB
Another advantage shared by MIDI and mod files (over the WAV and MP3 formats) is the ease with which they can be studied, viewed and/or rearranged in compatible composition software. For example an XM module can be loaded into any tracker with XM support, just as a standard MIDI file can be loaded into any MIDI sequencer that supports the Standard MIDI File format. Compositions and performances in the WAV and MP3 formats are not easily rearranged or dismantled into their constituent instruments.
Incidentally, if you want to head in the other direction, Kokai Istvan has written Xm2Mid, a utility for converting XM-format mods to standard MIDI files with a GM patch layout. It works best if your module is arranged using an instrument set identical to the GM patch map.
As of August 2000 I counted 13 trackers listed on the Linux Sound & Music Applications site. Which one(s) you prefer to try will depend on your available resources, particularly your graphics capabilities, as well as your interest in developing a tracker. For X users, Michael Krause's SoundTracker (see Figure 1) is designed with an excellent GTK interface graphics, while Cedric Roux's powerful Xsoundtrack (see Figure 2) uses common Xlib graphics. Jason Nunn's FunktrackerGOLD (see Figure 3) is an excellent console-based tracker requiring only the ncurses library for its graphics.
Those three trackers have been developed to a stable and usable status. Other Linux trackers include the Sarah Tracker, Stupid Tracker [sic], and ocsatracker for the Linux console and the Industrial Tracker, the Rapid Audio Tracker, and Insotracker for X displays. All of this software is in various stages of development.
Tracker-style interfaces also appear in music software that does not create modules. Juan Linietsky's unique Shake Tracker (see Figure 4) combines the module tracking interface with MIDI output. If your soundcard includes a hardware synthesizer with SoundFont (sf2) support you can use its sound banks directly. Shake Tracker has just begun its development course, but it is already usable, and the author welcomes feedback and suggestions from users.
Tim Janik and Olaf Hoehmann have created the BEAST/BSE system which is an ambitious project that combines an audio synthesis network with a tracker's composition interface (see Figure 5). Currently, files are saved in the BSE format and are not compatible with mod trackers and players. Like Shake Tracker, BEAST/BSE is in early development, but it works and is already quite impressive.
David O'Toole's GNU-OCTAL project plans to be the Linux equivalent of the Buzz tracker for Windows. Buzz differs from other trackers because it includes generators for sound synthesis, thus eliminating the need for a separate sample library. GNU-OCTAL is similarly designed, and although still in early development, the project is definitely worth watching (or joining: remember, this is Linux, where you too can get involved in the exciting world of audio software development!).
Similis sum folio de quo ludunt venti.
|Designing Electronics with Linux||May 22, 2013|
|Dynamic DNS—an Object Lesson in Problem Solving||May 21, 2013|
|Using Salt Stack and Vagrant for Drupal Development||May 20, 2013|
|Making Linux and Android Get Along (It's Not as Hard as It Sounds)||May 16, 2013|
|Drupal Is a Framework: Why Everyone Needs to Understand This||May 15, 2013|
|Home, My Backup Data Center||May 13, 2013|
- Designing Electronics with Linux
- Making Linux and Android Get Along (It's Not as Hard as It Sounds)
- Dynamic DNS—an Object Lesson in Problem Solving
- Using Salt Stack and Vagrant for Drupal Development
- New Products
- What's the tweeting protocol?
- A Topic for Discussion - Open Source Feature-Richness?
- Home, My Backup Data Center
- Dart: a New Web Programming Experience
- Drupal Is a Framework: Why Everyone Needs to Understand This
1 hour 31 min ago
- Kernel Problem
11 hours 34 min ago
- BASH script to log IPs on public web server
16 hours 1 min ago
19 hours 36 min ago
- Reply to comment | Linux Journal
20 hours 9 min ago
- All the articles you talked
22 hours 32 min ago
- All the articles you talked
22 hours 36 min ago
- All the articles you talked
22 hours 37 min ago
1 day 3 hours ago
- Keeping track of IP address
1 day 4 hours ago
Enter to Win an Adafruit Pi Cobbler Breakout Kit for Raspberry Pi
It's Raspberry Pi month at Linux Journal. Each week in May, Adafruit will be giving away a Pi-related prize to a lucky, randomly drawn LJ reader. Winners will be announced weekly.
Fill out the fields below to enter to win this week's prize-- a Pi Cobbler Breakout Kit for Raspberry Pi.
Congratulations to our winners so far:
- 5-8-13, Pi Starter Pack: Jack Davis
- 5-15-13, Pi Model B 512MB RAM: Patrick Dunn
- 5-21-13, Prototyping Pi Plate Kit: Philip Kirby
- Next winner announced on 5-27-13!
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?