Snakeoil Firmware - 1.1.3 (Blind Testing Update 3)
#1
Introduction
OK great. After a raid failure - Snakeoil development finally felt like it's falling back into a routine now.
[Image: admire2.gif]

This is a progressive release and is a continual progression from Blind Testing to Gear Isolation. Good news to people using the free edition, some beta features from the last edition (Golden Ears) are now out of beta. This doesn't necessarily mean these features are problems/bugs free, I hope they are Big Grin!

Preliminary work is happening in the background on re-designing the players section (yet again). Nothing to show in U3 yet, but the groundwork is being laid and expect more in future updates.

New version of MPD 0.21.5.

And there're the usual bug fixes. Hopefully the revamped HQPlayer installation will better handle this. This is always going to be an on-going issue for novices. Experienced users should have no trouble installing HQPlayer, and once that is done, HQPlayer will just appear in the WebApp like any other music player.

And finally some new activated features - Merging Technologies - Ravenna/AES67. Networking is the future, most countries (except Australia!) are moving to faster wired connectionis, and fast wireless (5G). Companies like Netflix, Amazon, Tidal and Qobuz are replacing traditional shops like Blockbuster. Ravenna is AV over IP, while AES67 is Audio over IP. Snakeoil now supports the AES67 via a custom upgrade kernel.

How does this work? Instead of a traditional USB or PCI/PCI-e audio device, you'd now see this:
[Image: WqK3IF7.png]

The "Merging Ravenna" device is called a virtual device. To the operating system this is an audio device, but behind the scenes this device is converting audio into network packets. You'd need a DAC capable of receiving these packets, and it'd be converted back to music. So in other words, it'd be your network acting like a USB cable.

Is this better than USB? I honestly think it will be. But you'd need a management/smart network switch to do this well.
  • VLAN. At a minimum, your switch will need to support VLAN. A traditional switch is like a big hall, when there's a lot of people pack in the hall, and everybody tries to speak/listen, things get busy. A switch with VLAN is like a big hall with multiple sound proofed private room - it makes things more managable.
  • IGMP v2/v3. I'm still not entirely sure if you'd need IGMP v2/v3 support or not. There are two types of network traffic. Unicast (1 to 1), and multicast (1 to many). If the network audio out of this Merging audio device is multicast, then yes you'd need IGMP. Otherwise this works the same way as other unicast network audio.

    Logitech Media Server and Squeezelite are unicast in nature. This just means point to point (one source, one destination) If I have ten sqeezelites and I want them all to receive the same music at the same time. Unicasting will create ten data and ten control streams on the network, all with the exact same data.

    Multicasting works differently. It creates just a single data stream and send it to all the ports on the network. Any device on the network can work on this single stream of data. There is no data duplication.

    Both distribution methods are limited by network bandwidth. Assume we have a ceiling of 1000 mbps, this means network traffic going up or down a network port cannot exceed this magic 1000 number). As an example, if the unicast stream is 100 mbps, the maxium number of devices that'd work will be 9 (9 x 100 = 900 + overheads).

    For the same multicast stream of 100 mbps, there is no device limit. However, every port on your network is now left with 900 Mbps for everything else. This "one-to-many" do not scale well. What if you want to multicast 10 streams at 100 mbps to all the devices (many-to-many)? On a dumb switch, the network will fail.

    This is where IGMP comes in. Multicast traffic on a dumb switch will be broadcasted to all network ports. But the same traffic on a IGMP capable switch will only be sent to ports that are specifically asking for this traffic. An analogy, a dumb switch is like tuning to a radio station that is broadcasting 10 songs all playing all at once; you do not get to choose, the songs are force fed down to you. On a smart switch (one that supports IGMP Querier), you tell the switch you want song 1, 3 and 5, and it'll only broadcast that 3 songs (still all playing all at once. But you're now getting only the songs you want, instead of everything).
  • CoS/QoS: Class Of Service or Quality of Service. This is a configuration setting that priorities one type of network over another. Think of this as queue jumping. In traditional networks, packets in and out follow the order as they come in. This is orderly but can slow things down. CoS allows you to jump the queue. An analogy will be airline boarding. Economy class has a long line and you have to wait patiently to board. First class passengers on the other hand, have a much shorter queue and they board the plane immediately.
  • Network cabling. While you don't have to get expensive cables. You have to make sure the cable is 100% fault free - no CRC errors.

Why this long passage of text? Well, this is to give you an idea what Ravenna/AES67 is capable of. And a brief insight into my day job I guess. Spent the past 2 months fault finding a AES67 issue. I can tell you it's not fun. The good thing is there's not enough domestic AES67 DACs out there, but if this is indeed the future, and you'd decide to go down this parth, plan your network infrastructure carefully.

Let me know if you guys are aware of any virtual graphics driver for video. It'd be great to have full Ravenna running on Snakeoil as that will turn this project into a full fledged multimedia network distribution solution.

Long rants now over Whew, here're the downloads, happy listening!

Download
.fw   snakeoil-1.1.3-armv7l.fw (Size: 11.99 MB / Downloads: 51)
(SHA1: 2ca2a05f8a1228f2a9480179c11b1603e84faba1)
.fw   snakeoil-1.1.3-1-i686.fw (Size: 14.1 MB / Downloads: 14)
(SHA1: 5320fb21ec32dee10907b41380cb5d7748447e4e)
.fw   snakeoil-1.1.3-1-x86_64.fw (Size: 13.98 MB / Downloads: 137)
(SHA1: 784d91a165fef5b3f1481df29c01cfebfc1167e9)


Changelog
  1. 0000276: [web-app] Show a notice if ALSA device no longer matches what is found in the system
  2. 0000280: [players] MPD: Add albumartist id3tag to metadata_to_use (v0.20 and v0.21 only)
  3. 0000281: [players] Improved HQPlayer installation script
  4. 0000283: [web-app] Update NAA for AMD64 to 3.5.5-39 (There is no i386 update)
  5. 0000284: [web-app] Fixed activation sequence when names or emails have accents/punctuation
  6. 0000285: [web-app] Do not show kernel tweaks in Raspberry Pi, as there's no tweak to do
  7. 0000286: [players] Fixed problem where you cannot install/uninstall HQPlayer NAA in i386 and Raspberry Pi platforms
  8. 0000287: [web-app] Fixed incorrect Thread count in CPU panel in dashboard
  9. 0000288: [web-app] Free Edition: Can now mount multiple drives/paths in library
  10. 0000289: [web-service] Free Edition: Can now modify MTU in networks
  11. 0000290: [web-app] Change streaming mode from "PCM" to native PCM/DSD
  12. 0000291: [web-service] Introduce initial Ravenna support
  13. 0000292: [players] Update MPD v0.20.x series to 0.21.5
Snakeoil Operating System - Music, your way!
[-] The following 1 user Likes agent_kith's post:
  • hkphantomgtr
Reply

#2
Thank you very much, Agent Kith!  :shy:
[-] The following 1 user Likes hkphantomgtr's post:
  • agent_kith
Reply

#3
RPI3

Decrypting File: snakeoil-1.1.3-armv7l.fw

Cannot decompress file.
Uploaded file appears to be an invalid firmware.


Not for ARM...?
Reply

#4
(03-Mar-2019, 03:29 PM)Bromf Wrote: RPI3

Decrypting File: snakeoil-1.1.3-armv7l.fw

Cannot decompress file.
Uploaded file appears to be an invalid firmware.


Not for ARM...?
Seems to work fine over here, can you verify the SHA1 checksum and see if it matches the one given in the post?
 
[Image: 79fkRFK.png]
Did you get the checksum string like above when uploading the file?
Snakeoil Operating System - Music, your way!
Reply

#5
Third try worked....though a couple of reboots via ssh needed...
Rest reloaded 54 times then 32 times then final reboot brought up the webpage and all seems to work.. Smile
Reply

#6
(03-Mar-2019, 05:51 PM)Bromf Wrote: Third try worked....though a couple of reboots via ssh needed...
Rest reloaded 54 times then 32 times then final reboot brought up the webpage and all seems to work.. Smile
What microsd card are you using? Maybe it's too slow? I'm using a fast write model (can't remember what it's called), but use a faster card if you can.
Snakeoil Operating System - Music, your way!
Reply

#7
(03-Mar-2019, 10:01 AM)agent_kith Wrote: 0000285: [web-app] Do not show kernel tweaks in Raspberry Pi, as there's no tweak to do
Whoops. Didn't test this properly. A bug here caused the kernel tweak to disappear from all CPU architectures. Have fixed both i686 and amd64 so the kernel tweak is back. Apologies for the bug Blush

Please re-download the -1 edition, and upgrade if you need this feature.
Snakeoil Operating System - Music, your way!
[-] The following 1 user Likes agent_kith's post:
  • hkphantomgtr
Reply

#8
Hi Agent Kith, thanks again for your work ;-)
I try to find the file MPD.CONF for updating tidal account, but without any success with SSH session, could help me to find this configuration file? Where is the correct path for Snakeoil, because the common path etc/mpd.conf is not available

The only mpd.conf i found is "/var/www/scratch/mpd.conf"
Reply

#9
(07-Mar-2019, 05:11 AM)Evach Wrote: Hi Agent Kith, thanks again for your work ;-)
I try to find the file MPD.CONF for updating tidal account, but without any success with SSH session, could help me to find this configuration file? Where is the correct path for Snakeoil, because the common path etc/mpd.conf is not available

The only mpd.conf i found is "/var/www/scratch/mpd.conf"

The file is /var/www/players/mpd-v21/mpd.conf.template

Modify the file above. Everytime you start the player, the scripts will use that template to generate /var/www/scratch/mpd.conf. Another way is to use the advanced audio configuration option.

Right now everytime you apply a new firmware update, your changes will disappear if you use the first method.

I'm working on improving the GUI in Gear Isolation to make this better. Stay tuned. Thumbs Up
Snakeoil Operating System - Music, your way!
Reply

#10
(07-Mar-2019, 09:46 AM)agent_kith Wrote: The file is /var/www/players/mpd-v21/mpd.conf.template

Modify the file above. Everytime you start the player, the scripts will use that template to generate /var/www/scratch/mpd.conf. Another way is to use the advanced audio configuration option.

Right now everytime you apply a new firmware update, your changes will disappear if you use the first method.

I'm working on improving the GUI in Gear Isolation to make this better. Stay tuned. Thumbs Up 

Thnaks for your quick answer! I found it and i modify this file with the following sentence:

input {
        plugin "tidal"
        token "xxxxxxxxxxxxx"
        username "yyyyyyyyyyyyy"
        password "zzzzzzzzzz"
        audioquality "LOSSLESS"
}

I reboot but nothing happen afterward, no additional audio source or other. i use M.A.L.P. as control point.


PS: for information i used this method to extract a token:
  • Install Fiddler and start it.
  • In Fiddler, click Tools > Options > Decrypt HTTPS Traffic
  • Install TIDAL for Windows and start it
  • In Fiddler, look for requests to
    Code:
    api.tidal.com or similar
    Click a request, then on the right, click Inspectors > Headers. Underneath Miscellaneous you'll see
    Code:
    X-Tidal-Token
    This is a TIDAL Token you can use.
Reply



Bookmarks

Possibly Related Threads…
Thread Author Replies Views Last Post
  Snakeoil Firmware - 1.2.6 (Gear Isolation U6) agent_kith 26 3,862 08-Sep-2023, 01:15 PM
Last Post: hkphantomgtr
  Snakeoil Firmware - 1.2.13 (Gear Isolation U13) agent_kith 4 2,177 06-Sep-2023, 07:59 AM
Last Post: agent_kith
  Snakeoil Firmware - 1.2.12 (Gear Isolation U12) agent_kith 0 658 11-Jun-2023, 04:17 PM
Last Post: agent_kith
  Snakeoil Firmware - 1.2.11 (Gear Isolation U11) agent_kith 39 6,094 29-May-2023, 11:10 PM
Last Post: pikachullk
  Snakeoil Firmware - 1.2.10 (Gear Isolation U10) agent_kith 18 3,377 14-Feb-2023, 01:55 AM
Last Post: uglymusic



Users browsing this thread:
1 Guest(s)

[-]
Our Sponsors

[-]
Welcome
You have to register before you can post on our site.

Username/Email:


Password:





[-]
Latest Threads
ZimaBoard 2x NIC, 2x SATA, 2x USB, 1x PC...
Last Post: agent_kith
26-Mar-2024 12:04 PM
» Replies: 13
» Views: 612
LMS Upgrade ?
Last Post: uglymusic
15-Mar-2024 09:14 PM
» Replies: 7
» Views: 149
Squeezebox shutdown
Last Post: TripleX
13-Mar-2024 07:34 AM
» Replies: 4
» Views: 70
MP3 Not Playing
Last Post: Coacharnold
10-Mar-2024 10:25 AM
» Replies: 3
» Views: 52
Fail to install myMPD
Last Post: hkphantomgtr
03-Mar-2024 08:45 PM
» Replies: 9
» Views: 195
Intel HFI Driver Can "Save Tons Of CPU C...
Last Post: hkphantomgtr
28-Feb-2024 09:15 PM
» Replies: 0
» Views: 41
Announcing Snakeoil Measurements 1.3.0
Last Post: agent_kith
26-Feb-2024 10:02 PM
» Replies: 94
» Views: 4137
More Problems with Squeezelite in 1.3
Last Post: Coacharnold
17-Feb-2024 09:47 PM
» Replies: 2
» Views: 69
Snakeoil Music server & Snakeoil its own...
Last Post: Snoopy8
17-Feb-2024 11:20 AM
» Replies: 8
» Views: 365
RoonBridge (64 bit only)
Last Post: scrarfussi
15-Feb-2024 08:26 PM
» Replies: 3
» Views: 4125

[-]
SnakeoilOS Mission Statement

Our mission is to create a free to use computer OS that is easy to install, intuitive to operate and play music that will connect and engage with you emotionally.

SnakeoilOS gives you the freedom to spend more time on listening, enjoying and exploring music. Wasting time on computers is now a thing of the past! Everything is constantly evolving/improving. Please check back often for updates.

If you like this project, do show your support with a small token donation. All donations collected will be used to run this website, and for purchasing new equipment for the project.


Powered By MyBB, © 2002-2024. Theme © Melroy van den Berg.