Mono中的Objective-C
我有一个.NET应用程序,我想将它移植到OSX上。到目前为止,我使用DirectShow DLL进行WebCam处理。我可以使用Mono的Objective-C DLL吗?怎么样?我是Mac上的新手。有没有现有的(WebCam处理)解决方案?有更好的解决方案吗?Mono中的Objective-C
你想使用QTKit框架来做到这一点,特别是你可以使用QTCaptureView作为一个可重用的NSView,你可以嵌入现有的窗口或应用程序中进行实际的视频捕获。
我刚刚在看到您的问题后几分钟前添加了对捕获到MonoMac绑定的支持,因此您需要做一些工作。
步骤:
这里描述安装Mono,MonoDevelop的和的MonoMac插件:http://mono-project.com/MonoMac
下载的MonoMac和MacCore最新消息透露从GitHub:http://github.com/mono/maccore和http://github.com/mono/monomac
通过进入monomac/src目录并键入“make update”将MonoMac.dll更新到最新版本
在这一点上,您应该能够像MonView其他NSView一样在您的MonoMac应用程序中使用QTCaptureView。显示使用的Objective-C的API的教程是在这里:
您可以只使用相当于版本在C#中
我不确定你的意思是“对于单声道的对象-C DLL”。
你绝对最好的方法是学习你的目标平台,并且只移植逻辑和通用架构。
要在Mac OS X*问摄像头,麦克风,线路等,请使用QTKit(Quicktime Kit)。设置网络摄像机视图,记录文件,抓取帧等是非常简单的。它内置并设计用于使开发人员能够进行大部分拖放操作。
MonoMac只是一个选择。有Monobjc,CocoSharp,NObjective,MObjc/MCocoa和ObjC#(我不能在它们之间选择)。这些都是Mono和Cocoa之间的“桥梁”,意味着你可以在Mono应用程序中使用Cocoa API。但我不想直接使用API。我只想要一个dinamically连接的库,它为WebCam处理提供了一些功能(正如我所说的,我在Windows上完成了这个任务)。换句话说:我需要在Mono中为QTKit封装。 PS:如果我在对象c中重写应用程序,这意味着几个月,并且在将来应用程序将增长时将进行双重工作。我喜欢object-c,但我讨厌不必要的工作。
我试图在Xcode中接受的代码,当我试图端口Monodevelop,几个类缺失,例如。 QTCaputureSession,QTCaputreDeviceInput,CVimagebuffer。 (对不起,我无法编辑以前的消息,这是另一个帐户。)
编号.NET,DLL等是Windows技术/ Windows API。再次说明:您需要了解您的目标平台。这是没有办法的。用于连接网络摄像头的适当的Mac高级API是QTKit。较低级别是完整的QuickTime框架。 – 2010-11-22 17:21:04
感谢您的帮助。我的意思是:我想要一个dll写在object-c中的东西,它使用OSX的API(用于WebCam处理),而我的Mono程序(OSX上的.NET的克隆)使用它。这次我使用了DirectX/Windows + .NET,现在我想要QuictTime/OSX + Mono。 – bsebi 2010-11-22 17:26:10
对不起,这是我的误解。从MonoMac站点:“与MonoTouch不同,MonoMac不是对所有Cocoa API的完整绑定......”该列表不包括QTKit或QuickTime。 http://www.mono-project.com/MonoMac – 2010-11-22 17:33:20