ビデオメモリからGUIデータを取得して読み取る方法

ビデオメモリからGUIデータを取得して読み取る方法

e-inkディスプレイをシングルボードLinuxシステムPINE64に接続したいです。 e-インクディスプレイをメインディスプレイとして使用する必要があります。つまり、GUIを表示する必要があります。 eインクディスプレイを通常のグラフィックポート(HDMI、VGA、DVIなど)に直接接続する方法がないので、Linuxでグラフィックメモリに到達してGUIデータを読み取って解析することができるかどうかを知りたいです。電子インクディスプレイ用に送信し、SPIまたはI²Cを介してデータをディスプレイコントローラに送信します。これが可能であれば、どのディストリビューションで可能ですか?

これまで私は方法を見つけました。定期的にスクリーンショットを撮って画像として保存し、画像を解析してSPIを介してディスプレイコントローラに送信します。しかし、この方法は効率的ではないと思います。

それとも別のオプションがありますか?

ベストアンサー1

以下のリモートフレームバッファプロトコル RFB の実装を考えることができます。RFC 6143。これは次のために発生します。仮想ネットワークコントローラサーバーとクライアントは、多くのシステムで共通して使用されます。 Linuxでは、パッケージをtigervnc-serverサーバーXvnc(またはスクリプトフロントエンド)と呼ぶことも、一般的なX11クライアントパッケージと呼ぶこともできますが、vncserverバージョンは異なります。tigervncvncviewer

プロトコルは以下のように記述される。ここ(pdf)。軽量で顧客が簡単に実装できるように設計されています。画面の変更された部分だけを再描画する必要があるという利点があります。

おすすめ記事