Snakeoil Forums

Full Version: Working on new Snakeoil release - 1.3.x (Codename Measurements)
You're currently viewing a stripped down version of our content. View the full version with proper formatting.
Pages: 1 2 3 4 5
OK folks. Last few years have been really busy for me professionally (Across 3 jobs). It was rewarding at times, however it was stressful most times as well. This current job I have is probably one of the worse as a co-worker is slack, combative making the situation really bad for me mentally. He left the company last month. And things are looking good. I realised last Friday I seem to have finished things which I expected will take me 2 months to do. So effectively I am 2x more productive? Or is it? Dawned on me I am back to my normal working pace because I don't have to waste time fixing his problems, arguing with him about things that really has no point arguing about. Let's face it. The guy is weird. On hindsight I realised the constant arguments we have always happened when we aren't alone.  Yes I'm still traumatised by this experience as this is the first time I have worked with somebody like him.

This is really not about me whinging. Well, it kind of is, but not really. I've just spent 12 months at this place, and I have written 140,000 lines of code (Javascript and C++). That's nearly 10k lines a month which is really takes the wind out of me. Hopefully now I am in a much better state of mind, and in a better position to churn out Snakeoil updates like before (It has been years).

First up I guess is to take in feedback. I will focus on the following things for the upcoming release, codename Measurements.


Better Install
With beefier hardware, and no bandwidth quotas I think it's time for me to abandon the restrictive way of downloading the installer. From this release onwards you no longer have to subscribe to the forum to download the installer. 

You'll still need to install the base (host) operating system. However, after which all you'll need to do is to run a single command from a shell session and follow the prompts.

Yes. There will be prompts now. This will fix the 20 minute delay in the RPi Installer. Something is easy to fix but I just don't have the time to.

Will have to see opening the install to everybody goes. I'm hoping CloudFlare will protect me from this. At least with 2 physical servers at best the malicious guy can take down the download server, but the forums and support will continue to function. More importantly because there's no longer any bandwidth quotas it means I do not have to worry about a big bill at the end of the month!


Better Raspberry Pi Support
My intention is always to move my primary listening rig to the Pi platform (preferably CM4 based). The plan is get an expansion board with a PCI-e interface powered by a CM4 board. The thing is I never get to execute this plan as I spent the past few years as switching from so many jobs.

First big announcement will be - aarch64 support! Via the form of Ubuntu. Mainly because Bookworm is yet to be officially supported by Raspi OS. When that is released Snakeoil OS will eventually support them too. So yes, Raspberry Pi will support at least 3 variants for now:
  • Ubuntu 22.04 LTS (aarch64)
  • Bookworm (armv7 and aarch64) Update 28 Oct 23: Not supporting armv7 for now since Bookworm defaults to 64 bit kernel running 32 bit applications. See this post for context.
Eventually this is likely to trickle down to only 1 platform. Going to do 3 for now so I can evaluate all 3 to find something that works best for me. 

And technically there will only be 1 version for the Pi at time of this post - Ubuntu 23.04 aarch64.


DSP Support
I will probably need the forum's help to get this up. Seems DSP is popular with people (especially people using it as a cross-over or room correction). 


In Conclusion
So that's about it for now. Spent yesterday setting up services on the cloud to test feasibility of the new installation method and everything seems to be working so far. So over the next several days I will build up a aarch64 build environment and then work on the installer. Once that is ready Measurements can be released and DSP support in the WebApp will be added in one of the point releases.

With the toxic guy gone I'm actually starting to enjoy listening to music again. This one is particularly good (I have NFI what the lyrics are, but there are a lot of things I like about how this is composed and performed). Will try and find this album when I go to HK early next year, but I expect the album to be heavily compressed.. 

Welcome back AK.  It was not nice watching you struggle with your work and that particular colleague.

I will work with you to implement CamillaDSP, but I am limited to doing convolution only, no crossovers. You do not have to go as far as what moOde did, with a number of templates to make things very easy. If you can do the install, which is what people have difficulty doing, that would be a good start.  And use web sockets rather than loopback?

And good to get Pi 64.  As you may recall, I have a CM4 which I hope to use as my backup.

Can I also request for update to the players. E.g. Minimserver now on 2.2, LMS 8.3.1, upmpdcli etc.
Rereading this announcement today, AK, does this mean that there will be no support for the RPi 3 in Measurement?
(10-Sep-2023, 04:08 PM)Snoopy8 Wrote: [ -> ]Welcome back AK. It was not nice watching you struggle with your work and that particular colleague.
I should really stop whinging about this guy, but it's really hard not to. Still pissed off he took salary (a lot of it btw) and effectively done nothing... This is obviously not good for me professionally to talk bad about somebody in public. But he is really that bad...

This will probably be the last time I mention him publicly now, as I vow to wipe him from memory. Figuratively & literally - I'm actually re-writing parts of his code earlier (i.e. removing his crap).


(10-Sep-2023, 04:08 PM)Snoopy8 Wrote: [ -> ]And use web sockets rather than loopback?
Thanks for the offer. Will ask for your help once I get the installer ready. You mean for the WebApp? Probably not going to use web sockets as RestAPI is more CPU cycle friendly.

Technically the library (cpprestsdk) I'm using for the implementation do have a WS interface, but don't see any need for introducing that for now. In truth I did thought of introducing WS when doing app installs and firmware upgrades, but just don't like the idea of introducing something that could potentially affect SQ. 


(12-Sep-2023, 01:36 AM)uglymusic Wrote: [ -> ]Rereading this announcement today, AK, does this mean that there will be no support for the RPi 3 in Measurement?
Ubuntu 64 bits will run on 3 and 4. So RPi3 will still be supported. Personally though I will go for a Pi4 or CM4 platform.

In theory if you're still on Raspi OS the firmware upgrade path should continue to work (In theory! yet to confirm).

Moving to Measurements will probably mean buying a new micro-sd card, image Ubuntu 64, run the installing and restore old config.

The thing I guess is to try Raspbian and Ubuntu (both 32 bits and 64bits), and then find the one with the best promise. Then cull from there.

Anyway, folks please post suggestions/comments/ideas... Not going to start on this tonight as I need to finish some of my day time job later when I'm at home. But hopefully I can get things rolling from Thurs onwards.
Thanks AK. I knew that Ubuntu runs on the RPi 3. I've tried to set up Snakeoil OS on Ubuntu on one of my RPi 3s.

The thing that tweaked my worry module was your expressed commitment to CM4 - I'd be interested in your hardware setup for the CM4 as I've been starting to think if a CM4 might be better for my server (there's probably a whole new thread on this one, I guess).
(12-Sep-2023, 04:21 PM)agent_kith Wrote: [ -> ]
(10-Sep-2023, 04:08 PM)Snoopy8 Wrote: [ -> ]And use web sockets rather than loopback?
Thanks for the offer. Will ask for your help once I get the installer ready. You mean for the WebApp? Probably not going to use web sockets as RestAPI is more CPU cycle friendly.

Technically the library (cpprestsdk) I'm using for the implementation do have a WS interface, but don't see any need for introducing that for now. In truth I did thought of introducing WS when doing app installs and firmware upgrades, but just don't like the idea of introducing something that could potentially affect SQ. 
I used loopback, mainly because it was easier to understand and install than web sockets. Web sockets appeared more elegant but if SQ could potentially be affected, then go loopback.

When you ready, we can continue discussing CamillaDSP in my feature request thread. And V2 is in Alpha, with a GUI to make it easier, but I have yet to try.
(12-Sep-2023, 05:31 PM)uglymusic Wrote: [ -> ]The thing that tweaked my worry module was your expressed commitment to CM4 - I'd be interested in your hardware setup for the CM4 as I've been starting to think if a CM4 might be better for my server (there's probably a whole new thread on this one, I guess).
Your comment prompted me to look up the differences between CM4 (have Pi2 Design Mercury V2) and Pi4
https://www.makeuseof.com/raspberry-pi-4...fferences/

Given you are using Pi3's, I think it will be logical to go Pi4 ?
(13-Sep-2023, 06:52 AM)Snoopy8 Wrote: [ -> ]
(12-Sep-2023, 04:21 PM)agent_kith Wrote: [ -> ]
(10-Sep-2023, 04:08 PM)Snoopy8 Wrote: [ -> ]And use web sockets rather than loopback?
Thanks for the offer. Will ask for your help once I get the installer ready. You mean for the WebApp? Probably not going to use web sockets as RestAPI is more CPU cycle friendly.

Technically the library (cpprestsdk) I'm using for the implementation do have a WS interface, but don't see any need for introducing that for now. In truth I did thought of introducing WS when doing app installs and firmware upgrades, but just don't like the idea of introducing something that could potentially affect SQ. 
I used loopback, mainly because it was easier to understand and install than web sockets. Web sockets appeared more elegant but if SQ could potentially be affected, then go loopback.

When you ready, we can continue discussing CamillaDSP in my feature request thread. And V2 is in Alpha, with a GUI to make it easier, but I have yet to try.
(12-Sep-2023, 05:31 PM)uglymusic Wrote: [ -> ]The thing that tweaked my worry module was your expressed commitment to CM4 - I'd be interested in your hardware setup for the CM4 as I've been starting to think if a CM4 might be better for my server (there's probably a whole new thread on this one, I guess).
Your comment prompted me to look up the differences between CM4 (have Pi2 Design Mercury V2) and Pi4
https://www.makeuseof.com/raspberry-pi-4...fferences/

Given you are using Pi3's, I think it will be logical to go Pi4 ?

Thanks for that link @Snoopy8. I'll read it later. My interest in the CM4 is in what I understand is the greater storage flexibility (via associated circuit boards) than the RPi4, but I'm in the very earliest stages of researching it - just an almost empty note in Obsidian  Smile .

Also, I think you may have misunderstood my setup. It's a multiroom system. I already have an RPi 4 8GB for my SO server running LMS and an RPi 4 2GB for my Office system. My main system is headed up by an Allo Digione Signature on an RPi 3. From what I've read, the Signature is specific to either RPi 3 or RPi 4. I have no plans to replace the Sig in the foreseeable future, hence my interest in seeing the RPi 3 still supported in SO. There are also two other RPi 3 clients in the system, one live and the other waiting to go live after my office is decorated. 

All of my client RPis use HAT cards rather than USB for audio because the i2s channel is demonstrably quieter.
(13-Sep-2023, 07:12 PM)uglymusic Wrote: [ -> ]Thanks for that link @Snoopy8. I'll read it later. My interest in the CM4 is in what I understand is the greater storage flexibility (via associated circuit boards) than the RPi4, but I'm in the very earliest stages of researching it - just an almost empty note in Obsidian  Smile .
There's a PCI-e interface on the CM4. But to be honest RPi4 has "good" storage too. With my Pi4 I just use the microsd card as boot and everything is on the SSD connected via USB3. I believe newer RPi firmware has an update to boot direct from a SSD now. I've yet to try this as I don't want to brick any of my RPI4 just yet. Will do so until the supply has increased.

There's also network boot. Something I am exploring (reason why I'm getting the 8GB model).

Anyway, the idea for RPi4 is more in terms of a RT kernel. But we're not there yet so it's theory at best. lol. There are other Single Board Computers that's far more powerful than the Pi these days.. So will explore them too when I can, but for now just gonna focus on the RPis.

I'm going to mostly call it a day tonight... Fingers crossed will try and wake up early tomorrow & start work on the new updated installer tomorrow....
(15-Sep-2023, 07:50 PM)agent_kith Wrote: [ -> ]
(13-Sep-2023, 07:12 PM)uglymusic Wrote: [ -> ]Thanks for that link @Snoopy8. I'll read it later. My interest in the CM4 is in what I understand is the greater storage flexibility (via associated circuit boards) than the RPi4, but I'm in the very earliest stages of researching it - just an almost empty note in Obsidian  Smile .
There's a PCI-e interface on the CM4. But to be honest RPi4 has "good" storage too. With my Pi4 I just use the microsd card as boot and everything is on the SSD connected via USB3. I believe newer RPi firmware has an update to boot direct from a SSD now. I've yet to try this as I don't want to brick any of my RPI4 just yet. Will do so until the supply has increased.

There's also network boot. Something I am exploring (reason why I'm getting the 8GB model).

Anyway, the idea for RPi4 is more in terms of a RT kernel. But we're not there yet so it's theory at best. lol. There are other Single Board Computers that's far more powerful than the Pi these days.. So will explore them too when I can, but for now just gonna focus on the RPis.

I'm going to mostly call it a day tonight... Fingers crossed will try and wake up early tomorrow & start work on the new updated installer tomorrow....

I'm still running SO off a microSD card, a heavy-duty one (surveillance camera one from SanDisk, I think) because I find LMS trashes regular cards after a few months. 

My music storage is on my Synology NAS, but I want to try having my music directly attached to the RPi, away from the potentially noisier environment of the NAS. Going forward, I'm thinking the storage is going to be a regular 4TB HD (I have a lot of music, and it would be good to have a bit of room for expansion) with a small SSD boot drive for SO.

Then, there's waiting for the Raspberry Pi 5 with its M2 connections  Smile
So over the last weekend I've spent some time custom building some of the libraries. That actually took the entire weekend, part A (the RestAPI) is working now. Hopefully going to find some time to build part B (The Angular WebApp) and then the music players (Squeezelite, MPD, etc). Once those are complete I'm to work on the installer proper.

Note that the initial test release will just be aarm64 (aka Raspberry Pi running Ubuntu 64 bit). The x86_64 (aka computer version) will/should follow quickly. Reason being I need to re-build the same stuffs again.
Pages: 1 2 3 4 5