【Unity】基于AVFoundation开发MacOS摄像头(二)

【Unity】基于AVFoundation开发MacOS摄像头(一)_GrimRaider的博客-CSDN博客实现一个Camera设备驱动,代替unity自带WebCamTexturehttps://blog.csdn.net/GrimRaider/article/details/130127229

目标1:实现bridge,创建一个简单的macOS库,导入unity,使用c#成功调用接口。

dylib方案

一开始想的是使用dylib,使用过程中碰到1个问题:签名问题,自己build的dylib可以在自己的开发机上正常使用,但是安装到其他mac上就不行了,无论我怎么签名都不行,就是不能使用,从网上搜也找不到答案,有的说是dylib的签名得和app本身的签名一致,而且得给dylib的绝对路径才能正确加载。

bundle方案

找了好多天,才找到2个很有价值的参考样例工程:

  1. 大神keijiro的工程:GitHub - keijiro/Avfi: Simple video recorder with AVFoundation
  2. unity官方工程:GitHub - keijiro/Avfi: Simple video recorder with AVFoundation

大神keijiro有很多nb的工程,这个工程里面使用的是gcc编译oc代码,调用了AVFoundation,编译生成了bundle,直接拷贝到unity项目里就可以使用了。

官方工程的示例SimplestPluginExample目录下,使用的是xcode建立的bundle工程,编译出来的bundle直接拷贝到unity项目里即可使用。这个官方仓库里还有几个其他平台相关的工程,都不错,比如那个MoveWindowSample,我一直在用user32.dll撸代码,unity本身已经封装好了一部分窗口接口。

有示例工程就简单多了,oc的代码调用AVFoundation相关的类,编译出来就能用。没有示例就好痛苦,找不到正确的使用方法。

PS:需要注意的一点是,如果更新了bundle,需要重启unity编辑器,编辑器有警告提示,之前没注意,添加的新接口一直找不到,我一度怀疑自己的人品。

参考链接:

  1. iOS开发SDK(.framework静态库,.bundle资源文件,脚本打包SDK和.bundle)_pods 脚本打包sdk_江湖两把刀的博客-CSDN博客
  2. https://www.cnblogs.com/yongfengnice/p/7816140.html(查看bundle或so文件的接口主要用的是objdump,注意bundle需要最里面的那个文件,不是bundle本身。)
  3. objdump(Linux)反汇编命令使用指南 - 知乎
  4. Unity - Manual: Native plug-ins多看官方文档
  5. Unity - Manual: Building plug-ins for desktop platforms多看官方文档
  6. Xcode 编写 Unity 在Mac 平台的Bundle插件_LitteBlueSea的博客-CSDN博客c++的代码,没有oc的,不全。
  7. Setting up iOS Framework for Unity - DZone还有用framework的;
  8. dylib | Apple Developer Documentation官方dylib文档;
  9. Plug-in and play: Add Apple frameworks to your Unity game projects - WWDC22 - Videos - Apple Develog官方教学视频
  10. Search - Apple Developer去官方论坛搜
  11. iOS开发进阶五:动态库 - 简书dylib有问题的时候看看这个
  12. https://www.cnblogs.com/andrewwang/p/8536239.htmldylib的
  13. Mac dylib动态库加载路径问题(以OpenCV为例) - 简书也是dylib的
  14. How to make Unity find .dylib files? - Unity Answers嗯嗯,dylib
  15. dylib浅析 - leisuro的博客 | leisuro's Blogdylib
  16. Mac OS X 构建 dylib - 简书 dylib
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

GrimRaider

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值