問題タブ [directfb]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
embedded-linux - xserverからxdirectfbへ
こんにちはxserverをアンインストールして、小さなウィンドウマネージャーでxdirectfbを使用することは可能ですか?xdirectfbで使用したいすべてのアプリケーションをソースからコンパイルする必要がありますか?
これらのリンクから、それは私には明らかではありません:
c - 2 ビットカラーを 8 ビットカラーに変換する
赤、緑、青にそれぞれ 2 ビットずつ、6 ビットの色値を使用しています。したがって、黒は binary 000000
、 red 110000
、 blue 000011
、 yellow111100
などで表されます。
この色を 24 ビットの RGB 値に変換して、グラフィックス レイヤー (DirectFB) に渡す必要があります。3(バイナリ11)は255(0xFF)になるので、85(=255/3)を換算係数として次の式を使います。
これにより、色が正しく変換されます (白 [0x3F -> 0xFFFFFF]、赤 [0x30 -> 0xFF0000] など)。
現在、これらの色は、テレビに表示されるテキストとキャプションの背景色であり、ビデオに埋め込まれた参照カラー パレットを含むテスト ストリームがあります。この式を使用して取得した 8 ビット カラーを画面に描画すると、ビデオに表示されている基準色と正確には一致しません。かなり近いですが、違いがあります。
変換を正しく行っていますか、または 2 ビット RGB カラー値を 8 ビット RGB 値に変換するための標準アルゴリズムはありますか? DirectFB は内部で別の表現 (RGB565 など) を使用している可能性がありますか?
85 を 48 (試行錯誤で見つけた値) に置き換えると、色はほぼ完全に一致します。
linux - DirectFB 用の FireBreath NPAPI プラグインをビルドできますか?
DirectFB、組み込み Linux で実行されている Webkit ブラウザ用の FireBreath を使用して NPAPI プラグインを構築することは可能ですか?
ubuntuでテストプラグインを構築しているときに、以下のx11関連ファイルを使用していることがわかったので、質問しています。
GUI プラグインは作りたくありません。JavaScript を使用してブラウザから外部メディア プレーヤーを制御できるプラグインを作成しています。
c++ - DirectFB エラーを使用する SDL アプリ: 使用可能なビデオ デバイスがありません
これが単純なものであることを願っています。Ubuntu Linux デスクトップから組み込み Linux プラットフォーム用のアプリを作成しています。アプリ自体は X11 で正常に動作します。fbcon ドライバーと /dev/fb0 を使用して動作させることもできます。
ただし、putenv("SDL_VIDEODRIVER=directfb");
「使用可能なビデオ デバイスがありません」というエラーが表示された場合
私はまだSDLにかなり慣れていないので、何が起こっているのかわかりません。「apt-get install libsdl」を使用して、ubuntu デスクトップに libsdl をインストールしました。では、標準の ubuntu SDL ビルドは DirectFB をサポートしていないのでしょうか? これが機能する前に、他にインストール/セットアップ/実行する必要があるものはありますか?
または、もっと重要なことに、fbcon が正常に動作しているときに DirectFB を動作させようとする点/利点はありますか? DirectFB を使用すると、ビデオ モードを正しく設定でき、fbcon が提供しない何らかの形式のハードウェア アクセラレーションを提供できると思いました。
android - Android GUI アーキテクチャ - Surface/view/window/canvas の関係
=========================
更新: 数日間のグーグルと実験の後、私はそれらのばかげた質問のほとんどに対する答えを見つけました. 私が提出した回答を参照してください。
=========
Androidウィンドウの責任は何ですか?
ここにいくつかの質問があります:
- 入力を収集してディスパッチする責任がありますか?
- ビューとウィンドウの関係は? DFBの面と窓の関係と同じ?
- アクティビティとウィンドウの関係は? 各アクティビティにはウィンドウがありますか?
- アプリケーションからウィンドウを作成することはできますか? そして、いつそれが必要ですか?
- Android はマルチウィンドウをサポートしていますか?
編集:さらに質問を追加:
Window、View、Canvas、Surface などのさまざまなクラスの責任と、それらが互いにどのように連携するか
通常、アクティビティにはいくつのウィンドウがありますか?
3.1 つのアクティビティ内のすべてのビューが Window にアタッチされますか? attach とはどういう意味ですか?
すべてのウィンドウには表面がありますか? すべてのキャンバスには表面がありますか?
View は focus/keyEvent/ manager を担当しますが、Cavus は「描画」操作のみを担当します。
WindowManagerはウィンドウのスタックを担当していますか? それは SurfaceFlinger とどのように関連していますか?
View は Surface を所有していません。ビューに含まれる Window は所有していますか?
ビューは、surface.lockCanvas() を呼び出して取得したキャンバスを使用して自分自身を描画します。
onDraw(Canvas) はいつ呼び出されますか? どのように、誰がキャンバス パラメータを渡しますか?
キャンバスにはサイズがありますか? Window のサーフェスは常にフルスクリーンになりますか?
もう一度編集:
Romain Guy http://www.youtube.com/watch?v=duefsFTJXzc&feature=feedwll&list=WLによって提供されたこの素晴らしいプレゼンテーションを見た後、いくつかの質問が解決され、さらにいくつかの質問が追加されました:)
- すべてのアクティビティには 1 つの ViewRoot があり、したがって 1 つのウィンドウがありますか?
- 明示的にウィンドウを作成する必要はありますか? ウィンドウの表面は常にフルスクリーンになりますか?
- ステータス バーは別のウィンドウに表示されますか?
- 表面の大きさは?それは常にフルスクリーンになりますか?
framebuffer - メモリバッファからのDirectFBデータ
画面にデータバッファを表示する非常に高速な方法が必要です。私は最初にLinuxフレームバッファにアクセスしようとしましたが、それは非常に優れていることがわかりました。次に、directFBについて学び、directFBが提供する追加機能(高速memcpy、オンザフライでの画像のサイズ変更、追加のコードの必要なしなど)が気に入りました。しかし、それから私は障害にぶつかりました-すべての例はファイルからロードされる画像のためのものです。私が知る限り、その「DataBuffer」タイプの例/チュートリアルはありません。ドキュメントとソースコードを調べた後、私は次のようなものをコンパイルすることができました。
つまり、基本的には、DFBからDataBufferを作成し、次にDataBufferからImageProviderを作成して、サーフェス上にレンダリングするように設定しています。ただし、実行するとエラーが発生します。
メソッドは本当に実装されていませんか?私は現在DirectFB1.4を使用していますが、APIドキュメントから関数がそこにあるはずです。そうは言っても、DirectFBを使用してメモリからバッファ(char * 640 * 480 * 4 RGBA)を取得してフレームバッファにレンダリングする方法を知っている人はいますか?
ありがとう。
qt4 - Qt組み込み+ directFBで複数のフレームバッファにアクセスしますか?
組み込み Linux/MIPS デバイス用の Qt アプリケーションを開発しています。これまでのところ、デバイスで Qt アプリケーションを実行することができました。次に、ビデオの上にオーバーレイを作成する必要があります。ハードウェアは 4 つのオーバーレイ ウィンドウを提供しますが、OpenGL はサポートしていません。
これまでに試した:
- ビデオの上にオーバーレイを作成
QStackedLayout
して作成しようとしました。QGraphicsView
ただし、オーバーレイのウィジェットはユーザーのクリックに応答しますが、オーバーレイは黒く表示されます。 - 複数のフレームバッファに直接アクセスしようとしました。/dev/fb0にはアクセスできますが、/dev/fb1、2、3にはアクセスできません。
- ダイアログとプッシュボタンを備えた簡単なQtアプリケーションを作成してみました。このコマンドを使用して組み込みデバイスで実行してみました
./<appname> -display directfb:/dev/fb1:2
。しかし、/dev/fb1を開くことができません。
質問:
- LCD コントローラが提供するオーバーレイ ウィンドウを使用するにはどうすればよいですか?
- QT が提供する directfb プラグインを使用して、その OpenGL サポートを利用することは可能ですか?
- /dev/fb1を使用できるようにするには、ユーザー空間に明示的にマップする必要がありますか?
これに関する緊急の助けが必要です。
opengl-es - Qt-4.6.2 を使用した Directfbgl
Linux/MIPS デバイス用に directfb-1.4.14 でクロスコンパイルされた Qt-4.6.2 を使用しています。ビデオを再生する QT アプリケーションの上にオーバーレイを作成しようとしています。最近、directfb の Web サイトのニュースで、DirectFB 上の Qt アプリケーションが OpenGL を利用できるようになったことが更新されました。これが私の質問です:
- Linux/MIPS デバイス上の Qt-4.6.2 で directfbgl を使用することは可能ですか? はいの場合、directfbgl を Qt-4.6.2 とマージしてクロスコンパイルするにはどうすればよいですか?
- Directfbgl アプリケーションは、OpenGL をサポートしていないハードウェアで実行できますか?
誰でも私を助けてもらえますか?
linux - キーボードがラテン文字の間違ったキーコードを返す
DirectFB v1.4.2 / Linux キーボード ドライバーを使用してキーの押下を処理するアプリケーションを作成しています。ラテン文字の値が正しくないキー コードを受け取りました。USB キーボードで文字「a」を押すと、「0xF601」の Unicode 値を受け取ります。しかし、ラテン文字 'a' の Unicode 値が異なるようです。ここで何がうまくいかないのか教えてください。DirectFB で設定する必要がある特定の設定はありますか?
前もって感謝します。
linux - X なしの Mesa3D
過去 2 日間、このトピックの検索に費やしましたが、最新の回答は見つかりませんでした。最新の開発LFS (カーネル 3.4.1 に基づく) に基づいているが、X サーバーをインストールしていないテスト プロジェクトがあります。そして、OpenGL ES 2.x を使用する Mono を使用する (または使用しない) アプリケーションを構築したいと考えています。
私はMesa3Dを使用できましたが、彼らのサイトから見ると、それは X に依存しています。DRI を見ましたが、まだ X に基づいています。
質問: Mono を使用して Linux カーネル 3.4.1 で X なしで OpenGL ES 2.x を実行する方法はありますか (または使用しないでください)?
EDIT 1:今のところ、x86またはx64 PCをターゲットにしています。では、OpenGL ES を使用するのは賢明でしょうか?