I’m opening this post solely with the intention of recapping and clarifying the certainties I’ve gathered so far, with the goal of establishing some facts that might help other users in the future. All the information is based on my own observations and comments from other users—specifically @Jud , @Antonio , and @mistral —who very kindly pitched in to collaborate. If I forgot to name anyone, there are 100+ messages, and the amalgamation has gotten a bit overwhelming for me too.
When I first published the post, I did so because I was very overwhelmed by the errors I was seeing in the logs, which in my view didn’t make much sense. Specifically, three things pushed me to publish it:
- UPnP 501 - GetVolume/GetVolumeDB/Scalar etc… there are tons of errors of this style.
- UPnP AVTransportURI.
- Severe delay between playback and live radio state.
- Buffer emptying during podcast playback.
- Playback drops and sudden, inexplicable cuts (which I attributed to UPnP).
- Cascading ALSA output.
- Remote websocket (which still remains unexplained).
Along the way, as evidence started emerging, I modified parts of my setup to gain more solidity in specific aspects and be less exposed to absurd inconsistencies. I started with the server hosted on a Pi 5 and it is now on an i7-7700T. Both machines are perfectly capable, but let’s be honest, the overall responsiveness of the i7 fully justifies the switch. I also moved from using DietPi to a Debian installation controlled entirely by myself. There were a few hiccups, like an issue with EEE power management stemming from a specific Intel driver, but generally speaking, everything seems to be running more or less well (at the end of the post i post the logs of a more or less healthy installation). Everything, that is, except the websocket. I’ll break things down a bit below, and you can find the technical information in the post: https://community.audirvana.com/t/some-reports-and-discussion-about-audirvana-errors-this-thread-is-about-upnp-errors/47386/44. I strongly recommend ignoring the contributions of certain users, as they add nothing to the discussion.
Regarding the UPnP errors observed in the logs:
They correspond to more or less normal operation between the server and the client. Audirvana—like Symfonium and many other audio and Hi-Fi audio programs—is excessively strict with UPnP and requires a renderer that either matches its demands or was developed ad hoc or collaboratively. On the one hand, it’s great that they rely on an open protocol; honestly, that’s always been something I admired about Audirvana. On the other hand, the renderer ecosystem is a bit complicated and difficult. Audirvana could, if it wanted to, take a step forward in this regard and work on a renderer that functions a bit more universally. That would at least guarantee a method that definitely works and put an end to this hell. The first step—turning Audirvana into a renderer itself—has already been taken; they would just need to decouple it and allow it to be installed independently and without registration, but I understand that falls into the realm of wishful thinking. It would be so fantastic that I think I’d even be willing to pay for it.
From what I’ve tested in the Linux and ARM-compatible ecosystem, choices are very limited:
-
gmediarender
-
Various upmpdcli implementations:
- Volumio
- RoPieee (now Verox)
- moOde
- Installing MPD and upmpdcli manually
-
APrenderer
-
There’s also GentooPlayer, but I didn’t dare buy the license only to have playback cut out after 3 seconds, and it’s also upmpdcli underneath.
I haven’t found many other options, and we must not lose sight of the fact that Audirvana requires strict UPnP/AV—meaning not OpenHome. Well, none of them are perfect, and each has its drawbacks.
In my system, for example, I couldn’t get upmpdcli to run in a completely stable way (installed on RaspiOS by me and configured by me; the report is in the original thread), although to be fair it worked quite well. There might have been an occasional dropout, but generally speaking, everything behaved as expected—except for the severe radio delay, which is most noticeable there, and some response issues in Remote (such as sluggish progress bars and similar quirks common to everyone).
Gmediarender generally performs quite well, though it’s a bit heavy and lacks many options, especially regarding gapless playback. However, you can configure it well enough for it to run without too much trouble.
For me, the one that delivered the best results is APrenderer—the renderer for Album Player, which is neither upmpdcli nor GStreamer. It’s good, lightweight, comfortable to configure, and supports gapless playback, plus it lets you adjust the buffer size up and down and choose the DAC response type. It’s very good, even though it’s not FOSS.
Regarding errors, they all throw 501s. upmpdcli has AVTransportURI (confirmed in my report and @Jud 's), gmediarender has getvolumendb, and APrenderer has volume range. They all present some incompatibility, but they are harmless. That’s important to point out.
Then there are other errors whose importance or impact I couldn’t determine. In APrenderer you get: 2026-10-22 00:04:52.075 [error]: UPnP Error -113 getting position info, and I’ve also had errors like: 2026-10-22 01:01:20.015 [error]: UPnP: Error Subscribing to EventURL -- -204, which translates to minor crackles in the audio signal during playback (though I’ve lost track of this last one and no longer know exactly when it happened). In any case, all of them—except moOde because of OpenHome—should work more or less fine.
My primary conclusion is that while Audirvana has a problematic implementation given all the difficulties discussed, the root of the problem might not lie so much in what Audirvana does, but in what the others don’t do. All of this without losing sight of the fact that the hardware device matters. I don’t think my Pis lack processing power, but rather that they lack the required optimization (because I did it myself), or at least that I didn’t know how to do it properly—though that’s just an opinion. In the end, I haven’t found an explanation for why a microRendu works fine while a Pi struggles, unless a Pi is actually working fine, just not quite as well as I want it to.
Regarding the ALSA outputs:
After a lot of searching and digging into various aspects related to USB, my DACs, and everything within my reach, I think I understand why it appears so often and what it means. I use a Topping E30 or an E30 II Lite connected to the server, which in turn is connected to my AVR. That’s where I have my best gear and where everything sounds best. Well, since the server is always on, I’m used to letting the DAC go to standby (the E30 wakes up automatically without issues, but the E30 II Lite is problematic and causes a lot of trouble in this setup, so I left the E30 installed). It seems that was causing issues, so I configured a UDEV rule to properly resolve this. On the other hand, it was plugged into USB 3 ports, and it didn’t seem entirely stable. On USB 2 ports, everything is much more stable. However, the error still pops up rather unexpectedly—though it also appeared in Jud’s report—so I’m starting to think it’s not a real error and is just related to my server losing connection with my DAC. This message didn’t use to appear before.
Finally, there is the question of websockets:
I haven’t found a solution, nor received any response from support, and it still has no apparent explanation. I’ve reviewed all my phone, network, and server configurations; I’ve changed things, reinstalled, mulled over this problem extensively, and I’m still not clear on what might be happening. It’s clear that there’s a problem in some aspect of the chain, but I can’t pinpoint an element that helps me discern it. The error seems normal—in the end, it says Remote is trying to reconnect—but it impacts listening and daily use of Audirvana, and it’s extremely annoying.
On top of that, I still need to figure out what happens when songs suddenly cut out and it skips to the next one. It leaves no trace; I haven’t found any reference to it, but it happens. I’m trying to gather logs to see if I can shed some light on this. At first, I thought it was a UPnP error, especially at the end of an album, but I’m starting to see that it also happens during local playback on Linux, though I don’t recall it ever happening on Mac. Or the status bar of the song in the notification in Android, which struggle to synchronice with the server. It’s honestly way too many issues to handle all by myself.
All in all, it’s important to point out, to me at least, that Audirvana is single-seat software. Almost its entire architecture points in this direction, and there are signs as clear as only being able to have a single account per installation. Even though it has features that allow remote listening—and now zones as well—it is almost never better than connecting a computer directly to a DAC, with that computer pointing to an SMB folder running an Audirvana installation on Mac or Windows. The Linux version is nice, but it’s also single-seat, as it’s designed for managing a DAC connected directly to the server. Beyond that, everything else works more or less, but it will never be half as satisfying as managing a DAC directly. Even so, it feels fair to note that errors continue to linger; many of the issues causing Audirvana to drop connections, cut off mid-song, or fail to finish playback remain unresolved, and quite a few aspects of what I’ve highlighted still underperform. Support really ought to keep digging into these areas, even if the software works well enough overall. Simply put, these are options Audirvana offers; they might be excellent, but the external implementation is complicated. At least, that’s how I’ve experienced it, as you can see across all the tracking logs I’ve kept over this entire time.
A huge thank you to everyone, for everything. But above all, thank you for debating, talking, and trying to help me. I truly hope that every new person who joins this forum can find genuine help, thoughtful discussion, and a welcoming atmosphere, rather than being insulted and snapped at because of some amalgamation of the waning quarter moon. Thanks to everyone, all of you.
My commitement is try to help to Audirvana to be the best software and i will always prefere to implement using modular hardware because i prefer than a expensive piece of hardware that can be broken and lost everyrhing. So, i will continue to post logs and push audirvana to be his best version.
2026-10-22 11:55:51.588 [info]: ============= Started Logging, Audirvana Studio 3.4.0 Linux x86_64 =============
2026-10-22 11:55:51.590 [info]: Running on HP HP EliteDesk 800 G3 DM 35W running Linux 6.12.113+deb13-amd64 x86_64
2026-10-22 11:55:51.590 [info]: Executable build ID: f4b129ba723f866602f880c3585fdacbc2b3d7e2
2026-10-22 11:55:51.590 [info]: Using language set in settings: es
2026-10-22 11:55:51.600 [info]: Multizone: capacity 3 (4 physical cores, 3850 MB buffer budget, admin cap none)
2026-10-22 11:55:51.603 [info]: RemoteServer: listening on port 21870, reachable at <IP>:21870 (eno1)
2026-10-22 11:55:51.605 [info]: RemoteServer: Server started and advertised on port 21870
2026-10-22 11:55:52.622 [info]: UPnP stack bound to Ethernet Connection (5) I219-LM (eno1) (eno1) <IP>:21871: first physical NIC with IPv4
2026-10-22 11:55:53.225 [info]: UPnP web server started on <IP>:21871
2026-10-22 11:55:53.232 [info]: Chromecast device scanner: client running
2026-10-22 11:55:53.238 [info]: ALSA output: 5 local audio device(s) found, on 2 of 2 card(s)
2026-10-22 11:55:53.430 [info]: Local Library Sync: inotify max_user_watches is set to 121168
2026-10-22 11:55:53.547 [info]: [UpnpRenderer] renderer "Audirvana <HOSTNAME> – RPiDSK" registered at http://<IP>:21871/upnp/desc-z2.xml in 105 ms
2026-10-22 11:55:53.547 [info]: [UpnpRenderer] renderer "Audirvana <HOSTNAME> – RPiBDRM" registered at http://<IP>:21871/upnp/desc-z3.xml in 102 ms
2026-10-22 11:55:53.547 [info]: [UpnpRenderer] renderer "Audirvana <HOSTNAME> – Main" registered at http://<IP>:21871/upnp/desc.xml in 106 ms
2026-10-22 11:56:55.336 [info]: ALSA output: 4 local audio device(s) found, on 1 of 1 card(s)
2026-10-22 11:56:56.650 [info]: ALSA output: 5 local audio device(s) found, on 2 of 2 card(s)
2026-10-22 12:01:41.849 [error]: Remote: event websocket lost with error: Connection reset by peer
2026-10-22 12:39:09.397 [error]: Remote: event websocket lost with error: Connection reset by peer
2026-10-22 12:40:19.008 [error]: Remote: event websocket lost with error: Connection reset by peer
2026-10-22 12:58:42.652 [error]: Remote: event websocket lost with error: Connection reset by peer
2026-10-22 13:11:29.484 [debug]: Remote: signal Processing websocket sending event: {"event":"activeFilters","version":1,"zoneId":1,"state":"setup","realtimeRequested":false,"readonly":false,"filters":[]}
2026-10-22 13:11:30.322 [debug]: [zone 1] audio-buffer budget lease claimed: 1283 MB per buffer
2026-10-22 13:11:30.428 [debug]: [zone 1] playback start: loading first track
2026-10-22 13:11:30.433 [debug]: [zone 1] playback start deferred: buffer 0 below the live-stream pre-roll of 2s
2026-10-22 13:11:30.538 [debug]: [zone 1] playback start: starting audio device
2026-10-22 13:11:30.544 [debug]: ALSA output lead: MMAP, the whole buffer of 768000 device frames (2 periods of 384000, x1 samples per device frame) = 768000 sample frames
2026-10-22 13:11:30.545 [debug]: Remote: signal Processing websocket sending event: {"event":"activeFilters","version":1,"zoneId":1,"state":"setup","realtimeRequested":false,"readonly":true,"filters":[]}
2026-10-22 13:33:00.553 [debug]: Remote: signal Processing websocket sending event: {"event":"activeFilters","version":1,"zoneId":1,"state":"setup","realtimeRequested":false,"readonly":true,"filters":[]}
2026-10-22 13:33:00.564 [debug]: [zone 1] audio-buffer budget lease released
2026-10-22 13:33:00.575 [debug]: Remote: signal Processing websocket sending event: {"event":"activeFilters","version":1,"zoneId":1,"state":"setup","realtimeRequested":false,"readonly":false,"filters":[]}
2026-10-22 13:33:19.531 [error]: Remote: event websocket lost with error: Connection reset by peer
2026-10-22 13:34:02.260 [info]: ALSA output: 4 local audio device(s) found, on 1 of 1 card(s)
2026-10-22 13:34:03.574 [info]: ALSA output: 5 local audio device(s) found, on 2 of 2 card(s)
2026-10-22 13:57:11.340 [debug]: Remote Server: Remote device version 6.2.2 (95) (UUID=<UUID>) logged in
2026-10-22 13:57:22.721 [debug]: Remote: signal Processing websocket sending event: {"event":"activeFilters","version":1,"zoneId":1,"state":"setup","realtimeRequested":false,"readonly":false,"filters":[]}
2026-10-22 13:57:23.497 [debug]: [zone 1] audio-buffer budget lease claimed: 1283 MB per buffer
2026-10-22 13:57:23.932 [debug]: [zone 1] playback start: loading first track
2026-10-22 13:57:26.129 [debug]: Internet Radio Icy metadata interval: 16000 for radio url: http://playerservices.streamtheworld.com/api/livestream-redirect/<STREAM_NAME>.mp3
2026-10-22 13:57:26.134 [debug]: [zone 1] playback start deferred: buffer 0 below the live-stream pre-roll of 2s
2026-10-22 13:57:26.429 [debug]: Continuous stream: pre-roll of 2177292 frames decoded, notifying the player
2026-10-22 13:57:26.429 [debug]: [zone 1] playback start: starting audio device
2026-10-22 13:57:26.451 [debug]: ALSA output lead: MMAP, the whole buffer of 768000 device frames (2 periods of 384000, x1 samples per device frame) = 768000 sample frames
2026-10-22 13:57:26.452 [debug]: Remote: signal Processing websocket sending event: {"event":"activeFilters","version":1,"zoneId":1,"state":"setup","realtimeRequested":false,"readonly":true,"filters":[]}
2026-10-22 13:57:26.754 [debug]: Continuous stream: pre-roll of 2304000 frames decoded, notifying the player
2026-10-22 13:57:48.497 [debug]: Continuous stream: pre-roll of 2304000 frames decoded, notifying the player
2026-10-22 13:58:09.525 [debug]: Continuous stream: pre-roll of 2304000 frames decoded, notifying the player
2026-10-22 13:58:30.521 [debug]: Continuous stream: pre-roll of 2304000 frames decoded, notifying the player
2026-10-22 13:58:51.495 [debug]: Continuous stream: pre-roll of 2304000 frames decoded, notifying the player
2026-10-22 13:59:12.497 [debug]: Continuous stream: pre-roll of 2304000 frames decoded, notifying the player
2026-10-22 13:59:33.521 [debug]: Continuous stream: pre-roll of 2304000 frames decoded, notifying the player
2026-10-22 13:59:54.497 [debug]: Continuous stream: pre-roll of 2304000 frames decoded, notifying the player
2026-10-22 14:00:15.493 [debug]: Continuous stream: pre-roll of 2304000 frames decoded, notifying the player
2026-10-22 14:00:36.523 [debug]: Continuous stream: pre-roll of 2304000 frames decoded, notifying the player
2026-10-22 14:00:57.493 [debug]: Continuous stream: pre-roll of 2304000 frames decoded, notifying the player
2026-10-22 14:01:18.493 [debug]: Continuous stream: pre-roll of 2304000 frames decoded, notifying the player
2026-10-22 14:01:39.522 [debug]: Continuous stream: pre-roll of 2304000 frames decoded, notifying the player
2026-10-22 14:02:00.527 [debug]: Continuous stream: pre-roll of 2304000 frames decoded, notifying the player
2026-10-22 14:02:21.497 [debug]: Continuous stream: pre-roll of 2304000 frames decoded, notifying the player