2018-03-01, 18:05
I am mainly testing this using Recalbox, but the same issue has been noticed in RetroPie.
Here's some background for anyone that doesn't know what fbcp is. fbcp is a process that clones the /dev/fb0 to /dev/fb1. This allows me to run an LCD on /dev/fb1 and also have HDMI output on /dev/fb0 for any time I want to plug into a TV or Monitor. This works well, EXCEPT when a process tries to change the parameters of /dev/fb0. Then fbcp will choke and the LCD will freeze (at whatever was on screen before fbcp choked).
In this case, I don't want anything changing my HDMI resolution, even if it "changes" it to what it already was.
If I run 'tvservice -s' before starting Kodi and then again after Kodi is running, I will see the same output. The resolution is the same, but fbcp will choke when Kodi starts. If I don't run fbcp until after Kodi is running, fbcp will properly drive the LCD as expected, but I need to run fbcp at system startup. Kodi isn't the only thing that I run, so it needs to be able to run whatever, then run Kodi, and then back to whatever else.
I found out that I can use tvservice in monitor mode.
When I run Kodi, I see this output.
The other processes I run do not produce any output there (unless they are set to change their resolution which will also break fbcp).
How can I get Kodi to leave the HDMI parameters alone? It seems to be setting the HDMI to previous setting. Can I get it to just skip trying to set it?
Here's some background for anyone that doesn't know what fbcp is. fbcp is a process that clones the /dev/fb0 to /dev/fb1. This allows me to run an LCD on /dev/fb1 and also have HDMI output on /dev/fb0 for any time I want to plug into a TV or Monitor. This works well, EXCEPT when a process tries to change the parameters of /dev/fb0. Then fbcp will choke and the LCD will freeze (at whatever was on screen before fbcp choked).
In this case, I don't want anything changing my HDMI resolution, even if it "changes" it to what it already was.
If I run 'tvservice -s' before starting Kodi and then again after Kodi is running, I will see the same output. The resolution is the same, but fbcp will choke when Kodi starts. If I don't run fbcp until after Kodi is running, fbcp will properly drive the LCD as expected, but I need to run fbcp at system startup. Kodi isn't the only thing that I run, so it needs to be able to run whatever, then run Kodi, and then back to whatever else.
I found out that I can use tvservice in monitor mode.
Code:
# tvservice -M
Starting to monitor for HDMI events
Code:
[I] HDMI in DVI mode
The other processes I run do not produce any output there (unless they are set to change their resolution which will also break fbcp).
How can I get Kodi to leave the HDMI parameters alone? It seems to be setting the HDMI to previous setting. Can I get it to just skip trying to set it?