Domanda

Ho un'applicazione .NET, che voglio porto a OSX. Fino ad ora ho usato una DLL DirectShow per la gestione WebCam. Posso usare un Objective-C DLL per Mono? Come? Sono un principiante su Mac. C'è un (movimentazione WebCam) soluzione esistente per questo? C'è una soluzione migliore?

È stato utile?

Soluzione

Si desidera utilizzare il quadro QTKit per fare questo, in particolare, è possibile utilizzare il QTCaptureView come NSView riutilizzabile che è possibile incorporare in una finestra esistente o in un'applicazione per fare il video cattura vera e propria.

Ho appena aggiunto il supporto per la cattura per le associazioni MonoMac pochi minuti fa dopo aver visto la tua domanda, quindi sarà necessario fare un po 'di lavoro.

Passi:

  1. Installa Mono, MonoDevelop e il componente aggiuntivo MonoMac come descritto qui: http://mono-project.com / MonoMac

  2. Scarica gli ultimi sorgenti di MonoMac e MacCore da Github: http://github.com/mono/ maccore e http://github.com/mono/monomac

  3. Aggiorna il MonoMac.dll alla versione più recente, andando nella cartella src / monomac e digitando "make update"

A questo punto si dovrebbe essere in grado di utilizzare il QTCaptureView nelle applicazioni MonoMac come qualsiasi altro NSView. Un tutorial che mostra l'utilizzo delle API in Objective-C è qui:

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

Si può semplicemente utilizzare le versioni equivalenti in C #

Altri suggerimenti

Non sono sicuro di cosa si intende per "un oggetto-c dll per Mono".

Il tuo approccio migliore in assoluto è quello di imparare la piattaforma che stai targeting e la porta solo la logica e l'architettura generale.

Per le telecamere di accesso, microfoni, line-in, ecc su Mac OS X, utilizzare QTKit (Quicktime Kit). E 'la mente numbingly semplice per impostare una visualizzazione web cam, registrare su file, cornici afferrare, ecc è costruito e progettato per rendere questo genere di cose per lo più il drag-and-drop per gli sviluppatori.

MonoMac è solo un'alternativa. Ci sono Monobjc, CocoSharp, NObjective, MObjc / MCocoa e objC # (non riesco a scegliere tra di loro). Theese sono tutti i "ponti" tra Mono e Cocoa, ciò significa che si può utilizzare cacao API in applicazione Mono. Ma io non voglio usare direttamente l'API. Voglio solo una biblioteca dinamicamente legato, che mi fornire qualche funzione per la gestione WebCam (come ho già detto, ho fatto questo fino a questo momento su Windows). In altre parole: Ho bisogno di un involucro in Mono per QTKit

.

PS: Se io riscrivere l'applicazione in oggetto-c che significa diversi mesi, e doppio lavoro in futuro, quando l'applicazione crescerà. Amo oggetto-c ma odio lavoro inutile.

Ho provato il codice accettato in XCode, e quando ho provato a porta per MonoDevelop, diverse classi sono mancanti, ad esempio. QTCaputureSession, QTCaputreDeviceInput, CVimagebuffer. (Mi dispiace, non è possibile modificare i miei messaggi precedenti, questo è un altro conto.)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top