Hawkboard, Getting started

I think the Hawkboard will serve us well in processing audio signals and streams. My main goal is to get enough done to prove the usability and concept to the audio community. To reach that goal there are a some things that need investigation and possibly development. Further on, my aim is to be able to do simple and advanced signal processing more accessible for end users.

Some of the items that needs to be covered
  1. Get the board running on some standard distribution which can be modified and recompiled if needed
  2. Get some DSP stuff running, examples and so on
  3. Figure out how to code DSP stuff that can be utilized from ARM
  4. Make some very realistic but hard(mathematically hard for fixed point) filters to show off power of floating point DSP
  5. Spread the word
  6. Design some generic path way for audio processing that will fit 80% of applications
    At the moment I'm thinking input-->12ch mixer --> 12 FIRx4096 -->12ch mixer -->12 IIR -->12ch mixer -->output
  7. Implement 6 in a couple of different ways
    A) Utilize Gstreamer pipes
    B) Figure out a way to make a ALSA-driver for the audio-codec that has a pipe going to DSP
    C) Run a DSP only implementation including input and output for low latency (coupled with purepath hardware from TI?)
  8. In parallell with 7 investigate alternative input and output possibilities
    A) HDMI, in and out
    B) SPDIF, in and out
    C) I2S, multiple channels and instances, in (and out)
    D) USB audio 2.0
  9. Start some GUI application for at least mixer instances and build from it, perhaps utilize GPIO to allow switching between presets
  10. Build on GUI to allow import of FIR and IIR coefficents from external source
  11. Start thinking on if we can run some analysis in ARM to calculate filter coefficients (Octave seems logical).
At the moment I'm fully focused on 1-3 and hope to get to 4 and 5 before end of September

There are endless of nice things we can do with DSP in and around audio.

To name a few possible and exciting opportunities:
  • Head related transfer function for headphone applications
  • Bass management in closed environments / Digital Room Correction
  • Linearization of drivers
  • Driver cross over application

My hopes are to excite the audio-community by proving the concept and start a snowball. In audio distortion and noise are everything, so my first obvious goal is to prove that the platform is capable of delivering high end signal processing.

No comments:

Post a Comment