I could consider arranging for a third party to design in the ADV7612 as a 1 or 2 port HDMI (audio only, no hdcp) receiver add-on board. The output from this device supports TDM8 channel so would not take too many resources from the main board.
I've just about finished modifying the EVM schematics. Is there any particular pins anyone would want on any of the audio headers?
I'm heading in this direction.
http://www.lucidchart.com/publicSegments/view/4f193e3c-2c14-409e-9e41-377b0a7c55e2/image.pdf
I'm heading in this direction.
http://www.lucidchart.com/publicSegments/view/4f193e3c-2c14-409e-9e41-377b0a7c55e2/image.pdf
Has anyone come across any GStreamer crossover elements/bins? It strikes me that GStreamer would be an ideal way to create whatever open source cascade/transform you would care to design. You could build a crossover pipeline with a graphical gui (gstedit for a start) if the elements and bins were available. A bit like this DVD playback pipeline..
http://www.cin.ufpe.br/~cinlug/wiki/images/4/43/Gst-editor.png
I may consider writing GStreamer elements for my project that harness the C674x DSP attached to the Cortex-A8.
http://www.cin.ufpe.br/~cinlug/wiki/images/4/43/Gst-editor.png
I may consider writing GStreamer elements for my project that harness the C674x DSP attached to the Cortex-A8.
I have been busy working on a n-channel GStreamer audio sink.
SINK -> 31-band PEQ per channel -> multi way XO per channel -> McASP i2s or DIT PCM. I am developing a node based UI for the XO and i2s configuration so that users can build whatever chain they wish to any number of i2s outputs.
The sink uses a GstAdaptor to fill up buffer 2ms of audio frames to be processed by the DSP. The node tree created by the XO UI is used to build the crossover from the available DSP blocks that I am developing. It will require some work to get the pipeline working properly and latency low.
The 31 band EQ with all bands active currently uses 23MHz DSP (4% utilisation) for a stereo 44.1kHz stream. Quite a bit still to do to optimize the biquad stages and register management.
Hardware schematics and PCB are well under way for the mainboard. I should have something substantial to share later in March.
SINK -> 31-band PEQ per channel -> multi way XO per channel -> McASP i2s or DIT PCM. I am developing a node based UI for the XO and i2s configuration so that users can build whatever chain they wish to any number of i2s outputs.
The sink uses a GstAdaptor to fill up buffer 2ms of audio frames to be processed by the DSP. The node tree created by the XO UI is used to build the crossover from the available DSP blocks that I am developing. It will require some work to get the pipeline working properly and latency low.
The 31 band EQ with all bands active currently uses 23MHz DSP (4% utilisation) for a stereo 44.1kHz stream. Quite a bit still to do to optimize the biquad stages and register management.
Hardware schematics and PCB are well under way for the mainboard. I should have something substantial to share later in March.
Hi SGPU,
I am still watching the thread, not been as active recently as I have been changing jobs, so the last month has been murder, start the new job tommorow!
Keep up the good work.
Marc
I am still watching the thread, not been as active recently as I have been changing jobs, so the last month has been murder, start the new job tommorow!
Keep up the good work.
Marc
Thanks! I have the double precision stereo 31 band PEQ down to 52k cycles (all bands active) for a 1ms buffer (48kHz). Each channel has independent PEQ. The use of "restrict" type in certain areas really brought down the cycle count. I am now trying to shoehorn my PEQ into a DSP accelerated gstreamer element ( https://github.com/felipec/gst-dsp is quite useful ) that outputs directly to McASP from the DSP side.
been watching this since the beginning, very interesting project and a lot of work. cant wait to see it all come together. how are you thinking to package the sale Mobo fully populated and with a minimum audio module and sync package?
In terms of software support I'm creating a layer for Angstrom Distribution with my changes and a few custom recipes. I picked up the TI EVM last week so I can really start work in earnest now.
Amongst my many tasks
- trying to figure out the McASP initialization and setup on the DSP side and how I can switch between i2s and DIT per serializer and also data direction.
- selection of a good 20Mhz system clock.
In terms of hardware the board will be fully populated. I expect to have a breakout board for i2s and SPDIF at the time of release.
Amongst my many tasks
- trying to figure out the McASP initialization and setup on the DSP side and how I can switch between i2s and DIT per serializer and also data direction.
- selection of a good 20Mhz system clock.
In terms of hardware the board will be fully populated. I expect to have a breakout board for i2s and SPDIF at the time of release.
I've been doing some top level planning regarding the gstreamer crossover /dsp setup. See below.
http://www.lucidchart.com/publicSegments/view/4f5a9e77-e7f0-4740-9db3-53d40a7c6148
The crossover editor will be a node based system, similar to what you find in modern 3d rendering/compositor apps. See Soft Image ICE, Blender etc. The node tree data structure and params will be sent to the DSP for processing. It editor could quite easily be web app so you can update your crossovers in your arm chair with and iPad 3 adjusting tweeter delays and phase on the fly.
http://www.lucidchart.com/publicSegments/view/4f5a9e77-e7f0-4740-9db3-53d40a7c6148
The crossover editor will be a node based system, similar to what you find in modern 3d rendering/compositor apps. See Soft Image ICE, Blender etc. The node tree data structure and params will be sent to the DSP for processing. It editor could quite easily be web app so you can update your crossovers in your arm chair with and iPad 3 adjusting tweeter delays and phase on the fly.
I burning the midnight oil doing some sine wave sweeps on my DSP 31-band EQ. I'm not using the traditional biquad DF1/DF2T filters but a modified couple form that gives a flat quantization error. 🙂
Member
Joined 2009
I've been doing some top level planning regarding the gstreamer crossover /dsp setup. See below.
http://www.lucidchart.com/publicSegments/view/4f5a9e77-e7f0-4740-9db3-53d40a7c6148
The crossover editor will be a node based system, similar to what you find in modern 3d rendering/compositor apps. See Soft Image ICE, Blender etc. The node tree data structure and params will be sent to the DSP for processing. It editor could quite easily be web app so you can update your crossovers in your arm chair with and iPad 3 adjusting tweeter delays and phase on the fly.
I love the DSP user interface on the KX-Project. It's extremely intuitive and they make it easy for others to create plug-ins (DSP processing blocks) that you may connect together to realize routing and processing. I think ease of use is the primary goal here as well as the freedom to design custom processing blocks.
Web interface sounds like a really good idea. Or even just having the Editor run on a remote computer.

EDIT: I wrote this without any knowledge of GStreamer. I'm reading about it now.
Last edited:
- Status
- Not open for further replies.
- Home
- Source & Line
- PC Based
- ARM/DSP based open source Hi-Fi