2

OSX に移植したい .NET アプリケーションがあります。これまで、WebCam の処理には DirectShow DLL を使用していました。Mono に Objective-C DLL を使用できますか? どのように?私はMacの初心者です。これに対する既存の (WebCam 処理) ソリューションはありますか? より良い解決策はありますか?

4

4 に答える 4

3

QTKit フレームワークを使用してこれを行う必要があります。特に、QTCaptureView を再利用可能な NSView として使用して、既存のウィンドウまたはアプリケーションに埋め込んで実際のビデオ キャプチャを行うことができます。

あなたの質問を見てから数分前に、MonoMac バインディングにキャプチャのサポートを追加したばかりなので、少し作業を行う必要があります。

手順:

  1. ここで説明されているように、Mono、MonoDevelop、および MonoMac アドインをインストールします: http://mono-project.com/MonoMac

  2. Github から MonoMac および MacCore の最新ソースをダウンロードします: http://github.com/mono/maccoreおよびhttp://github.com/mono/monomac

  3. monomac/src ディレクトリに移動し、「make update」と入力して、MonoMac.dll を最新バージョンに更新します。

この時点で、他の NSView と同様に、MonoMac アプリケーションで QTCaptureView を使用できるはずです。Objective-C での API の使用を示すチュートリアルは次のとおりです。

http://developer.apple.com/library/mac/#documentation/Cocoa/Conceptual/QTKitApplicationTutorial/BuildingaSimpleQTKitCaptureApplication/BuildingaSimpleQTKitCaptureApplication.html#//apple_ref/doc/uid/TP40008155-CH8-SW1

C#で同等のバージョンを使用できます

于 2010-11-24T05:39:26.060 に答える
0

受け入れられたコードをXCodeで試しましたが、Monodevelopに移植しようとすると、いくつかのクラスが欠落しています。QTCaputureSession、QTCaputreDeviceInput、CVimagebuffer。(申し訳ありませんが、以前のメッセージを編集できません。これは別のアカウントです。)

于 2010-12-28T14:23:11.643 に答える
0

「Mono用のobject-c dll」の意味がわかりません。

あなたの絶対的な最善のアプローチは、対象とするプラットフォームを学び、ロジックと一般的なアーキテクチャのみを移植することです。

Mac OS X でカメラ、マイク、ライン入力などにアクセスするには、QTKit (Quicktime Kit) を使用します。Web カメラ ビューのセットアップ、ファイルへの記録、フレームのグラブなどは気が遠くなるほど簡単です。これは組み込みであり、開発者がこの種のことをほとんどドラッグ アンド ドロップできるように設計されています。

于 2010-11-22T16:59:41.653 に答える
0

MonoMac は 1 つの代替手段にすぎません。Monobjc、CocoSharp、NObjective、MObjc / MCocoa、および ObjC# があります (どちらかを選択することはできません)。これらはすべて、Mono と Cocoa の間の「ブリッジ」です。つまり、Mono アプリケーションで Cocoa API を使用できます。しかし、API を直接使用したくありません。WebCam を処理するための機能を提供する、動的にリンクされたライブラリが必要なだけです (前述したように、これまでは Windows で実行していました)。つまり、Mono で QTKit のラッパーが必要です。

PS: object-c でアプリケーションを書き直した場合、それは数か月を意味し、アプリケーションが成長する将来の二重の作業になります。object-c は大好きですが、不必要な作業は嫌いです。

于 2010-11-22T22:44:07.693 に答える