問題タブ [skia]

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.

0 投票する
2 に答える
3844 参照

android - SkiaおよびAndroidPaintの描画オブジェクトとその使用またはドキュメント

Androidで使用されるSkia描画ライブラリの優れたドキュメントを知っている人はいますか?

メインのCanvasオブジェクトにはほとんど状態がないので、特にPaintオブジェクトに埋め込むことができるオブジェクトについて考えています。いくつかのColorFilterの使用方法を試行錯誤して試し、ColorMatrixColorFilterを使用してクールな効果を作成しました。これで、LinearGradientシェーダーからも必要なドロップシャドウができました。私はPathEffectsを理解していて、XferModesについていくつかのアイデアを持っていると思います。MaskFiltersとRasterizersはまだ私には完全に不透明です。しかし、試行錯誤は複雑なライブラリを理解するための良い方法ではありません。

ほとんどの場合、Androidドキュメントで2Dグラフィックスとその使用方法がまったく説明されていないことが心配です。クラスjavadocsでさえ、クラスが何をしているのかを説明していないことがよくあります。実際の関数はすべてSkiaCコードであり、私はそれを入手できますが、ドキュメントもありません。私はいくつかのクールなデモを見てきましたが、Googleはそれらがどのように行われたかについてほとんど説明しませんでした。

これらのことを実験してCコードを読むことを理解する唯一の方法はありますか?効率とベストプラクティスはどうですか?Davlik / Android VMはメモリ割り当てに敏感で、時々遅くなり、私は物事を最善の方法で行っていないのではないかと心配しています。

0 投票する
1 に答える
1015 参照

android - Androidプラットフォームを部分的に構築しています

Android の Skia グラフィックス ライブラリを少し変更したいと思います。

プラットフォーム全体をダウンロードしてビルドせずに、変更されたライブラリのみを再ビルドすることは可能ですか? プラットフォームは大規模で、これは面倒すぎる..

Skia が依存する少数のプロジェクトをダウンロードしてビルドすることは私には問題ないように思えますが、ビルド スクリプトにはすべてが必要です!

ありがとう、タレク

0 投票する
4 に答える
7371 参照

android - Skia Decoder がリモート ストリームのデコードに失敗する

JPEG 画像のリモート ストリームを開いて Bitmap オブジェクトに変換しようとしています。

デコーダーは null を返し、ログに次のメッセージが表示されます。

注:
1. コンテンツの長さはゼロではなく、コンテンツの種類はimage/jpeg
2 です。ブラウザで URL を開くと、画像が表示されます。

ここで私が見逃しているのは何ですか?

助けてください。ありがとう。

0 投票する
9 に答える
18952 参照

android - BitmapFactory.decodeStreamは常にnullを返し、skiaデコーダーはdecodeがfalseを返したことを示します

ここで画像をテストします:http: //images.plurk.com/tn_4134189_bf54fe8e270ce41240d534b5133884ee.gif

インターネットで見つかったいくつかの解決策を試しましたが、実用的な解決策はありません。

次のスニペットコードを使用しています。

常にこのログを取得します:

何か助けはありますか?ありがとう。

編集:

デコードに失敗した画像もに表示できませんWebView。しかし、ブラウザで開いているかどうかを確認できます。

0 投票する
1 に答える
1041 参照

android - ~SkSpriteBlitter() を返すと、skia ネイティブ クラッシュが発生しました

return 時に skia ネイティブ クラッシュが発生しました~SkSpriteBlitter()。以下はトゥームストーンとスタック トレースです。誰かが以前にこの問題を抱えていますか?

0 投票する
4 に答える
25142 参照

android - Androidグラフィックス内部

Androidグラフィックシステムがどのように機能するか、具体的にはディスプレイサーバーを使用しているか、DirectFBまたはX11に基づいているかなどについて明確な説明が見つかりません。

私が何とかまとめたものから、AndroidはLinuxフレームバッファに依存しています。ただし、Androidがフレームバッファへのアクセスを多重化するためにどのような種類のディスプレイサーバーまたはウィンドウマネージャーを使用するかについてはあまりわかりません。そのため、ポインターをいただければ幸いです。

最後に、私が理解していることから、ARM命令セットはOpenGLを高速化するための命令を提供しますが、これがディスプレイサーバーとどのように統合されるかは明確ではありません。クライアントアプリケーションは、クライアントが直接書き込む共有メモリバッファをネゴシエートしますか?

プラットフォームアクセラレータ用のOpenGLライブラリはオープンソースですか?クローズドソースのバイナリであることを示唆する参考資料をいくつか見つけました。繰り返しになりますが、ポインタをいただければ幸いです。

0 投票する
1 に答える
2683 参照

android - AndroidアプリケーションでのJPEGハードウェアデコードのサポート

私のAndroidアプリは、Android 2.2電話(およびそれ以降)で高解像度ベースのJPEG画像をデコードする必要があります。現在、BitmapFactory.decodeStream API、つまりSKIAライブラリを使用してストリームをデコードしています。

1)私の知識によると、SKIAはソフトウェアデコードを使用します。つまり、libJPEGを使用してデコードし、ハードウェアデコーダーを使用しません。私が間違っている場合は私を訂正してください。

2)JPEGストリーム(SKIA以外)をデコードするより速い方法はありますか?

3)「メディアフレームワーク」を使用してJPEGハードウェアデコードを提供できますか?私の観察によると、それはビデオとオーディオにのみ使用できます。

0 投票する
2 に答える
677 参照

android - Android の Picture.writeToStream() によって保存される形式は文書化されていますか?

ソースを見ることができることは知っていますが、android.graphics.Picture.writeToStream(OutputStream).

0 投票する
0 に答える
788 参照

c++ - ハニカム上で skia を使用して描画中にメモリがクラッシュする

スタック上の「SkPath」のオブジェクトをインスタンス化する関数があります。その後、「moveTo」、「lineTo」、「cubicTo」などのいくつかの関数を呼び出します (これは、SkPath オブジェクト内の内部配列に新しいポイントを追加するだけです)。次に、同じくスタック上で「SkPaint」クラスのオブジェクトをインスタンス化します。

次に、「SkCanvas」オブジェクトの「drawPath」関数を呼び出し、引数として SkPath および SkPaint オブジェクトを渡すと、クラッシュします。

私はいくつかの調査を行いました。sk_bzero(this, sizeof(*this));SkPaint のコンストラクターが("memset" to 0 for "pointer" with "*pointer") を呼び出すことによってその (SkPaint の) オブジェクトを null にしているため、SkPath 内の配列はもう有効ではないことがわかります 。事前に宣言された SkPath のオブジェクトに属する配列へのポインタ。

SkPath の前に SkPaint をインスタンス化することで修正しましたが、問題はまだ残っています。Android 2.2 でも同じコードで問題なく動作します。

ハードウェアアクセラレーションを使用していません。

0 投票する
3 に答える
5882 参照

android - AndroidSKIA画像デコード

こんにちは、

私は現在、Androidがどのようにデコードして画像ファイルを作成するかを研究しています。コードを確認したところ、SKIAライブラリを呼び出しているようです。しかし、ソースコードに基づいてandroid / skiaでサポートされている画像ファイル形式をどのように知ることができますか?

私はプログラミングの専門家ではないので、C++とJava言語を理解しようとしています。

SkImageDecoder* decoder = SkImageDecoder::Factory(stream);BitmapFactory.cpp(JNIファイル)内で迷子になりました。SkImageDecoder::Factory(stream)テンプレートのようです。

誰でも私に何が起こっているのか説明できますSKImageDecoder::Factory()か?フィードバックをいただければ幸いです。

ありがとう、
artsylar