Go Back   Home > Forums > >
Home Forums Rules Articles diyAudio Store Blogs Gallery Wiki Register Donations FAQ Calendar Search Today's Posts Mark Forums Read

PC Based Computer music servers, crossovers, and equalization

Raspberry Pi with Piano2.1 DAC DSP and Volumio2
Raspberry Pi with Piano2.1 DAC DSP and Volumio2
Please consider donating to help us continue to serve you.

Ads on/off / Custom Title / More PMs / More album space / Advanced printing & mass image saving
Reply
 
Thread Tools Search this Thread
Old 29th October 2017, 09:35 AM   #41
hkknudsen is offline hkknudsen
diyAudio Member
 
Join Date: Oct 2009
Quote:
Originally Posted by DonVK View Post
Thanks for the URL, I'll have a look at it. BruteFir2 also has up sampling in the plugin. I typically stay with one sample rate (48KHz) as I move between a PC and the RPI to compare the filters.
Just a bit additional info; it uses brutefir and sox and the usual suspects under the hood, but what I like more and more is the flexibility. If I upload just a 48KHz filter and activate upsampling 48->96 and also 48->192 I can test the sound of 48, 96 and 192 by just selecting the relevant song on the client (so, within seconds), they're all available. If I want to test the difference between 2 filters I can upload both and again switch in seconds. And also the possibility to try the different clients with the same convolving is great. But yea, many options these days
  Reply With Quote
Old 13th January 2018, 09:10 PM   #42
DonVK is offline DonVK  Canada
diyAudio Member
 
DonVK's Avatar
 
Join Date: Jan 2017
Location: Ottawa
Default Sample Allo PWF for TI GDE

@InorganicMatter : These are GDE PWF's for the stereo and sub outputs. Includes the configurations for all the sample rates.
Attached Files
File Type: zip stereo_8x.zip (123.8 KB, 18 views)
File Type: zip stereoSubwoofer_8x.zip (126.2 KB, 11 views)
  Reply With Quote
Old 16th January 2018, 11:55 AM   #43
InorganicMatter is offline InorganicMatter
diyAudio Member
 
Join Date: Nov 2017
Hi DonVK, thank you! I won't have much time to play around this week, but might be posting here for some more help next weekend... Quick question: what is the purpose of the "click remove" block in the subwoofer PWF? Also, what do the different output multipliers (4x, 8x, etc) represent? Finally, in the past you seem to have mentioned a Java app for converting the output files to bin format, is that available still?

Last edited by InorganicMatter; 16th January 2018 at 12:03 PM.
  Reply With Quote
Old 16th January 2018, 01:34 PM   #44
DonVK is offline DonVK  Canada
diyAudio Member
 
DonVK's Avatar
 
Join Date: Jan 2017
Location: Ottawa
The sample files are what Allo gave me. They are very useful because if your tool process is working you should be able to replicate the stock bin files. They also have embedded configurations to allow you to generate the suite of sample rate files for a given design.

I use a java converter to translate TI "cfg" to Allo "bin" files. I like to develop on a single platform and my TI GDE license runs on Windows. The converter is in this thread at Raspberry Pi with Piano2.1 DAC DSP and Volumio2

The 1x,4x,8x output muxes are used to "oversample" outputs. They are referenced to the base sample clock. So if base=44.1KHz, the selecting 8x would update the output interpolation filter at 352.8KHz.

When you are designing low freq filters you need to be careful about how the filter coefficients are represented. You should use extended precision, but it looks like Allo used default precision. At LFs, the coeffs are nearly =1 (ie. 0.99999754) and any rounding error will cause the filter to act like an integrator. So the outputs will slowly saturate (DC shift) and "bounce" against the min/max output causing noise. I think that is why the click block was put in. I have simulated the LP IIR filters with "rounded" coeffs and that is the behaviour I see. When I get a better solution for sub outputs I'll post it.
  Reply With Quote
Old 4th February 2018, 04:43 PM   #45
DonVK is offline DonVK  Canada
diyAudio Member
 
DonVK's Avatar
 
Join Date: Jan 2017
Location: Ottawa
Default Starting software DSP.

I've been primarily using Volumio in stock form. I does everything I need out of the box (supports Piano2.1, connects to my NAS, supports web radio) and its headless and I like it.

However I would like to start adding some DSP processing. Primarily to EQ a speaker (ecasound ?) and to EQ the room (Brutefir ?).

The question is "can I wedge this stuff underneath Volumio". The problem is my Linux knowledge is very limited. Volumio's architecture Technical Overview * Volumio looks like it has mpd, alsa, and sox. So from what I've gleened on other threads its a starting point.
  Reply With Quote
Old 4th February 2018, 04:58 PM   #46
DonVK is offline DonVK  Canada
diyAudio Member
 
DonVK's Avatar
 
Join Date: Jan 2017
Location: Ottawa
Default Remote access to the RPI

I'm going to list steps, as a way of "talking out loud" in order to get help when I stumble.

I need remote network access to the RPI to configure it and transfer files to it without having a keyboard and monitor attached.

It seems Volumio does not enable the SSH server by default. So...

Step#1 On the PC install the free SSH client (BitVise https://www.bitvise.com/) on RPI add an empty SSH file ("/Boot/ssh" ) to wake up the SSH server. Reboot.

Step#2 Lock the RPIs IP address on the router with DHCP reservation. I actually use a wired connection for this because its faster than the pi's wifi.

Step#3 Start BitVise and log into the RPI. It looks like the pic below, you get a Bitvise window, a RPI terminal window, SFTP file browser, and the Volumio page.
Attached Images
File Type: jpg bitvise volumio desktop reduced.jpg (222.4 KB, 211 views)
  Reply With Quote
Old 4th February 2018, 05:17 PM   #47
DonVK is offline DonVK  Canada
diyAudio Member
 
DonVK's Avatar
 
Join Date: Jan 2017
Location: Ottawa
Default Missing system tools

I've already read a number of threads from Charlie Laub, and PhofMan and visited Richard Taylors site Digital Crossover/EQ with Open-Source Software: HOWTO | Richard's Stuff as well as Charlie's site software to know that a few tools are required. So this is what I installed that seems to be required to build the tools from Charlie and Richard. The instructions on those sites are clear but I think they assume you have a fuller featured build like Raspbian.

Step#1 Install compilers and make utility
"sudo apt-get update"
"sudo apt-get install build-essential gcc automake1.9 libtool flex bison gdb"
"sudo apt-get install cmake

Step#2 Install "htop" to monitor cpu core use
"sudo apt-get update && sudo apt-get install htop"

Last edited by DonVK; 4th February 2018 at 05:19 PM. Reason: typo
  Reply With Quote
Old 6th February 2018, 02:56 AM   #48
DonVK is offline DonVK  Canada
diyAudio Member
 
DonVK's Avatar
 
Join Date: Jan 2017
Location: Ottawa
Default Installing the DSP tools and plugins

At this point ecasound and associated plugins need to be installed. I'm assuming the compile tools needed are already installed from previous posts. I don't really know what plugin subset I'll use, so I'll just load a bunch.

Step#1 from RT's site get ALSA, ecasound, etc
Get alsa drivers and utilities
"sudo apt-get install alsa alsa-base alsa-utils alsa-tools libasound2-plugins"

Get ecasound
"sudo apt-get install ecasound"

Get ladspa sdk headers
"sudo apt-get install ladspa-sdk"

Get computer music toolkit
"sudo apt-get install cmt"

Get Steve Harris's plugins
"sudo apt-get install swh-plugins"

Step#2 Get plugins from Richard Taylor's site, I use a PC to download the file "rt-plugins-0.0.6.tar.gz" and bitvise to transfer it to the pi
Extract the files from the tar
"tar -xvf rt-plugins-0.0.6.tar.gz"

Go into the build subdirectory, and compile
"cd rt-plugins-0.0.6"
"cd build"
"cmake .."
"make"

Install the Rtaylor plugins (will auto go into /usr/local/lib/ladspa)
"sudo make install"
Step#3 Get Charlie Laub's LADSPA plugins from his site
Get the tar file (LAUB-LADSPA-PLUGINS-11JUN2016.tar) I used my PC and downloaded it, then transferred to over to the pi with bitvise sftp
, make a directory for the tar, transfer the tar, then

Extract tar using
"tar -xvf LAUB-LADSPA-PLUGINS-11JUN2016.tar"

Compile the plugins, go into each subdirectory (mTAP, OnOffDelay, ACDf_v2.0) and type
"cd LAUB-LADSPA-PLUGINS-11JUN2016
"cd mTAP"
"make -f Makefile
repeat for each subdirectory

Step#4 Check to see what plugins you have, list the plugins. There should be approx 90 of them.
"listplugins"
  Reply With Quote
Old 6th February 2018, 04:46 PM   #49
DonVK is offline DonVK  Canada
diyAudio Member
 
DonVK's Avatar
 
Join Date: Jan 2017
Location: Ottawa
Default Locating plugins + list

Forgot a step in the last post.

The system needs to find the plugins.
"cd /home/volumio"
"nano .profile"

Add this line to the end of the .profile file

export LADSPA_PATH=/usr/local/lib/ladspa:/usr/lib/ladspa

Save and close the file and reboot

And for completeness the list of plugins from "listplugins".
Attached Images
File Type: jpg plugins1.jpg (299.8 KB, 151 views)
File Type: jpg plugins2.jpg (332.4 KB, 146 views)
File Type: jpg plugins3.jpg (162.6 KB, 146 views)
  Reply With Quote
Old 8th February 2018, 04:02 AM   #50
DonVK is offline DonVK  Canada
diyAudio Member
 
DonVK's Avatar
 
Join Date: Jan 2017
Location: Ottawa
Default Checking the soundcard, ecasound, plugins

We should check if things are installed and working at this point.

To see how the Piano2.1 is named use the following. You should see a listing like pic#1.
"aplay -L"
To test the soundcard using a built in test file (says "right-left-right...") use the following. It has l=2 (2 loops) and c=2 (2 channel stereo) and use the test files (-t). Should look like pic#2.
"speaker-test -D plughw:PianoDACPlus,0 -l 2 -c 2 -t wav"
To test ecasound is installed and working using some built in functions ecasound - manned.org . I've included a short sample file that can be placed at /home/volumio or you can use any wav for mp3 file. There are ton of options and this is stripped with only file input (-i and alsa output (-o. Should look like pic#3
"ecasound -i:xylophones.mp3 -o:alsa,plughw:PianoDACPlus"
To hear a difference, that processing is being done. This adds reverb 120ms, with amplification 150%
"ecasound -i:xylophones.mp3 -o:alsa,plughw:PianoDACPlus -etr:120,10,60 -ea:150
This adds reverb 120ms with a pitch shift down of 90%.
"ecasound -i:xylophones.mp3 -o:alsa,plughw:PianoDACPlus -etr:120,10,60 -ei:90"
To test ecasound with a LADSPA plugin. I found this at Ecasound Examples and it produces a metronome. Use [ctrl][c] to stop it.
"ecasound -i:null -o:alsa,plughw:PianoDACPlus -el:sine_fcac,880,1 -eemb:120,10 -efl:2000"
Attached Images
File Type: jpg aplay-L listing.jpg (142.1 KB, 110 views)
File Type: jpg speaker test.jpg (204.5 KB, 6 views)
File Type: jpg ecasound test.jpg (275.7 KB, 9 views)
Attached Files
File Type: zip xylophones.zip (211.3 KB, 1 views)
  Reply With Quote

Reply


Raspberry Pi with Piano2.1 DAC DSP and Volumio2Hide this!Advertise here!
Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
DAC for Raspberry Pi LaxAnErde Digital Line Level 24 26th April 2018 05:58 AM
Tutorial: Raspberry Pi as Music Server, DSP, and Crossover jrubins PC Based 75 6th January 2017 04:28 AM
DSP for the Raspberry Pi usul27 Digital Line Level 39 30th August 2016 07:29 AM
Which DAC for Raspberry Pi? Miller-8 PC Based 14 10th August 2016 03:18 AM
Raspberry Pi DAC Help! pamantea Digital Source 26 8th November 2015 07:50 PM


New To Site? Need Help?

All times are GMT. The time now is 08:47 PM.


Search Engine Optimisation provided by DragonByte SEO (Pro) - vBulletin Mods & Addons Copyright © 2018 DragonByte Technologies Ltd.
Resources saved on this page: MySQL 14.29%
vBulletin Optimisation provided by vB Optimise (Pro) - vBulletin Mods & Addons Copyright © 2018 DragonByte Technologies Ltd.
Copyright ©1999-2018 diyAudio
Wiki