State of the Art: Linux Audio 2008, Part II
Traditional software sound synthesis (SWSS) languages have flourished in Linux, and the platform continues to attract developers of such systems.
Csound enjoys the attentions of a wide community of users and a core development group of very talented programmers. The latest release, Csound 5.08, is a true powerhouse, with an amazing number of synthesis and processing opcodes, integrated GUI widgets, more complete JACK support and many other compelling features. The development of the Csound API has provided a mighty engine for programmers who want to leverage Csound's capabilities into their own software without having to rewrite its routines. Jean-Pierre Lemoine's AVSynthesis, Steven Yi's blue and Rory Walsh's Cabbage Project all depend on the Csound API for their audio processing functions.
Paul Lansky's venerable Cmix enjoyed continued development in the form of Dave Topper's superb RTCmix, but it seems that development has stalled since 2006. RTCmix definitely is worth getting into, and I hope that its development track will pick up again in the near future.
Bill Schottstaedt's Common Lisp Music (CLM) is another SWSS system derived ultimately from Max Mathew's legendary Music V. In fact, Bill recently incorporated Music V into CLM, but that's a trivial task for such a formidable developer. CLM has been in constant evolution for probably as long as Csound, and it enjoys the special attention of its own talented development crew. New releases are frequent and significant, typically adding new synthesis and processing functions along with such amenities as an amazing collection of bird-call synthesis routines and the aforementioned Music V. I also must mention Bill Schottstaedt's Common Music Notation (a Lisp-based music notation language) and his great Snd soundfile editor. All of his software is high quality and consistently maintained, and we are fortunate to have him and his work in the Linux audio camp.
Notable recent SWSS systems include ChucK, SuperCollider3 and the awesome Pure Data (Pd). Their modern characteristics include a more contemporary syntax and support for modern programming techniques, and in some cases, the language includes an integral (but not mandatory) GUI. ChucK and SuperCollider3 do not include integrated graphics primitives, but GUIs have been created for the language or for certain aspects of the language (for example, TAPESTREA, a fascinating tool for composition that requires ChucK's signal analysis and synthesis capabilities).
Pure Data deserves some further remarks. The systems I've mentioned here enjoy wide community support from users and developers, but Pd comes close to being a religion. It is mightily persuasive, with a variety of functions and routines that rival Csound, including a fantastic interface for working with OpenGL via the GEM library. Thanks to its vast resources (and excellent documentation), Pd can be pressed into virtually any audio, MIDI or video service.
In Ye Olden Times, the software found under this rubric would have included only language-based tools, but the scene has changed profoundly. The GUI is now the sound analyst's favored tool, and we can enjoy some wonderful software as a result of this focus on the user interface.
The award-winning CLAM Project continues along its innovative path, thanks to Pau Arumi and the development team at UPF in Barcelona. CLAM is the “C/C++ Library for Audio and Music”, designed for rapid development of sound and music applications. The system includes unique tools and utilities for audio analysis, synthesis and signal processing, complete with graphic controls and displays.
GRAME's FAUST is both a language for real-time audio signal processing and a development environment for DSP programmers writing plugins or complete applications. FAUST is indeed fascinating software, with a strong development team and an excellent collection of tools and utilities. I plan to review FAUST in a future article for the Linux Journal Web site.
Chris Cannam's Sonic Visualiser (Figure 5) is a program for “viewing and analyzing the contents of music audio files”, but that description reveals little about the program itself. The project intends to provide the best audio visualisation software for viewing waveform and spectrographic data representations in forms that can be utilized and comprehended by anyone, not only audio processing professionals. However, Sonic Visualiser is no mere eye-candy maker; it is, indeed, a serious tool for studying music and sound.
Albert Graef's Pure (formerly Q) is not a DSP environment per se, but it is obvious from its examples that audio and MIDI applications are certainly among its major focus points. Additionally, Pure/Q includes some very cool methods for interfacing with the FAUST and Pd audio synthesis and processing environments.
Similis sum folio de quo ludunt venti.
|Speed Up Your Web Site with Varnish||Jun 19, 2013|
|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|
- Speed Up Your Web Site with Varnish
- Containers—Not Virtual Machines—Are the Future Cloud
- Linux Systems Administrator
- Lock-Free Multi-Producer Multi-Consumer Queue on Ring Buffer
- Senior Perl Developer
- Technical Support Rep
- Non-Linux FOSS: libnotify, OS X Style
- UX Designer
- RSS Feeds
- It is quiet helping
32 min 51 sec ago
49 min 55 sec ago
- Reachli - Amplifying your
2 hours 6 min ago
2 hours 55 min ago
- good point!
2 hours 57 min ago
- Varnish works!
3 hours 7 min ago
- Reply to comment | Linux Journal
3 hours 36 min ago
- Reply to comment | Linux Journal
6 hours 2 min ago
- Reply to comment | Linux Journal
10 hours 2 min ago
- Yeah, user namespaces are
11 hours 18 min ago
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?