Wiim Ultra Streaming 16/44.1 only with Qobuz

johnzena

Member
Joined
May 16, 2023
Messages
10
I noticed today all songs from Qobuz are being limited to 16/44.1 and yes output is set to 24/192. USB limited to 16/44.1 also. Amazon music streams fine. In Qobuz app hi res is selected for both mobile and wifi. Hi res formats stream fine from native Android Qobuz app.
 
I noticed today all songs from Qobuz are being limited to 16/44.1 and yes output is set to 24/192. USB limited to 16/44.1 also. Amazon music streams fine. In Qobuz app hi res is selected for both mobile and wifi. Hi res formats stream fine from native Android Qobuz app.
Use wiim app to play Qobuz to get the right resolution. Using chromecast will limit you to 16/44. Its a know issue since the release of ultra.
 
In the wiim home app, on the Qobuz page, select the three bar menu in the top left hand corner, then settings/ streaming and set it to hi res.

Alternatively, If you are using the Qobuz app and Chromecast, the latter is constrained to CD quality but WiiM have engaged with Google to see if that can be improved.
 
Chromecast sounds strained. TBH though the 16/44.1 was sounding excellent and I didn't notice until I saw the bitrate.
 
Maybe it wasn't even streaming at 16/44.1 then (although, personally I couldn't hear the difference).

We've come used to say that the Ultra's version of the Google Cast SDK (GC4A 2.0) was limited to lossless 16/48, at most. But as @mrgene made us aware of, this is not necessarily true. It depends on the implementation of the web based streaming client (Qobuz, in this case) for Chromecast built-in.

If their web receiver app resorts to the HTMLMediaElement object for embedding the stream, then Google imposes a limit of 2 megabits per second. But if uses Media Source Extensions, then the only limit is that of a 2 MB buffer. Higher resolutions could well be supported. I have no idea if Qobuz has free developer resources working on a web receiver optimized for GC4A 2.0 (or if they are throwing all their resources towards Qobuz Connect. ;) But in the former case, this could potentially also affect the Ultra:
 
If their web receiver app resorts to the HTMLMediaElement object for embedding the stream, then Google imposes a limit of 2 megabits per second. But if uses Media Source Extensions, then the only limit is that of a 2 MB buffer. Higher resolutions could well be supported. I have no idea if Qobuz has free developer resources working on a web receiver optimized for GC4A 2.0 (or if they are throwing all their resources towards Qobuz Connect. ;) But in the former case, this could potentially also affect the Ultra:
You can rest assured that Qobuz is not using HTMLMediaElement. As a matter of fact, https://apps.qobuz.com/googlecast/3.0.5-b001/ you can check out the Qobuz web receiver for yourself. Just right click on the page an choose View Page Source, the javascript code is in the very bottom. To be fair though, I don't recall any major streaming media service provider using HTMLMediaElement.

But still, it's currently a known issue when casting to GC4A 2.0 devices in Qobuz. It's because there is currently a bug is Qobuz's code that restricted the max quality of audio stream it requests from the server. I won't go into the details, but for anyone interested, check out the javascript library in the Qobuz web receiver app linked above, and search for the function "limitToMaxSamplingRate".

You can somewhat work around the issue by using the native Qobuz app, or using BubbleUPnP to stream Qobuz content instead. Forgive me for the conspiracy theory but I am starting to think this is intentional by Qobuz. It's like how Tidal claims you can get Hires with chromecast on devices with the capability, but it's really up to Tidal to implement the logic to determine audio decoding capabilities. So rumors claim that many devices lost Hi-res over time. Sounds like a logical decision to promote their Tidal Connect I guess.
 
In the wiim home app, on the Qobuz page, select the three bar menu in the top left hand corner, then settings/ streaming and set it to hi res.

Alternatively, If you are using the Qobuz app and Chromecast, the latter is constrained to CD quality but WiiM have engaged with Google to see if that can be improved.
Thank you. The setting was right where you said it was. Somehow I switched it to the CD stream.
 
But still, it's currently a known issue when casting to GC4A 2.0 devices in Qobuz. It's because there is currently a bug is Qobuz's code that restricted the max quality of audio stream it requests from the server. I won't go into the details, but for anyone interested, check out the javascript library in the Qobuz web receiver app linked above, and search for the function "limitToMaxSamplingRate".
It’s been well known on this forum since the WiiM Pro came out that the Qobuz app limits Chromecast to 24/96 (see here ) - are you suggesting it limits it further?
 
Last edited:
It’s been known on this forum since the WiiM Pro came out that the Qobuz app limits Chromecast to 24/96 (see here ) - are you suggesting it limits it further?
Yes, but in both cases, the limits are imposed by Qobuz's javascript code. I saw the link you quoted, good to know that it was intentional. Because in Qobuz's javascript code, the logic goes like

if some condition is met:
set max quality to HIRES_96
else:
set max quality to CD

By looking at the javascript code, there is no way for a Qobuz google cast receiver app to set the audio quality to HIRES_192.

On GC4A 2.0 devices, whatever condition Qobuz uses to determine if the device can support HIRES does not work properly, so the max quality is always set to CD. All Qobuz needs to do is to fix the code for checking "if some condition is met", then Ultra would get 24/96 audio correctly. Unfortunately I can't directly reach out to the Qobuz developers, and I haven't had much luck with their regular customer service.
 
Yes, but in both cases, the limits are imposed by Qobuz's javascript code. I saw the link you quoted, good to know that it was intentional. Because in Qobuz's javascript code, the logic goes like

if some condition is met:
set max quality to HIRES_96
else:
set max quality to CD

By looking at the javascript code, there is no way for a Qobuz google cast receiver app to set the audio quality to HIRES_192.

On GC4A 2.0 devices, whatever condition Qobuz uses to determine if the device can support HIRES does not work properly, so the max quality is always set to CD. All Qobuz needs to do is to fix the code for checking "if some condition is met", then Ultra would get 24/96 audio correctly. Unfortunately I can't directly reach out to the Qobuz developers, and I haven't had much luck with their regular customer service.
In the forum I linked to, David Craff of Qobuz seems quite responsive - as I recall, he’s actively involved in the development of Qobuz Connect and appears to be a fairly knowledgeable on all things Qobuz. It might be worth asking him in that thread.

Having said that, while that link suggested it’s capped at 24/96 by the Qobuz app across the board, this Qobuz page suggests otherwise and seems to put the onus on manufacturers of the receiving device: “For Chromecast, Hi-Res is supported in theory, although the results depend on the Chromecast device that receives the music, whether in CD quality or in 96/24 - 192/24. This is difficult to know before purchasing a device, as manufacturers tend to provide little or no information about this.”
 
In the forum I linked to, David Craff of Qobuz seems quite responsive - as I recall, he’s actively involved in the development of Qobuz Connect and appears to be a fairly knowledgeable on all things Qobuz. It might be worth asking him in that thread.

Having said that, while that link suggested it’s capped at 24/96 by the Qobuz app across the board, this Qobuz page suggests otherwise and seems to put the onus on manufacturers of the receiving device: “For Chromecast, Hi-Res is supported in theory, although the results depend on the Chromecast device that receives the music, whether in CD quality or in 96/24 - 192/24. This is difficult to know before purchasing a device, as manufacturers tend to provide little or no information about this.”
I think the Qobuz page you linked is the justification of why such mechanisms were in place to limit the max quality on the Qobuz receiver side. If Qobuz allows casting Hires across the board, users will complain to Qobuz when Hires content doesn’t play correctly on their device. Most of the chromecast integrated smart speakers I have worked on only decode up to 16/48.

Thanks for the info, I’ll try to DM David to see if I can be of any help. This should be a very easy fix for them, especially since Ultra has no problem playing 24/96 content as demonstrated by casting with BubbleUPnP. I’m genuinely hoping it’s not a business decision to help promote Qobuz connect though.
 
… especially since Ultra has no problem playing 24/96 content as demonstrated by casting with BubbleUPnP.
That’s unfortunately not my experience with BubbleUPnP playing the 24/192 track “Do it Again” by Steely Dan when Chromecasting to my Ultra which is feeding my Linn amp over USB - I only get 24/48 on the amp display and the playback stops after about 5-10 seconds. Conversely, it plays 24/192 over coax from my Pro with no issue. Playing the 24/96 track “Don’t Come Around Here No More” by Tom Petty at first seems to fare better on the Ultra, playing for longer before stalling but the USB feed still just showed 24/48.

That suggests to me that WiiM still have a part to play in the solution too…
 
@mrgene had pointed us to Google documentation clearly stating that this is not the case.


It depends on the implementation of the web receiver by the streaming provider. If they want to they can support higher resolution with Google Cast 2.0.
 
Back
Top