ps if I run command
camilladsp --version
in ssh I get an error, Camilla seems not to be running
thanks
camilladsp --version
in ssh I get an error, Camilla seems not to be running
thanks
Please launch camilladsp with the full path. Otherwise (better), copy the camilladsp executable file under /usr/local/bin.
thanks - tried moving it to that path and no joy, also the file disappears from that folder on rebooting the system!
In piCorePlayer you must force the backup of any change you make to the file system by giving the command:the file disappears from that folder on rebooting the system!
pcp bu
You should first try launching camilladsp by hand in order to check that the installation is correct. And to this end, you must first create a valid configuration file.tried moving it to that path and no joy
If camilladsp starts with no errors, then you can try starting it automatically at boot by creating a service.
I'm afraid I confused Jesper's SuperPlayer with Henrik's classic CamillaDSP.
For the SuperPlayer and CamillaGUI you need to add the following lines the file /mnt/mmcblk0p2/tce/onboot.lst to load the required modules on boot (python alsa version):
camilladsp-1.0.1.tcz
camillagui-v1.0.0.tcz
superplayer-samplerate-v8.0.0.tcz
SuperPlayer-GameChanger.tcz
Then the SuperPlayer and CamillaGUI are launched automatically on boot by adding the following lines to /opt/bootlocal.sh (python alsa version):
sudo SuperPlayer-GameChanger alsa-cdsp > /dev/null 2>&1
camillagui > /dev/null 2>&1 &
Please make sure you have edited those files correctly and saved the changes with the "pcp bu" command.
I confirm that by precisely following Jesper's instructions on github, everything works as expected.
For the SuperPlayer and CamillaGUI you need to add the following lines the file /mnt/mmcblk0p2/tce/onboot.lst to load the required modules on boot (python alsa version):
camilladsp-1.0.1.tcz
camillagui-v1.0.0.tcz
superplayer-samplerate-v8.0.0.tcz
SuperPlayer-GameChanger.tcz
Then the SuperPlayer and CamillaGUI are launched automatically on boot by adding the following lines to /opt/bootlocal.sh (python alsa version):
sudo SuperPlayer-GameChanger alsa-cdsp > /dev/null 2>&1
camillagui > /dev/null 2>&1 &
Please make sure you have edited those files correctly and saved the changes with the "pcp bu" command.
I confirm that by precisely following Jesper's instructions on github, everything works as expected.
Hi all...
I'm sorry that I cannot contribute more on this right now, having vecation and not actually using my own player at the moment 🙂
Well that said, the SuperPlayer was never intended to run on the 64bit dist. (I know someone here tried it allready)
The SuperPlayer is based on PicorePlayer, witch again is based on TinyCore Linux...
A lot of thing's are working, but using the GUI and saving some .yml files there does not actually save them for next reboot, because thing's aren't automatically saved.
I can only encourage you all to read about the TinyCore Linux http://tinycorelinux.net/
All my script's and .tcz files on github can be backengineered also. It's possible to unsquash them and change my code. Again I can only encurage you to try it, and read about it, it's an amazing distro and I love it 😍
Thank's all for using it, cant promise but eventually I will update to some newer versions!
Jesper.
I'm sorry that I cannot contribute more on this right now, having vecation and not actually using my own player at the moment 🙂
Well that said, the SuperPlayer was never intended to run on the 64bit dist. (I know someone here tried it allready)
The SuperPlayer is based on PicorePlayer, witch again is based on TinyCore Linux...
A lot of thing's are working, but using the GUI and saving some .yml files there does not actually save them for next reboot, because thing's aren't automatically saved.
I can only encourage you all to read about the TinyCore Linux http://tinycorelinux.net/
All my script's and .tcz files on github can be backengineered also. It's possible to unsquash them and change my code. Again I can only encurage you to try it, and read about it, it's an amazing distro and I love it 😍
Thank's all for using it, cant promise but eventually I will update to some newer versions!
Jesper.
@lykkedk , thank you for your great work.
@doctored , if you are using piCorePlayer 64-bit, please switch to 32-bit version.
I overcame this limitation by replacing /home/tc/cdsp_template.yml and /home/tc/cdsp_template_active.yml with links to files on my file server.using the GUI and saving some .yml files there does not actually save them for next reboot, because thing's aren't automatically saved.
I confirm that SuperPlayer+SamplerateChanger do not work on piCorePlayer 64-bit.the SuperPlayer was never intended to run on the 64bit dist.
@doctored , if you are using piCorePlayer 64-bit, please switch to 32-bit version.
Great...
It's up to you guys to have it working through 😉...
I remember it as to be working, but can't remember howto.
Jesper.
On the repo. there is a watchdog python I compiled back then, it's working as to look at changes and can do a filetool.sh - b everytime something is changed (could be the directory where GUI..yml files reside)I overcame this limitation by replacing /home/tc/cdsp_template.yml and /home/tc/cdsp_template_active.yml with links to files on my file server.
It's up to you guys to have it working through 😉...
I remember it as to be working, but can't remember howto.
Jesper.
Thanks for the spot - I've set it up on 32 bt and it's runnign now I think. time to work on some filters.
Guide to upgrade to camilladsp 2.0.0 (Yay, Early Christmas present!)
1) Since camilladsp now has a more advanced built-in resampling system, you need to edit your config files to remove any "enable_resampling: false" lines. If you have unneeded lines specifying "capture_samplerate" then those need to be deleted as well (they're irrelevant for our purposes anyway).
2) Do a backup using the button on the main page of the PCP web interface so all your config file edits don't mysteriously vanish (...).
3) Go to the main page on the PCP web interface and click the "Extensions" button. Let it check connectivity, then click the "Available" tab. Click the down arrow on the "Available extensions" list and select "squashfs-tools.tcz", then click the "Load" button. Do the same with the "tar.tcz" module (this may not be necessary, included just in case).
4) Open a SSH session with your RaspberryPi and enter the following commands:
If you're running 32bit PCP (needed for the alsa-cdsp module) then enter the following:
If you're running 64bit PCP then enter this:
Now enter
Now edit your onboot.lst file (I assume you have the "nano.tcz" module installed from the Extensions page):
Alter the line saying
5) Now reboot your RaspberryPi using the "Reboot" button on the main page of the PCP interface.
1) Since camilladsp now has a more advanced built-in resampling system, you need to edit your config files to remove any "enable_resampling: false" lines. If you have unneeded lines specifying "capture_samplerate" then those need to be deleted as well (they're irrelevant for our purposes anyway).
2) Do a backup using the button on the main page of the PCP web interface so all your config file edits don't mysteriously vanish (...).
3) Go to the main page on the PCP web interface and click the "Extensions" button. Let it check connectivity, then click the "Available" tab. Click the down arrow on the "Available extensions" list and select "squashfs-tools.tcz", then click the "Load" button. Do the same with the "tar.tcz" module (this may not be necessary, included just in case).
4) Open a SSH session with your RaspberryPi and enter the following commands:
Code:
mkdir -p camdsp2/usr/local/bin
Code:
wget https://github.com/HEnquist/camilladsp/releases/download/v2.0.0/camilladsp-linux-armv7.tar.gz
tar -xvC camdsp2/usr/local/bin -f camilladsp-linux-armv7.tar.gz
Code:
wget https://github.com/HEnquist/camilladsp/releases/download/v2.0.0/camilladsp-linux-aarch64.tar.gz
tar -xvC camdsp2/usr/local/bin -f camilladsp-linux-aarch64.tar.gz
Code:
mksquashfs camdsp2 camilladsp-2.0.0.tcz
cp camilladsp-2.0.0.tcz /mnt/mmcblk0p2/tce/optional
Code:
nano /mnt/mmcblk0p2/tce/onboot.lst
camilladsp-1.0.1.tcz
(or camilladsp-1.0.3.tcz
if you upgraded earlier) to camilladsp-2.0.0.tcz
and save (Ctrl-O) then exit (Ctrl-X).5) Now reboot your RaspberryPi using the "Reboot" button on the main page of the PCP interface.
Last edited:
Ok, the tczs required for the new GUI were a bit more fiddly. so I've compiled the tczs required for the latest CamillaDSP 2.0.0, including the new GUI implementation and have attached a zip file with them to an issue on the git project:
https://github.com/Lykkedk/SuperPlayer-v8.0.0--CamillaGUI-v0.6.0/issues/1
I added the issue to the old project, duh! Oh well...
The instructions I gave here for integrating the GUI with the samplerate changer still apply, apart from the bit on creating a symbolic link to camilladsp_active.yml, which is no longer required (and the file link can be deleted if you have it). The only other change is that camillagui.yml now needs to be:
If using the python version of the ratechanger, then change
processTemplate.sh alsacdsp {}
to
processTemplate.sh pycdsp {}
You will need to update camillagui in /mnt/mmcblk0p2/tce/Camilla_Extensions/camillagui (the tcz just contains a shell script that runs the program here). This is quite easy:
This implementation doesn't use the new statefile mechanism, but I think the whole ratechanger template system is bypassing the need for it anyway. A weakness of my GUI integration is that all changes to the dsp processes must involve saving to a file and then marking it as active (i.e. do not just click 'Apply to DSP', as that won't update the template file). I'm not sure if using the statefile might address that issue.
https://github.com/Lykkedk/SuperPlayer-v8.0.0--CamillaGUI-v0.6.0/issues/1
I added the issue to the old project, duh! Oh well...
The instructions I gave here for integrating the GUI with the samplerate changer still apply, apart from the bit on creating a symbolic link to camilladsp_active.yml, which is no longer required (and the file link can be deleted if you have it). The only other change is that camillagui.yml now needs to be:
Code:
---
camilla_host: "127.0.0.1"
camilla_port: 1234
port: 5000
config_dir: "~/camilladsp/configs"
coeff_dir: "~/camilladsp/coeffs"
default_config: "~/camilladsp/configs/camilladsp.yml"
statefile_path: "~/camilladsp/statefile.yml"
log_file: "~/camilladsp/camilladsp.log"
on_set_active_config: /home/tc/camilladsp/processTemplate.sh alsacdsp {}
on_get_active_config: null
supported_capture_types: null
supported_playback_types: null
If using the python version of the ratechanger, then change
processTemplate.sh alsacdsp {}
to
processTemplate.sh pycdsp {}
You will need to update camillagui in /mnt/mmcblk0p2/tce/Camilla_Extensions/camillagui (the tcz just contains a shell script that runs the program here). This is quite easy:
Code:
cd /mnt/mmcblk0p2/tce/Camilla_Extensions/camillagui
wget https://github.com/HEnquist/camillagui-backend/releases/download/v2.0.0/camillagui.zip
unzip camillagui.zip
This implementation doesn't use the new statefile mechanism, but I think the whole ratechanger template system is bypassing the need for it anyway. A weakness of my GUI integration is that all changes to the dsp processes must involve saving to a file and then marking it as active (i.e. do not just click 'Apply to DSP', as that won't update the template file). I'm not sure if using the statefile might address that issue.
Since camilladsp has been updated in the past week, I've loaded the new files into tcz's and posted a zip with them here:
https://github.com/Lykkedk/SuperPlayer-v8.0.0--CamillaGUI-v0.6.0/issues/1#issuecomment-1890913897
Copy them over to tce/optional, edit onboot.lst to point to the new versions, run the camillagui updater script, then reboot.
https://github.com/Lykkedk/SuperPlayer-v8.0.0--CamillaGUI-v0.6.0/issues/1#issuecomment-1890913897
Copy them over to tce/optional, edit onboot.lst to point to the new versions, run the camillagui updater script, then reboot.
One thing I forgot to add: when you update camilliagui to the latest version it will overwrite the camillagui.yml config file with a standard version. So if you have altered it (such as to add the active_config script I described earlier) then you’ll need to insert those changes again.
@charlesky ...
I'm trying to find an old thread over at TinyCore Linux, but I can't seem to find it right now.
But you can try to unsquash the .tcz and look how it's created.
I will be back if I find some more info, it's been a while!
I'm trying to find an old thread over at TinyCore Linux, but I can't seem to find it right now.
But you can try to unsquash the .tcz and look how it's created.
I will be back if I find some more info, it's been a while!
I found the thread, where I was helped building such packages here HERE!Jesper, how did you create py3.8-jsonschema-3.2.0.tcz? The latest version of camillagui requires a more recent version. I tried just bundling the python code from here into a new tcz but that failed, so I clearly did something wrong.
Especially look at reply #3, where user Juanito explains it very good 🙂
I would really like to help, but I unfortunately don't have the time for it right now.
Please ask.
Jesper.
OMG, I think I've managed to work it out, even though my experience with Python is just one step up from "Hello World" ...
It turns out that the advice Juanito gave is out-of-date, as setup.py is now deprecated (yes, that's the sound of hair being torn from my scalp).
I'll document the way that works now, since I'll probably forget in a week:
1) Load in the required extensions so the libraries can be built
(I loaded in a bunch of others just to be sure, but these are the ones that are definitely needed.)
2) Update pip to the current version
3) Make a directory for building the libraries
4) Have pip download and build the new libraries (alter version number in the dir name as appropriate).
5) Now you can create the tcz files
6 ) Copy the tczs to the extension directory
7) Setup the dependencies for the new version of camillagui
then
and paste in
(I removed references to a lot of the other libraries you created, since it seems they are automatically included by pip as dependencies. Not sure about pcr-libyaml and PyYAML-5.4.1, so I kept them in.)
8) Edit /etc/sysconfig/tcedir/onboot.lst and change the reference to camillagui to camillagui-v2.1.0.tcz
9) Now upgrade camillagui to version 2.1.0
Here's the camillagui.yml that I'm using now, it has a few changes to yours (note that camilla_host is now "0.0.0.0"):
10) Camillagui complains if you're running CamillaDSP without a statefile argument, so my /etc/asound.conf (for the alsacdsp module) is now
11) Finally, my processTemplate.sh file has a line to backup everything on setting a new active config, but that can slow things down a lot (if you've got a directory with lots of library code ...) so comment out the
This seems to be working on a few in initial tests. I'll test it further for a few days and post the updated tczs to an issue on your github if nothing crashes and burns.
It turns out that the advice Juanito gave is out-of-date, as setup.py is now deprecated (yes, that's the sound of hair being torn from my scalp).
I'll document the way that works now, since I'll probably forget in a week:
1) Load in the required extensions so the libraries can be built
Code:
tce-load -i compiletc python3.8-dev gcc python3.8-pip squashfs-tools
2) Update pip to the current version
Code:
pip install -U pip
Makefile:
mkdir /home/tc/tmpbuild
cd /home/tc/tmpbuild
Code:
pip install -t aiohttp-3.9.3/usr/local/lib/python3.8/site-packages aiohttp
pip install -t jsonschema-4.21.1/usr/local/lib/python3.8/site-packages jsonschema
pip install -t websocket_client-1.7.0/usr/local/lib/python3.8/site-packages websocket_client
Code:
mksquashfs jsonschema-4.21.1 py3.8-jsonschema-4.21.1.tcz
mksquashfs websocket_client-1.7.0 py3.8-websocket_client-1.7.0.tcz
mksquashfs aiohttp-3.9.3 py3.8-aiohttp-3.9.3.tcz
Code:
cp *.tcz /etc/sysconfig/tcedir/optional
Code:
cp camillagui-v1.0.0.tcz camillagui-v2.1.0.tcz
Code:
nano camillagui-v2.1.0.tcz.dep
Code:
py3.8-websocket_client-1.7.0.tcz
py3.8-jsonschema-4.21.1.tcz
py3.8-aiohttp-3.9.3.tcz
pcr-libyaml.tcz
py3.8-PyYAML-5.4.1.tcz
py3.8-pycamilladsp-2.0.2.tcz
py3.8-pycamilladsp-plot-2.0.0.tcz
8) Edit /etc/sysconfig/tcedir/onboot.lst and change the reference to camillagui to camillagui-v2.1.0.tcz
9) Now upgrade camillagui to version 2.1.0
Code:
cd /mnt/mmcblk0p2/tce/Camilla_Extensions/camillagui
cp config/camillagui.yml camillagui.ymlbak
wget https://github.com/HEnquist/camillagui-backend/releases/download/v2.1.0/camillagui.zip
unzip -o camillagui.zip
rm -f camillagui.zip
cp config/camillagui.ymlbak camillagui.yml
Code:
---
camilla_host: "0.0.0.0"
camilla_port: 1234
bind_address: "0.0.0.0"
port: 5000
ssl_certificate: null
ssl_private_key: null
config_dir: "~/camilladsp/configs"
coeff_dir: "~/camilladsp/coeffs"
default_config: "~/camilladsp/configs/camilladsp.yml"
statefile_path: "~/camilladsp/statefile.yml"
log_file: "~/camilladsp/camilladsp.log"
on_set_active_config: /home/tc/camilladsp/processTemplate.sh alsacdsp {}
on_get_active_config: null
supported_capture_types: null
supported_playback_types: null
Code:
# --- sound_out is the real hardware card ---
# --- SuperPlayer default ---
pcm.sound_out {
type hw
card 0
device 0
}
ctl.sound_out {
type hw
card 0
}
# --- CamillaDSP with Seashell's alsa-plugin ---
# Howto here : https://github.com/scripple/alsa_cdsp
pcm.camilladsp {
type cdsp
cpath "/usr/local/bin/camilladsp"
config_in "/home/tc/camilladsp/configs/alsa_cdsp_template.yml"
config_out "/home/tc/camilladsp/configs/camilladsp.yml"
cargs [
-o "/home/tc/camilladsp/camilladsp.log"
-l error
-p "1234"
-s "/home/tc/camilladsp/statefile.yml"
]
channels 2
rates = [
44100
48000
88200
96000
176400
192000
352800
384000
]
extra_samples 0
}
pcp bu
and the end of the file (though this means you need to do a manual backup before any reboot).This seems to be working on a few in initial tests. I'll test it further for a few days and post the updated tczs to an issue on your github if nothing crashes and burns.
- Home
- Source & Line
- PC Based
- SuperPlayer - The DSP_Engine (CamillaDSP) samplerate switching & ESP32 remote control