Building a Raspberry Pi-based streamer - a guide for the nervous

Discussion in 'Digital: DACs, USB converters, decrapifiers' started by Kattefjaes, Feb 19, 2017.

  1. Mindbender

    Mindbender Acquaintance

    Joined:
    Jul 15, 2019
    Likes Received:
    81
    Trophy Points:
    18
    Location:
    Anywhere the Wind Blows
    I'm running an RPi 4 with the Allo Digione with Moode and it sounds pretty nice. Although I don't have an RPi 3 to measure it against, the RPi 4 is great (for my purposes).

    Edit: Thanks @rlow - Very informative video. I’ll get an RPi 3B to test against the RPi 4.

    Question: Could the drop in audio quality be related to the USB-C implementation on the 4? Would noise or EMI be increased with the newer format?
     
    Last edited: Sep 6, 2019
  2. neogeosnk

    neogeosnk Friend

    Pyrate
    Joined:
    Sep 28, 2015
    Likes Received:
    1,882
    Trophy Points:
    93
    Location:
    Los Angeles, CA
    You have to pay $4 a month for tidal streaming.
     
  3. Biodegraded

    Biodegraded Friend

    Pyrate Contributor
    Joined:
    May 28, 2017
    Likes Received:
    7,976
    Trophy Points:
    113
    Location:
    Vancouver BC
  4. neogeosnk

    neogeosnk Friend

    Pyrate
    Joined:
    Sep 28, 2015
    Likes Received:
    1,882
    Trophy Points:
    93
    Location:
    Los Angeles, CA
  5. hifiandrun

    hifiandrun Almost "Made"

    Contributor
    Joined:
    Nov 2, 2016
    Likes Received:
    489
    Trophy Points:
    63
    Location:
    Boston
    It is a very interesting video. I watched the video and I sweated, because I am using a Pi 4B to control my audio HAT. So I did a little subjective test myself. I would say that with all due respect, I heard the opposite in my system. The Raspberry Pi 4B is equal or maybe slightly better than the Pi 3B+ for PI2AES audio HAT.

    There are many differences between our testing systems.
    1. Different HATs. I used PI2AES hat from Pi2Design. I used to own an Allo Digione Signature and have compared it with PI2AES. Both boards are examples of great engineering. Allo sound is sensitive to the "clean power". I prefer simple setup. The PI2AES sounds great with a good switch power supply. Note that it can sound "ear-tight" fatiguing when powered by a unmatched PS. I tried 3 different switching PS, this one gave me the best audio results:
    https://www.amazon.com/gp/product/B07G56LF9C/ref=ppx_yo_dt_b_asin_title_o06_s00?ie=UTF8&psc=1.
    There are three models. I have the "4-24V1.5a model".
    2. Different Software. I use the beta version of piCorePlayer v6.00b1 for both Pi3 B+ and Pi 4B. The Pi4B has 1GB ram, same as the Pi 3 B+ has.
    3. I only tested on-board BNC output to Schiit Gungnir A1.

    I did a brief A-B-A test. Once I went back to the Pi 4B (A) driving the PI2AES, I didn't think that I need to switch back to Pi 3B+ again to double check if the PI 4 was truly better. My goal was to test and to make sure that the PI 4B doesn't make the audio HAT music playback worse than a Pi 3B+ does. And I am pretty safe to say that it won't.

    Here is my thoughts why we have different conclusions.

    First, the HATs are different. Maybe the PI2AES is better immune to EMI noise? I don't know. The PI2AES uses LT3042 Ultralow RMS Noise voltage regulator (0.8uV). The Allo Digione Signature is sensitive to power supply (not a bad thing by itself).

    Second, the Pi4B is a lot faster thus is prone to overheat which would lead to CPU throttle, especially using the official Raspbian. Throttling may increase jitter. There is a patch to decrease throttle a little bit (https://www.techrepublic.com/articl...ing-hot-new-update-will-cool-your-board-down/). The video used RoPieee which is Arch Linux based. I don't know if Arch Linux for Pi 4B is also prone to throttle as the Raspbian or not. On the other hand, the piCorePlayer used a tiny core Linux, which overheating and throttle might not be an issue. But of note, the Pi 4B is still warmer than the Pi 3B+ with both running piCorePlayer. I am sure later on that all the audio playback software will come up with ways to prevent throttle better.

    Once again, I am not trying to bring up a "whose ears are better" fight. I simple wanted to point out the the digital music playback is tricky. Thus we should be careful when simply generalize that the Pi 4B is worse than a Pi 3B+ for audio playback. The digital music playback is still a trial-and-error thing in most cases. For example, I won't swear that the PI HATs running lean Linux are always better than a desktop USB D-to-D converter setup, neither I would swear that battery power is better than a good and matched switch power supply, nor I would swear that HQplayer is the best sounding desktop playback program than all the others. All of those require careful setup to reach their maximum potential.

    Edit: The LMS server is running on another Linux SBC, not on the Pi with the HAT. Thus the computing demand is low.
     
    Last edited: Sep 8, 2019
  6. haywood

    haywood Friend

    Pyrate
    Joined:
    Oct 22, 2015
    Likes Received:
    763
    Trophy Points:
    93
    It’s hard to take that video seriously when he starts off with the idea that “faster processor = bad” (without mentioning the speed increase is primarily due to better design and more modern process rather than a higher clock rate since that’d spoil the narrative) and then didn’t even try to test it with a simple underclock of the pi4b via config.txt. The pi4b also uses separate usb buses for 2/3 and doesn’t share either with ethernet so unless he’s tried the usb ports with a usb dac it seems too early to completely write them off (they could still suck for all I know but the conventional wisdom as to why they will suck doesn’t really apply).

    Edit: I’d be shocked if a pi4b doing audio gets throttled as it’ll be using single digit % cpu power.
     
  7. rlow

    rlow A happy woofer

    Pyrate Contributor
    Joined:
    Jul 18, 2017
    Likes Received:
    7,735
    Trophy Points:
    113
    Location:
    Canada
    I think the differences he mentions in SQ were very slight. Also, yes, they are likely somewhat HAT dependant for sure.

    The overall point I think however is don’t run out and think that buying a 4B is going to automatically be better from an SQ perspective than a 3B. In fact it COULD be slightly worse. The HAT used likely makes a way bigger diff than the Pi version and I’m absolutely sure that a 4B with a good HAT board and power supply can sound great.

    The video was just a single comparison with a very slight difference observed. And depending on your downstream system’s resolving power, you may not even notice it. No need for anyone to get nervosa about it - just take it as a counterpoint that newer isn't automatically better, especially since the new version is still a general purpose computing platform, not something that was designed specifically for this application.
     
    Last edited: Sep 8, 2019
  8. elmoe

    elmoe Friend

    Pyrate Banned
    Joined:
    Apr 23, 2019
    Likes Received:
    956
    Trophy Points:
    93
    Location:
    Phoenix, AZ
  9. mkozlows

    mkozlows Friend

    Pyrate
    Joined:
    Oct 6, 2015
    Likes Received:
    512
    Trophy Points:
    93
    If you're concerned about RPi performance over USB, it's worth noting that Allo is making a USBridge Signature that'll be based on an RPi Compute Module (so mostly compatible with all the RPi compatible software, unlike their current Sparky-based USBridge), only with their own USB hardware. Allegedly it should ship this month and be about $250 with a case. It apparently also works with the various HATs, so you could put a DigiOne on it if you wanted SPDIF.

    PCB pic from that thread:
    [​IMG]
     
    Last edited: Sep 9, 2019
  10. Decomo

    Decomo Almost "Made"

    Contributor
    Joined:
    Jul 1, 2016
    Likes Received:
    163
    Trophy Points:
    50
    Location:
    Australia
    Yes, that is how i understood, too after watching the video. If I need Pi for high processing power demand task then I would definitely go for Pi 4B but for my case, I just need simple music streamer with SPDIF out to my DAC so i recently went with 3B Plus after serious consideration for both.
     
  11. mkozlows

    mkozlows Friend

    Pyrate
    Joined:
    Oct 6, 2015
    Likes Received:
    512
    Trophy Points:
    93
    It's out now, but I was wrong about the price: It's $239 without a case. (The case isn't available yet, but since it's going to be aluminium, it'll almost certainly be more than $10.)

    Seems a little pricey just for clean USB, but I'm sure there are people who have spent that much on power supplies for their streamers, so hey, it's a big world.
     
  12. Ksaurav402

    Ksaurav402 Friend

    Pyrate Contributor
    Joined:
    May 7, 2019
    Likes Received:
    2,062
    Trophy Points:
    93
    Location:
    NY
    May be useful to owner of schiit DAC with latest USB module. This will help them to use their digione with new unison USB.
     
  13. earnmyturns

    earnmyturns Smartest friend

    Pyrate
    Joined:
    Sep 25, 2016
    Likes Received:
    3,218
    Trophy Points:
    113
    Location:
    Palo Alto
    Home Page:
    Old USBridge goes very well with Unison USB. I’d hope USBridge Signature to be at least as good, and avoid the Sparky obsolescence hassles. I’ll be paying attention to impressions with a view to move away from Sparky when it makes sense.
     
  14. Biodegraded

    Biodegraded Friend

    Pyrate Contributor
    Joined:
    May 28, 2017
    Likes Received:
    7,976
    Trophy Points:
    113
    Location:
    Vancouver BC
    If anybody has the gear and inclination to compare, I'd be interested in impressions on USBridge to Unison vs Pi straight to Unison. Posts in the Bifrost thread seem to indicate that Unison SQ is great even with a source as shitty as the Pi.
     
  15. haywood

    haywood Friend

    Pyrate
    Joined:
    Oct 22, 2015
    Likes Received:
    763
    Trophy Points:
    93
    One of the reasons usb was bad on the Pi was everything was attached to the single usb bus. The pi4b has separate usb 2 & 3 buses and has a different interface for ethernet (which is also much faster) so I wouldn’t automatically assume something like USBridge is needed. I’d let someone else be the guinea pig here.
     
  16. Azimuth

    Azimuth FKA rtaylor76, Friend

    Pyrate
    Joined:
    Nov 9, 2015
    Likes Received:
    6,835
    Trophy Points:
    113
    Location:
    Nashville, TN
    Home Page:
    This post got me thinking...

    Then I had a Pi 3B+ sitting arpund to test agasint my 3B. The + is beeter spec wise, but sounded slight worse.

    Then I saw a performance video showi,g real world expectations out of a 2b+, 3b, and 4b+ and the mention of more switchers on the 3b and, 4 models.

    Then I read this article confirming advanced switching power supply regulators for the 3 amd above,models.

    https://www.raspberrypi.org/blog/pi-power-supply-chip/

    So I traded a guy at work one of my 3b's for his 2b...and wow. There IS a slight difference. Slightly more black background and less congestion. It almost sounds "softer", but with slighy more micro and macro dynamics. More pleasant and smooth and slightly less edgy.

    Now this is a 2B vs a 3B+ using MoOde with a High Digi+ Pro.

    I guess you don't need high processing for playing digital audio files.
     
  17. haywood

    haywood Friend

    Pyrate
    Joined:
    Oct 22, 2015
    Likes Received:
    763
    Trophy Points:
    93
    Streaming audio only uses a fraction of the processor on a modern Pi, if you think the 2b sounds better then you’re not missing out by not having a higher idle percentage.

    FWIW another thing to think about is the 3b+ had worse latency than the 3b or 4b. The 4b with preempt kernel is actually really good:

    https://lemariva.com/blog/2019/09/raspberry-pi-4b-preempt-rt-kernel-419y-performance-test

    The experimental 64-bit kernel in moode has the preempt rt kernel patch applied but you lose performance so it might not be a good match with the 2b.
     
  18. Azimuth

    Azimuth FKA rtaylor76, Friend

    Pyrate
    Joined:
    Nov 9, 2015
    Likes Received:
    6,835
    Trophy Points:
    113
    Location:
    Nashville, TN
    Home Page:
    Does high idle percentage matter? Or latency? Playing music is all I use it for. I guess I care more about noise.

    The 64-bit kernel is an option (testing) in Moose version 6.3.0.
     
  19. gixxerwimp

    gixxerwimp Professional tricycle rider

    Pyrate
    Joined:
    Sep 30, 2015
    Likes Received:
    5,773
    Trophy Points:
    113
    Location:
    small island claimed by China
    I guess my Pi Zero W has relatively clean power.
     
  20. haywood

    haywood Friend

    Pyrate
    Joined:
    Oct 22, 2015
    Likes Received:
    763
    Trophy Points:
    93
    High idle percentage just means your processor is mostly doing nothing (idling). The point was there’s nothing inherently better about running a faster processor that is using a low amount of its processing capacity versus a slow one that’s using more.

    Latency is like the processor runs many tasks simultaneously, but can’t run them all concurrently as there aren’t enough cores. To get around this a process is interrupted after a set amount of processing time and another task is allowed to execute. Not all tasks are treated equally, some get more processing time (nice level controls this) and some processes like the kernel aren’t normally interruptable. The amount of time your process wants to do something compared to when it actually gets started is the latency. When you have a timing critical process like audio you want to minimize the amount of latency and also the variability of the latency. The preempt rt kernel trades absolute performance for lower latency and less variability.

    I don’t know anything about the 2b or if it can even run a 64-bit kernel but if you want to run the 4b then the preempt rt kernel is a good way to spend some of the extra processing power imo.
     

Share This Page