Ims

 

  idea
 
  examples
 
  programming
 
  download
   
  plans
 
  links
 
  author

 

   

 

 

 

 

 

 

 




 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 
   

 

                                                ...just SuRf it!
                           

Windows and AUDIO           

Efficientely streaming audio data in Microsoft Windows environment is anything but easy. To obtain latency of 10 miliseconds or less, kernel-streaming must be used. ASIO is a commercial kernel-streaming standard for audio hardware introduced by Steinberg in 1996.

   
  • Microsoft Kernel Streaming - brief explanation from Microsoft archives
  • ASIO 2.0 - explanation and review from Harmony Central
  • ASIO 2.0 SDK - documentation by Steinberg
  • Asio2ks - generic ASIO driver for WDM-compatible soundcards
  • Asio4all - generic ASIO driver for WDM-compatible soundcards
  • KX Project - opensource ASIO driver for all EMU10K1/10K2-based soundcards (SB live, audigy,...) It works great!!!

 

   

 

Windows and MIDI

MIDI data is much easier to stream between applications, however sometimes 'virtual midi drivers' have to be installed on the system in order to be able to connect different MIDI applications on a single computer. 

   
  • Hubi's Loopback driver  - virtual midi drivers for Win9x
  • MidiOX  - virtual midi drivers for WinNT/2K/XP
  • MaxMSP - graphical development environment for MIDI (distributed by Cycling74)
  • Pure Data - graphical development environment for MIDI (opensource, written by Miller Puckette)

 

   

 

Windows Monitoring Utilities

Sometimes we need to know what is really happening in there...

   

 

   

 

Virtual Instruments

Virtual instrument is any sound generating module that is able to perform in real-time meaning that 'off-line processing' is not needed for non-interupted continuous operation. Latency of the whole system, however, is strictly dependent on the driver architecture and its implementation in the kernel. Latency of 10 miliseconds or less is preferred for smooth musical experience.

   
  • KVR-audio - the best information resource site, all free and commercial audio plugins are reviewed here
  • Reason - full set of virtual instruments with an integrated midi sequencer.. simple and intuitive
  • GrooveAgent - Drum machine, very well suited for all standard drumming styles
  • Stylus RMX - Drum machine, for modern styles and more 'experimental-oriented'

 

   

 

Linux Audio Support

ALSA project provides audio/midi driver architecture that allows efficient low level streaming of audio data for desktop Linux users. Lots of commercial soundcards are already fully supported.

   
  • ALSA - Most commonly used 'audio/midi framework' in desktop Linux
  • LADSPA - Audio plugin API (like VST in Windows)
  • JACK - Audio server (just like 'virtual driver' in Windows; such as 'Propellerhead Rewire' or 'Microsoft sound mapper(wdmaud.drv)' for example)

 

   

 

Other, non-desktop operating systems

Embedded systems, designed to be running on a dedicated hardware or big distributed mainframe systems, it all requires a well structured OS that assures stable and fast runtime environment. Music systems such as those found in midi keyboards and sequencers can be furtherly extended into clusters of computers working parallely over LAN. Predicting the chords, guessing the emotion, shaping the sounds... 

   
  • Unix - developed by "Bell Labs", is commonly used as a basis for many other operating systems
  • Irix - 'Unix with BSD extensions' developed by Silicon Graphics
  • Solaris - OS distributed by Sun Microsystems (based on SunOS, commercial variant of Unix )
  • Windows Embedded - Microsoft finally gives the possibility to build the kernel with "all" the control of the internal components. They seem to be looking for new hardware targets such as PDA devices, entertainment electronics, ..
   

 

  Please, report dead links here!