DSP Consulting
S Systems, Inc. is an established digital signal processing
consulting firm
specializing in software, especially hand-coded assembler for DSP chips, mostly in the
audio and music industries. As a consultant,
John Strawn (the founder of S Systems, Inc.) has been involved
in the following projects.
You can
view the rest of Dr. Strawn's resume
online
or
download Dr. Strawn's resume as an Adobe Acrobat .pdf file which contains this list.
| From: |
2007 |
Client: undisclosed |
| To: |
present |
Location: Asia |
| |
Duties: |
For this (repeat) client review literature and prepare report summarizing the state of the art in commercial and academic visualization of acoustic data.
|
| From: |
2007 |
Client: undisclosed |
| To: |
present |
Location: southern California |
| |
Duties: |
For this (repeat) client implement, in C, with the help of a filter design subcontractor, a novel algorithm for sound processing.
|
| From: |
2007 |
Client: undisclosed |
| To: |
2007 |
Location: Asia |
| |
Duties: |
Review literature on auditory stream separation, computational auditory stream analysis, voice activation decision, and Wiener filters. Using publicly available Matlab code for Wiener filters (Ephraim/Malah) as a basis, implement Davis et al's voice activation decision in Matlab, delivering a speech enhancement system to the client.
|
| From: |
2007 |
Client: undisclosed |
| To: |
2008 |
Location: San Francisco Bay area |
| |
Duties: |
For this startup just leaving stealth mode, advice on licensing and implementing audio algorithms; assist in integrating audio into product.
|
| From: |
2006 |
Client: undisclosed |
| To: |
2007 |
Location: Bay Area, CA |
| |
Duties: |
For a well-known provider of audio software, provide and supervise a subcontractor to port a complicated digital signal processing algorithm into the Digidesign TDM Environment, in Motorola 56K assembler.
|
|
From: |
1995 |
Client: Yamaha |
|
To: |
2007 |
Location: Hamamatsu, Japan |
| |
Duties: |
Chair, AES standards working group SC-02-12 (formerly called SC-06-02) on digital audio via IEEE-1394 (Firewire), with the support of Yamaha. Involves a trip to AES conventions twice a year, including one in Europe. Past member, IEC TC100 TA4, Digital System Interfaces. Various public appearances, for example at AES local chapter meetings, and various company site visits, on behalf of Yamaha to discuss audio over 1394 and Yamaha's mLAN.
|
| From: |
2006 |
Client: undisclosed |
| To: |
2007 |
Location: East Coast, USA |
| |
Duties: |
For a well-known provider of audio software, provide and supervise a subcontractor to port a complicated digital signal processing algorithm into the Digidesign TDM Environment, in Motorola 56K assembler.
|
| From: |
2005 |
Client: Sonic Network |
| To: |
2006 |
Location: Somerville, MA |
| |
Duties: |
For this well-known provider of wavetables, synthesis software, and ring tones (among others), provide and supervise subcontractors for these projects:
- Design and implementation of filters for sample rate conversion;
- Design and implementation of filters following the DLS-2 specification;
- Port synthesizer code to Tensilica HiFi2 audio engine.
|
| From: |
2004 |
Client: Bias |
| To: |
2006 |
Location: Petaluma, CA |
| |
Duties: |
For this well-known provider of audio software, provide and supervise a subcontractor to port a complicated digital signal processing algorithm into the Digidesign TDM Environment, in Motorola 56K assembler.
|
| From: |
2005 |
Client: Audio Research Labs |
| To: |
2005 |
Location: Scotch Plains, NJ |
| |
Duties: |
For ARL founder Schuyler Quackenbush provide and supervise a subcontractor to design and implement a digital filter algorithm in Motorola 56K assembler.
|
| From: |
2004 |
Client: Verance |
| To: |
2005 |
Location: San Diego, CA |
| |
Duties: |
Working closely with Verance R&D staff,
implement the
Verance Content Management System/Audio-Visual (VCMS/AV)
watermarking technology for motion picture sound
in
Motorola 56300 assembler in the TC Electronics M6000 environment. In
use in
major film studios
starting early 2005. Travel at client's
request to TC Electronics headquarters in Denmark to facilitate
integration. Provide and supervise a subcontractor to assist with
filter design, filter implementation, and other tasks. More than
30,000+ lines of 56K assembler source, several hundred pages of
documentation, a dozen CD-ROMs of debugging data and lab notebooks.
|
|
From: |
2002 |
Client: Universal Audio |
|
To: |
2004 |
Location: Santa Cruz, CA |
| |
Duties: |
For this well-known manufacturer of audio plugins, port two audio processing algorithms (Pultec filter, LN1176 stereo compressor) from C/C++ to Motorola 563xx assembler in the DigiDesign ProTools TDM environment, including numerical approximation and streamlining the original C/C++ implementation. Publicly released 2004. Contribute extensively also to port of an extremely complicated high-end reverberator, and to another equalizer. |
|
From: |
2003 |
Client: undisclosed |
|
To: |
2004 |
Location: Bay Area, CA |
| |
Duties: |
For another well-known manufacturer of audio plugins, extensive contributions to the TDM port of a multi-band, multi-channel compressor. |
|
From: |
2003 |
Client: Stretch |
|
To: |
2004 |
Location: Mountain View, CA |
| |
Duties: |
For this software configurable processor startup, study how to port MPEG-2 AAC and MP-3 decode reference C++ code to 16- and 32-bit integerized C.
Do the same for MP-3 encode based on publicly available source.
Learn their software configurable architecture well enough to write optimizations. |
|
From: |
2003 |
Client: RIC International Precision Translation Services |
|
To: |
2003 |
Location: Cambridge, MA |
| |
Duties: |
For this major translation house, proofread German-English translations involving, among other things, audio compression (including German-language doctoral dissertations). |
|
From: |
2003 |
Client: Analog Devices |
|
To: |
2003 |
Location: Santa Clara, CA (Audio Rendering Technology Center) |
| |
Duties: |
Port music synthesis algorithms to ARM7TDMI assembler, following ARM’s C calling conventions. This project ran under very tight time constraints, cost only 2/3 of the projected budget, and resulted in code that runs much faster than the original implementation. |
|
From: |
2002 |
Client: Dorrough Electronics |
|
To: |
2003 |
Location: Chatsworth, CA |
| |
Duties: |
Implement in C and Analog Devices Sharc 21161 assembler a novel scheme based on their patented technology to improve the perceived loudness of audio signals sent over broadcast. Provide a subcontractor who made significant contributions to filter design |
|
From: |
2002 |
Client: undisclosed |
|
To: |
2003 |
Location: Santa Cruz, CA |
| |
Duties: |
For a major manufacturer of telecommunications hardware, help create a development environment using Texas Instruments’ C54XX, Code Composer Studio, and Reference Framework 3. |
|
From: |
2002 |
Client: undisclosed |
|
To: |
2002 |
Location: Japan |
| |
Duties: |
For an Asian manufacturer of audio chips, assemble, manage, and contribute technically to a group of US consultants to specify and help design an audio-related chip used in broadcast applications. Establish contact between the Asian client and stateside holders of appropriate licensable technology. |
|
From: |
2002 |
Client: Analog Devices |
|
To: |
2002 |
Location: Wilmington, MA (Ray Stata Technology Center) |
| |
Duties: |
After an on-site visit to learn more about the technology and meet the team, I made recommendations on changes to architecture for a new version of an idiosyncratic signal processing chip. I also provided code examples for the new architecture. |
|
From: |
2001 |
Client: undisclosed |
|
To: |
2002 |
Location: Silicon Valley, CA |
| |
Duties: |
For a configurable processor manufacturer in Silicon Valley, implement a highly optimized version of the modified discrete cosine transform (MDCT) for audio compression. Extensive investigation of theory and variants of the MDCT. Also port MPEG-2 low-complexity AAC decode and MP3 encode from Fraunhofer/Thomson reference C++ code to 16-bit integerized C. Prepare various optimizations closer to the hardware than C++ usually allows. |
|
From: |
2001 |
Client: undisclosed |
|
To: |
2002 |
Location: Europe |
| |
Duties: |
For this developer of a custom processor based on ARM, investigate licensing of and make recommendations for porting AC-3, DTS, Dolby ProLogic. |
|
From: |
1999 |
Client:
Berkeley Design Technology, Inc. |
|
To: |
2001 |
Location: Oakland, CA |
| |
Duties: |
- For BDTI’s Buyer's Guide to DSP Processors, 2001 Edition, contribute major portions of the text analyzing the Analog Devices TigerSharc, and contribute also to the analyses of Motorola 56300, 56800, and 56800E, including verification and in some cases re-writing assembly-language implementations of BDTI's benchmarks;
- Prepare written analyses of Hitachi SH-DSP, SH3-DSP, SH-4, and SH-5 architectures. This again included verification and in some cases re-writing assembly-language implementations of BDTI's benchmarks;
- Implement assembly-language routines related to multimedia compression in ARM7/ARM9 assembler;
- Develop and present a four-hour presentation on audio compression, given first at Embedded Processor Forum, June, 2000; contribute to a four-hour presentation on digital audio and music given by Dana Massie at the same Embedded Processor Forum; revised and presented both talks at Microprocessor Forum, October 2000; both talks revised again with emphasis on streaming audio and presented at Embedded Processor Forum, June, 2001.
|
|
From: |
1995 - 1996 |
Client: Audio Precision |
|
And |
1998 - 1999 |
Location: Portland, Oregon |
| |
Duties: |
For their System 2 audio measurement device, developed double-precision FFT in assembler for Motorola 56002, including (Microsoft) C code to study where to maintain double-precision. Also, extensive code for AES/EBU and square wave measurement test suite, including jitter and eye pattern (assembling bit map for display in 56002 data memory space). 28K+ lines of assembler source. 1998-1999: Revise Audio Precision System 2 code for new 96 kHz Cascade hardware (Motorola 56303). |
|
From: |
1997 |
Client: Euphonics (later part of 3COM) |
|
To: |
1999 |
Location: Boulder, CO |
| |
Duties: |
Implement Dolby AC-3 decoder in 16-bit integer assembler on new Analog Devices 16-bit integer AD1818 (PCI SoundComm). 20K+ lines of assembler source. Passed first round of Dolby testing on first try. Integrate with Euphonics’ Real-Time Kernel. |
|
From: |
1998 |
Client: undisclosed |
|
To: |
1999 |
Location: Silicon Valley, CA |
| |
Duties: |
Assist a startup specializing in real-time music software in its attempts to be acquired. Included introducing company staff to personal contacts in various music companies, and participating in various meetings. |
|
From: |
1998 |
Client: undisclosed |
|
To: |
1998 |
Location: Silicon Valley, CA, and southern CA |
| |
Duties: |
For a major chip manufacturer, I served as the sole outside member of the due diligence technical team evaluating a small but well-known synthesizer company ultimately acquired by the chip manufacturer. After visiting the synthesizer company's office with a team from my client, I provided a detailed written report on software, music synthesis chip architecture, and various management questions. |
|
From: |
1996 |
Client: Digital Technics (DTI) |
|
To: |
1997 |
Location: Baltimore, MD. |
| |
Duties: |
Implementation of CCITT R2 telephony encoder/decoder (similar to DTMF) in Motorola 56002 assembler, based on Goertzel algorithm. 13K+ lines assembler. Deployed in the field in Asia and South America. |
From: |
1996 |
Client: VM Labs |
To: |
1996 |
Location: Los Altos, CA |
| |
Duties: |
For this multimedia chip startup, provide detailed comments on a proprietary DSP chip architecture. |
From: |
1994 |
Client: undisclosed |
To: |
1995 |
Location: Asia |
| |
Duties: |
For a major manufacturer of audio hardware, commissioned to write a study of audio over networks. Investigate and deliver a 40 page report touching on MIDI, ZIPI, 1394, PCMCIA, Ethernet, ATM, Lone Wolf, USB, and others. |
|
From: |
1993 |
Client: Oculix |
|
To: |
1995 |
Location: Switzerland |
| |
Duties: |
Motorola DSP 56000 assembler for numerical and FFT analysis of real-time data gathered by laser from the human eye. 150K source. |
|
From: |
1993 |
Client: Centigram Communications Corporation. |
|
To: |
1994 |
Location: Silicon Valley CA (now part of SS8 Networks) |
| |
Duties: |
Port of speech synthesis code from TI TMS320E17 assembler to Motorola DSP 56002 assembler on Motorola PC Media card; port to Analog Devices ADSP 2115 assembler on Echo Personal Sound System. |
|
From: |
1993 |
Client: Atari |
|
To: |
1994 |
Location: Sunnyvale, CA |
| |
Duties: |
implement physical modeling music synthesis techniques on custom RISC/DSP chip inside Jaguar. Prepare written comments on a new custom DSP architecture. |
|
From: |
1993 |
Client: undisclosed |
|
To: |
1993 |
Location: New England |
| |
Duties: |
For a US audio manufacturer, write audio recording, storage, and playback functions in assembler for Analog Devices ADSP 2105. Farmed out DAC/ADC device drivers to subcontractor. Also farmed out front-panel code on Philips/Signetics 80C51 family of controllers to different subcontractor. |
|
From: |
1993 |
Client: Euphonics |
|
To: |
1993 |
Location: Boulder, CO |
| |
Duties: |
For this software music synthesizer company, write C routines to emulate certain hardware elements in the target system. This allowed the company to study aspects of caching parameter updates, for optimizing real-time performance. |
|
From: |
1993 |
Client: undisclosed |
|
To: |
1993 |
Location: Bay Area, CA |
| |
Duties: |
For a research project involving DSP architecture, write a series of Java classes to emulate the typical components of a DSP chip. |
|
From: |
1987 |
Client: Shure |
|
To: |
1988 |
Location: Evanston (now Niles), IL |
| |
Duties: |
Working from the written specification for a proprietary algorithm, develop C and TI TMS 32010 assembler for a multi-channel consumer audio product prototype. |
|
From: |
1987 |
Client: NeXT, Inc. |
|
To: |
1988 |
Location: Silicon Valley, CA |
| |
Duties: |
Developed, debugged, and documented more than 50 routines in the Motorola DSP 56000 assembler vector library (with Julius O. Smith; source 2" thick.). While working off-site for over a year before NeXT was publicly released, maintain secrecy about the fact that NeXT would include a 56000 processor. |
|
From: |
1986 or 1987 |
Client: Sonic Solutions |
|
To: |
1986 or 1987 |
Location: San Francisco CA |
| |
Duties: |
As one of the first consultants hired by Sonic Solutions (located in their first office in San Francisco), port their C noise-reduction code from one flavor of Unix to another. |
Other experience:
- Studies of micromachining and nanotechnology.
- Experience with the Star Semiconductor SPROC chip, the IBM MWAVE chip and operating system, OS-9, and Spectron's SPOX operating system.
For more information on my background, see my on-line resume. If you would like more information about
how I can help you with DSP consulting,
contact (Dr.) John Strawn.
|