Table of contents
[Show/Hide]Project: Open Hardware for Digital Audio Workstations
The Problem
Commercial Digital Audio Workstations, such as Pro Tools (TM) offer external hardware (in the form of dedicated DSPs, e.g. Pro Tools HD).
These high-end dedicated boards are not compatible between different DAWs software and have all the usual traits of proprietary lock-in: expensive, forced upgrades, lack of customization. An alternative solution based on Open Hardware can make a huge difference in this space, particularly if through the use of https://en.wikipedia.org/wiki/Virtual Studio Technology|VST plugins] it can be available to both proprietary DAWs and Free Software DAWs such as Ardour.
This project is in a pre-alpha, planning stage. Contact me, if you want to join in.
Updat 2015
Wolfson shield has been discountinued, looking into other alternatives.
- http://tinkersphere.com/teensy-boards/1227-teensy-3-2-newest-version.html
- http://tinkersphere.com/raspberry-pi-accessories/557-raspberry-pi-dac-audio-high-quality-sound-card-module-pcm2704.html
- http://www.arm.com/products/processors/cortex-m/cortex-m4-processor.php
Update 2014
We are looking into a solution using Ardour and the Wolfson shield for the Raspberry Pi: http://www.element14.com/community/community/raspberry-pi/raspberry-pi-accessories/wolfson_pi?CMP=KNC-USA-RPI-ACC-Wolfson
Hardware
So far, it looks we'll focus on
georgepalermo would want a firewire interface, that doesn't seem trivial to embed
- http://www.traquair.com/products/ultracompact/bridgingkit.html
- this [ http://www.embeddedrelated.com/usenet/embedded/show/104223-1.php thread] discusses how firewire is dead and how it is so difficult to embed that it is easier to use a full board with mini PCI and use a firewire mini PCI card.
Meetings
20110306
Present: DrDub, georgepalermo
Difference between TDM version of Pro Tools and LE version. TDM uses dedicated hardware so it off-loads the main CPU from the execution of sound processing plugins. LE uses the computer hardware. Problem: plugins use a lot of memory and introduce lags. 4Gb of RAM is not enough to run 20 plugins.
Some TDMs boards, for example, have 8 in channels, 8 out channels and 128 internal tracks, plus a firewire connection to the main machine that allows the tracks to be written to disk in realtime. The 128 internal tracks are created by applying different filters to the input channels (and further processed tracks). Interestingly, TDMs can do all that with only 1Gb of RAM.
georgepalermo has an 8 channels digitizer, it would be nice if the design can have a detachable digitizer (that'd be tough, though as it outputs through firewire).
DrDub toyed with the idea of a full-fledged system that writes to disk in the system itself, so it can use a slow USB interface just for control and use VST for the interface. Another option is to use ethernet as an alternative to firewire for the transfer. georgepalermo said that many times two channels are enough to be transferred into the computer.
20110307
Impromptu meeting at ##foulab DrDub, f^x, Danukeru
DrDub bounce the idea with the people. A few members of Les Laboratoires Foulab were suggested.
The following hardware platforms for building the open hardware were suggested:
- FPGAs with MCUs for adaptable DSPs.
- Problem: FPGAs have a proprietary toolchain
- Using Pure Data to interface with the box
- Use the JACK protocol over USB
- PSoC (Programmable System-on-a-chip) MCUs
- "PSoC (Programmable System-on-Chip) is a family of integrated circuits made by Cypress Semiconductor. These chips include a CPU and mixed-signal arrays of configurable integrated analog and digital peripherals."
- "PSoC resembles an FPGA in that at power up it must be configured, but this configuration occurs by loading instructions from the built-in Flash memory. Unlike an FPGA, the current generation of PSoC cannot have its digital functions reprogrammed by VHDL or Verilog, it can only be configured with register settings."
- FLOSS support exists
- PSoC Creator underlining is FLOSS
- It contains GCC: http://www.cypress.com/?id=4&rID=42838
- The source code for their toolchain is here: http://www.cypress.com/?id=4&rID=38468
- A GPLv3 dissassembler is available https://code.google.com/p/m8cdis
- The PSOCv5 has an ARM core so it might be fine
- Devkit: http://www.cypress.com/?rID=37464
- Starter devkit: http://www.cypress.com/?rID=43674
- also, at digikey http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=428-3039-ND
- dsPIC, although they don't have Free software toolchain
- "Due to license restrictions, the dsPIC header files and libraries cannot be distributed. You have to install the Microchip distribution under Windows, tar/bzip2 the Microchip installation directory, and then build the nosrc.rpm."