問題タブ [firebreath]

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 投票する
1 に答える
1041 参照

firebreath - プラグインからブラウザへのビデオのストリーミング

QVGA ビデオのストリームを受信するブラウザ プラグインを作成しています。JavaScript からプログラムでインターフェイスできる方法で、そのビデオをブラウザーにストリーミングしたいと思います。たとえば、要素や Image() オブジェクトなど、キャンバスにフィードできるものです。

注: これは、プラグインがウィンドウに描画されるのを回避しようとしていることを意味します。それができることはわかっていますが、ページの残りのレンダリングとうまく相互作用し、よく知られているオブジェクト モデルも備えているものが必要です。実装する必要はありません。

トリッキーな部分は、それを高速に行う方法です。たとえば、srcプロパティをbase64でエンコードされたデータを持つように設定することでそれを行うことができますが、オーバーヘッドはかなり高くなります。

私の質問は、より多くのオーバーヘッドを回避する方法があるかどうかです (たとえば、画像をフォーマットして base64 エンコードする代わりに生の画像バッファーをフィードして、ブラウザーにデコードさせるだけです)。

環境に関しては、Firebreath を使用してプラグイン (NPAPI/ActiveX をほとんど抽象化した C++) を作成しており、Mac と Windows のサポートを維持したいと考えています。NPAPI を直接使用することは許容されますが、私はむしろしたくありません。

編集:要素を使用し、データ UI スキームを使用してその 'src' プロパティを base64 でエンコードされたビットマップに更新することで問題を解決しました - (例: imageJSObject->SetProperty('src', 'data:image/bmp;base64,<encoded BMP>'); パフォーマンスは良くありませんが、十分です. 主な注意点は、少なくとも Chrome 15 では、src プロパティを変更するたびに onload が起動されるのではなく、1 回だけ起動されるため、独自のイベントを生成する必要があることです。各更新後。

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

google-chrome-extension - C / C ++でChrome拡張機能を含むファイルを開く方法は?

Chrome拡張機能で「config.txt」などの解析するファイルを開こうとしています。

Javascriptを使用すると、かなり簡単になります。例:chrome.extension.getURL('config.txt')のようなものを取得しますchrome-extension://kfcphocilcidmjolfgicbchdfjjlfkmh/config.txt

ただし、拡張子のC ++(またはC)コードでは、このようなURLでファイルを開くことはできません。

この場合、拡張子が大きいファイルを開く方法はありますか?

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

html - NPAPI プラグイン上の HTML

FireBreath と OpenGL を使用してブラウザー プラグインを作成し、オブジェクト タグを使用してプラグインを埋め込んだ後、プラグインの上にさまざまな HTML 要素を重ねてみました。残念ながら、タグとプラグインのグラフィックは、私が何を試しても、常にページ上の他の HTML 要素の上に表示されていました。

私の知る限り、Flash プラグインは次のように HTML オーバーレイを許可します。

またはタグで HTML オーバーレイを有効にする一般的な方法はありますか? そうでない場合、NPAPI/ActiveX プラグインでオーバーレイを有効にする方法はありますか、または FireBreath は何らかの形でこの機能をサポートしていますか?

プログラミングを始めて以来、StackOverFlow は私の主要なリソースです。

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

winapi - メッセージのみのウィンドウ ハンドルに CustomWndProc を使用したコールバック

firebreath を使用して NPAPI プラグインを開発しています。サード パーティの dll を使用してゲーム デバイスに統合しています。デバイスの入力は、デバイスへのチャネルを開くときに登録されたメッセージのみのウィンドウ (HWND) を介してプラグインに伝達されます。

最初に、デバイス ドライバーとのハンドシェイク、handshake(HWND,...) が行われ、その後、ユーザーの入力時に CustomWinProc() でコールバックが行われ、通知されます。

私は次のことをしました、

- WIN-CustomCallbackHandler.h の下に Header&CPP ファイルを作成し、

-CustomCallbackHandler.cpp

- Factory.cpp - PluginWindowWin をオーバーライドする次のメソッドを追加

-MyFirstPluginAPI.cpp-(自動生成された JSAPIAuto サブクラス)- JS メソッド。

ここで、デバッグすると、通常のプラグイン イベントに対して customcallbackhandler が数回呼び出されるのを見ることができましたが、デバイスによって生成されたイベントは利用できません。メッセージ ウィンドウの別のインスタンスが dll に渡されたと思います。

-PluginWindowWin のハンドルを取得するにはどうすればよいですか?
-CustomCallbackHandler でコールバックを受信したら、カスタム sendEvent() を生成するにはどうすればよいですか?

あなたの助けは非常に高く評価されています。

私は Java 開発者ですが、C++ プログラミングの経験はあまりありません。私は根本的な何かが欠けていると信じています。

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

cocoa - NSApplicationPresentationOptions は FIREBREATH では機能しません

私が取り組んでいるプラグインからユーザー エクスペリエンスをカスタマイズしようとしています。私の目標は、COCOA NSApplication で利用可能なオプションを使用してキオスク スタイルを提供することです。コードは次のようになります。

通常のココア アプリケーションを使用してこのコードをテストしたところ、正常に動作しますが、このコードを "Firebreath PlugIn" 内の関数に埋め込むと、firebreath は正しくビルドされ、他の関数は正常に動作しますが、何も起こりません。

いくつかのアイデア?これはおそらくシステムのセキュリティ制限に関するものですか?? もしそうなら、それを有効にする方法は?他のココア機能が正常に機能しているのに、なぜこれが機能しないのかわかりません。

XCODE 4.2を使用してMac OS X Lionで開発しています

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

cocoa - NSDistributedNotificationを送信し、応答を取得します

ココアアプリケーションに通知を送信するfirebreathプラグインを作成しました。通知が正常に受信された場合にアプリケーションから応答を取得する方法はありますか?

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

objective-c - Firebreath MethodConverter.h 無効な初期化

こんにちは、firebreath プロジェクトを作成しました。このメソッドをデフォルトの生成コードに追加しました。

アプリケーション API ヘッダー ファイル (MYAppAPI.h) 内:

アプリケーション API ソース ファイル (MAppAPI.mm 私は Objective-C を使用しています):

しかし、コードをビルドすると、次のエラーが発生します。

...firebreath/src/ScriptingCore/MethodConverter.h:115: エラー: タイプ 'std::basic_string, std::allocator >' のテンポラリからのタイプ 'std::string&' の非 const 参照の無効な初期化

何か案は?

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

npapi - firebreathで新しいプロジェクトを作成する

現在、NPAPI プラグインの作成を担当しています。そして、火の息でそれを行う方が良いと読んだ. 問題は、プロジェクトの開始方法がわからないことです。そこで、firebreath.org のチュートリアルを調べて見つけました。しかし、彼がチュートリアルで行ったことを試してみたところ、できませんでした。彼は、CMD を使用して firebreath のソース コードを取得しました。コマンドは「git clone git://github.com/firebreath/FireBreath firebreath」でした...チュートリアルでは、ソースコードを取得しました..私の場合、エラーが返されました... gitは認識されたバッチコマンドではないと言っています...何が起こったのですか?ありがとう

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

objective-c - Firebreath プロジェクトに NSDistributedNotification オブザーバーを追加する必要があります

ココア アプリから firebreath プロジェクトに分散通知を送信する必要があるため、firebreath コードでオブザーバーとセレクターを作成する必要があります。Objective-C コードをサポートするために、クラス拡張子を「.mm」に変更しました。firebreath プロジェクトには既に Objective-C コードがあり、正常に動作しています。しかし、オブザーバーを作成しようとすると、コードでエラーが発生し、解決方法がわかりません。

firebreath プロジェクトのソース コードは次のとおりです。

ここに私のエラーがあります:

...firebreath/../projects/MyProject/MyProjectAPI.mm:133: エラー: '-' トークンの前に非修飾 ID が必要です。これは、「receiveAppConfirmationNotification」メソッドを定義した行です。

...firebreath/../projects/MyProject/MyProjectAPI.mm:157: エラー: 'self' はこのスコープで宣言されていません。

セレクターを定義するにはどうすればよいですか? オブザーバーをクラス自体として追加するにはどうすればよいですか?

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

c++ - 付与された権限でNPAPIプラグインを実行する(firebreath)

私のNPAPIプラグインを実行するにはroot権限が必要です。ファイアブレスでそれを行うためのポータブルな方法があるかどうか疑問に思います。

そうでない場合は、Firesheepがどのように機能するかを調べましたが、バイナリファイルとランチャー(プラグイン)が必要です。cmakeバイナリとプラグインを別々にビルドするように指示するにはどうすればよいですか?