Таким образом, я могу использовать «tvservice -o», чтобы отключить HDMI на Raspberry Pi, и «tvservice -p», чтобы снова включить его. После повторного включения мне, по-видимому, нужно выполнить «fbset -depth 8 && fbset -depth 16», чтобы снова включить буфер кадров, а затем принудительно перерисовать X11.
Мой вопрос в том, как мне это сделать в C? У меня есть приложение X11, и я могу без проблем управлять перерисовкой X11, но как отключить/повторно включить HDMI в C и как снова включить буфер кадров после повторного включения HDMI?
Чтобы дать представление, у меня есть безголовое приложение, работающее как своего рода медиа-сервер, управляемый приложением Android. В настоящее время я постоянно отключаю отключение HDMI после тайм-аута. Однако для экономии энергии я хотел бы отключить HDMI, когда приложение не используется, а затем снова включить его и отобразить приложение RPi на экране с помощью libcec, чтобы определить, когда телевизор использует соединение HDMI RPi для включения HDMI и выключенный.