Resolution switches after TV turned off


I have a Vero 4K+ connected to a Yamaha RX-A870 receiver. When playing music I often turn of TV after selecting a file or playlist. My kids have noticed that after about five minutes after TV has been turned off the sound stops for a short time and comes back after a while.

I collected some logs from this behaviour, it happens at this point:
2021-01-02 19:38:19.164 T:4055888096 DEBUG: CEGLNativeTypeAmlogic: Detected HDMI switch

I also tried to set HPD lock to on, but after a reboot it is off again and seems to have no effect.

Any hints?


HDP lock should fix this. And it should persist, unless perhaps you are rebooting from the commandline.

It is not persistent. I enabled it via GUI and rebooted via GUI and afterwards it was disabled again. Have logs from this also:

After that I also tried to edit it directly, I stopped kodi, changed it in guisettings.xml, started kodi and it is disabled again:

# sudo systemctl stop mediacenter
# vi /home/osmc/.kodi/userdata/guisettings.xml


<setting id="videoscreen.lockhpd" default="true">false</setting>

changed to:

<setting id="videoscreen.lockhpd" default="true">true</setting>

# sudo systemctl start mediacenter

and it is disabled again:

<setting id="videoscreen.lockhpd" default="true">false</setting>

weird. I just checked and it’s working fine here. Maybe @sam_nazarko has an idea about that.

I don’t have a clue why that setting wouldn’t be persistent for you but a workaround might be to use advancedsettings.xml to set it on boot.

Try setting it in Kodi then going to Power -> Exit. Kodi will relaunch after a few seconds.

Is the setting now persistent?

That did it: HPD lock is now enabled! Visible in GUI and also in guisettings.xml

<setting id="videoscreen.lockhpd">true</setting>

I’m curious: whats the difference to a reboot?

My kids are currently testing for resolution switches when TV is off.

The sound still stops, but it is much shorter now, about 1-2 seconds. I don’t see any resolution switch in kodi debug log, but there are kernel messages:

Jan 03 13:26:34 mppc3 kernel: hdmitx: system: irq 80000004
Jan 03 13:26:34 mppc3 kernel: hdmitx: hpd: HDMI hpd locked
Jan 03 13:26:38 mppc3 kernel: hdmitx: system: irq 80000002
Jan 03 13:26:38 mppc3 kernel: hdmitx: hpd: HDMI hpd locked

HPD lock is still enabled.

Here are the full logs:

There’s sometimes a race condition in how Kodi exits which can prevent it from writing out changes to the guisettings.xml file fully.

Can you try another HDMI cable?

Ok, I’ll try changing the HDMI cable and report back.

I doubt there’s anything to be done about this. I get the same on my Vero-Yamaha-Panasonic setup. When you turn off the TV, I think the AVR and Vero are renewing the HDMI handshake. The connection will be muted in order to avoid pops and crackles while that happens.

I have changed HDMI cable. It is another original Vero4K+ cable I had lying around.

Still the same though: I start music, turn off TV and after ~5min this in kernel logs, sound stops exactly at this message for about 1-2 seconds:

Jan 03 19:42:11 mppc3 kernel: hdmitx: system: irq 80000004
Jan 03 19:42:11 mppc3 kernel: hdmitx: hpd: HDMI hpd locked
Jan 03 19:42:15 mppc3 kernel: hdmitx: system: irq 80000002
Jan 03 19:42:15 mppc3 kernel: hdmitx: hpd: HDMI hpd locked

I then tested the other way round: started music when TV was off via Kore app, listend 10min without sound going off. Then turned on TV and get the above messages in kernel log with sound going off.
The Yamaha receiver shows “Decoder off” at the same time.

Is there really nothing to be done about this as @grahamh says?

Do you have a another device that plays music through HDMI (?chromecast eg) which doesn’t exhibit this behaviour?

The log lines you posted show that Vero is doing nothing. It’s the AVR that’s re-setting the HDMI connection when it sees a change in the video chain.

Do you have a setting on the TV to just turn the display off? I use this on mine when listening to music.

I have my tvheadend server connected on the AVR, it is running latest LibreELEC stable. I’ll try with that.

In addition I’ll also check settings on my TV as @figrin_dan suggested and also on my AVR.

I just tried with my tvheadend device, it’s the same behaviour.

Log is a bit different though:

2021-01-04 20:22:10.000 T:140614605256832   DEBUG: NotifyXRREvent - notify display reset event                                                                                                 
2021-01-04 20:22:10.017 T:140614605256832   ERROR: WinSystemX11::RefreshWindow - failed to query xrandr                                                                                        
2021-01-04 20:22:10.018 T:140614585964288   DEBUG: CActiveAE - device change event                                                                                                             
2021-01-04 20:22:10.329 T:140614585964288    INFO: CAESinkALSA - Unable to open device "surround21:CARD=PCH,DEV=0" for playback                                                                
2021-01-04 20:22:10.331 T:140614585964288   DEBUG: CAESinkALSA - HDMI device "hdmi:CARD=PCH,DEV=0" may be unconnected (no ELD data)                                                            
2021-01-04 20:22:10.335 T:140614585964288   DEBUG: PulseAudio: Context authorizing                                                                                                             
2021-01-04 20:22:10.337 T:140614585964288   DEBUG: PulseAudio: Context setting name   

So I belive the Yamaha AVR is to blame for that behaviour. I found no option/setting on it that seems related.

Fortunately my TV has a setting to just turn off the screen as @figrin_dan suggested. Using this, it works now :slight_smile:

Thanks for all your help!


Glad to be of help.