Raspberry Pi 4 HDMI Output

@Joachim_Strobel @David_Snyder

I’ve only seen RPi4 HDMI MCH reported working by way of a hack:

Raspberry Pi Music Server With Built-in Crossover and DSP : 12 Steps (with Pictures) - Instructables

When you guys say wrongly assigned, are you actually hearing more than 2 channels to wrong speakers?

Or only hearing 2 channels on the wrong speakers?

Volumio with Roon Bridge as Plugin can output multichannel through HDMI.
I’ve used Volumio not on a RPi, but on a Sparky and x86-PC and also here the channels are not assigned correctly.
Now I’ve changed to Rock (used only as endpoint), where this problem doesn’t occure.

Hi @Burkhardt_Petermann ,

Linux on PC hardware (like ROCK, Volumio, HQPlayer Embedded, Ubuntu etc) can all do it no problems but Linux on RPi4 hardware (which is what this thread is specifically about) is the challenge.

Sparky is/was a RPi with some changes…
Also I’m using PicorePlayer on a RPi3 with Roon Bridge and HDMI out (until eight channels with 192/24) and there don’t exists the “channel problem”.

There are quite important differences. They aren’t the same even though both are small SBCs.

As an example, ask RoPieee developer (who supports RPi4) why Sparky was not supported… And why DietPi development on Sparky has slowed (stopped?)

That’s interesting, I have an RPi3 somewhere I can test.

I believe that I hear 4 channels. The centre channel seems to be the issue.
I hear more noise when switching to Mch. That is the reason why I am not following it up more.
For 2ch from HDMI, HDCP does not have to be engaged. For Mch it has to be added and a license has to be obtained by the vender. I am not sure if Raspi does have a proper HDMI Mch license. The various experiences with Mch from the Raspi might reflect the developers courage to take a chance. It would be great to read more about this issue.

1 Like

I did ask @spockfish if he could support HDMI output with RoPieee but received no response here:

RoPieee XL and HDMI output of RPi4 - especially multichannel

Harry I would be happy to donate (3rd or 4th donation of mine) for you to test with an AVR if that made it easier, if you don’t have access to an AVR?

Or is there a technical reason you can’t support it?

I’ve explained a few things that right now it’s not on my list. First I don’t have such a device, second I’ve never seen a good implementation: lot’s of engineering bits involved which just cost a serious amount of time. Right now (I’m a ‘2.0 guy’) I don’t see the benefit (and fun) in spending that time.

Thanks

Actually I asked because you said it was on your list:

I’ a 2.0 guy also but use an AVR to do DSP crossover DA and amplification for 3-way stereo (2 channel) speakers and pair of subs…

So multichannel use is not limited to multichannel music content, FYI…

Cheers

Ok, I had to be more clear:

It’s off my list. For stereo it does not make sense (the HDMI route on the Pi is notoriously bad wrt jitter).

But the main issue (for me at least) stands: too much work for something I’m not going to use myself.

2 Likes

I have a test track that plays a series of tones in this order: L, C, R, RS, LS. When I send this to the RPi4, the order is incorrect. What’s really strange is that order that I hear sometimes varies from run to run. Also, sometimes channels are skipped entirely.

Last time I tested, this was with DietPi and Roon Bridge. HDMI out into an Emotiva RMC-1L (which may have been the cause of the missing channels. Emotiva firmware is horrible).

Same test track plays correctly on the Intel NUC (running Windows 10) that I have connected via HDMI to the RMC-1L.

1 Like

The randomness is a major problem.

I’d probably be willing to investigate if it was wrong channels as long as it was consistently wrong.

But I can’t deal with randomly wrong.

I might look into Volumio on a fanless Intel Atom based headless PC, like my UpBoard Gateway.

As mentioned before: Also volumio on a x86 system will not work correctly in multichannel (test sequences seems ok, but the music mostly not).
Easiest solution is to install Rock (you mustn’t use the core) on a small fanless system. I’m using here a Zotac Nano CI 329, which sends now all the multichannel stuff in every case in a correct way through HDMI.
And again: Picoreplayer is a other solution, which handles multichannel correctly.

1 Like

But you haven’t tried on x64 PC correct?

Zotac Nano CI 329 → 64 bit system

My last post here…

I’ll try Volumio on x64 … I’m not interested in ROCK.

I need both Roon Bridge and HQPlayer NAA support.

I use a Raspi‘s HDMI Output to feed a NanoAvr running Dirac. I feed that NanoAvr on the second port with an Oppo 103 HDMI output. I can not hear a difference between these two HDMI source. So this HDMI jitter is survivable. As the NanoAvr‘s DAC is no that great, I fed the NanoAvr‘s Hdmi output into a Parasound DAC 2000 via an Spdif extractor. While that DAC sounds better than the NanoAvr‘s one, I still do not hear differences between the HDMI routes. So for 2 channels I would say the Raspi HDMI output is good. Are you saying that for Mch that HDMI performance gets worse?
There are not many boxes like the Raspi that allow RAAT to HDMI or ADC to HDMI with a HAT. Hence, it would be great to see this HDMI port to be supported more.

I wouldn’t worry too much about his jitter comment, unless someone shows AVR analogue output measurement showing this jitter is a problem.

The most important point is Harry isn’t interested unfortunately but that’s fair enough. If he won’t use this feature I can understand lack of motivation.

I’m contacting other distros and will let you know if I find something.

Hi guys,

I read in several contributions in this thread that you got MCh over HDMI working on Pi3 or 4 with either Volumio or piCorePlayer.

For me only stereo worked so far with my Pi 3B+ - using the distro’s player or via roon. The only combination I was not able to test yet is the roon bridge on piCorePlayer (extra installation hassle).

So what am I missing? Is there special tweaks or settings to be applied?

I tested this too by now, but stereo is the only thing I get over HDMI.

Is there no way around compiling your own piCorePlayer with different ALSA settings and if yes, where could I find corresponding instructions?