subject: Dsp Software Development Using Linux [print this page] Digital signal processing (DSP) enables to manipulate signals converted from analog voltages and currents into digital form -- i.e., as numbers. This article deals with the web software development of DSP speech coding algorithms.
Linux is chosen over Windows as it provides ammunition to prove their business capabilities. This was proved by developing software for the next generation of digital radio products in the headquarters of the world's largest private mobile radio manufacturer.
Difficulties faced were:
Interoperability issues
Resource sharing
Accessibility
Documentation
The non-availability of some crucial software for Linux
Project Life Cycle
The steps followed by any normal project cycle are:
1. Research
2. Prototyping
3. Complex coding route
4. Testing stages
Finally, fully documented software package is passed to system integrators.
For the project on advanced speech processing web software development for fixed-point DSP, the topmost requirement was audio capabilities. In addition to these good mathematical processing, visualization software and a set of code-development tools were also needed. DSP-specific software was also required.
Research
Processing and evaluating the changes by listening to the recorded speech
OSS drivers and a sound card solves the problem of sound out put in Linux
Sound is generated by copying the sound data file, in Sun's 8-bit logarithmic format, to /dev/audio
The command that outputs sound is:
cp audiofile.au /dev/audio
SOund eXchange (sox) provides Sun format audio. The command to convert a .wav file into a Sun format .au file is:
sox audiofile.wav -t ul -r 8000 audiofile.au
The software GPLRlab allows addition of user functions. With this data can be imported/exported, processed and displayed graphically.
An ideal platform for speech algorithm research, with the ability to listen to audio, make modifications and build up a library of speech processing routines to use in current and future investigations is obtained.
Prototyping
The conversion of Rlab to DSP code involves three steps:
Rlab script to C
Replicating Rlab functions with C functions
Producing executable Rlab code
Single-stepping the code with gdb compares C and the Rlab script.
Replacing floating-point variables and functions
Knowing values and the effect of truncation of each data variable.
Emergence of a C program without any floating-point variables.
Importing array data to Rlab.
One trick is to write a C function that, when passed an array, prints the array formatted so that it can be selected and pasted into Rlabcode such as: