Congrats on getting PiOS64 into beta - have been trying it out on a Pi4 over the last few days, looks great!
One minor thing
(which actually came up in testing the forthcoming 1.6.0 gentoo-on-rpi-64bit release on a Pi4, but happens on PiOS64 too), is pulseaudio's behaviour with the headphone output under a dual monitor setup / fkms.
Under the current rpi-5.4.y kernel / firmware
(in the 64-bit OS anyway, haven't tested a 64/32 or 32/32 system - so apologies if this isn't 64-bit specific), each of the HDMI0 and HDMI1 port's audio, and the onboard headphone jack,
show up as separate ALSA devices.
Without pulseaudio installed (or the pulseaudio daemon suspended) all three can be used without issue (e.g. via speaker-test). So far so good.
However, when pulseaudio
is running, it detects all three sinks OK, but does not allow output to the headphone port. What's particularly odd is that when the Pi4 is booted with only
one HDMI port connected, the headphone jack works under pulseaudio just fine (and can be switched via pavucontrol etc). Also, adding e.g. a USB-to-headset adaptor to the system also works (even with two monitors connected) under pulse.
I appreciate pulseaudio isn't on the PiOS64 image as shipped, but I wonder if something at the driver level might be going on here (given that pulse locks all the ALSA endpoints when it starts up). I have worked around this (sort-of) with the following udev rule (which works on PiOS64 too), placed in /lib/udev/rules.d/79-rpi-pulseaudio-fixes.rules:
Code: Select all
SUBSYSTEM!="sound*", GOTO="end"
ACTION!="change", GOTO="end"
KERNEL!="card*", GOTO="end"
# remove the 'internal' sound form factor, so more descriptive
# names are used in pulseaudio for bcm... entries
ENV{SOUND_FORM_FACTOR}=="internal", ENV{SOUND_FORM_FACTOR}=""
# uncomment to ignore audio sink on HDMI1, even if present, so that
# headphones + HDMI0 audio will work in pulseaudio - temporary workaround
ATTRS{id}=="b2", ENV{PULSE_IGNORE}="1"
LABEL="end"
This stops the "b2" endpoint from being picked up by pulseaudio at all (making a two-monitor system look like a single-monitor system from the PoV of audio), which allows the user to access the HDMI0 monitor's audio, and the built-in headphone jack, successfully. Obviously not ideal but probably better than 2 HDMI outputs, but no headphones.
best,
sakaki