audiounit - AUv3 AudioUnit 扩展,IPCAUClient:捆绑显示名称为 nil
问题描述
在我的 AUv3 AudioUnit Extension 中,我在调试控制台输出中收到此错误消息:
IPCAUClient.cpp:129:ConnectToRegistrationServer: IPCAUClient: bundle display name is nil
但是 info.plist 文件中有一个名称……有人有同样的问题吗?
解决方案
从字面上看,这花了我数周时间才找到细节以使其正常工作。Apple 没有示例代码可以解释这应该如何工作。
主要问题是在包含应用程序的第一次启动时从插件中获取远程视图控制器。AUv3 插件在被插入到 Garageband 中时完美运行,一旦处理注册到系统,但没有这一步,就没有远程 ViewController 可用。
我看到了其他实现,它们从包中读取 AUv3 viewController 并将 UI 元素连接到无头控制器 - 这是样板代码和糟糕的 IMO 风格......更好地使用 an并通过使用此包装器从那里AVAudioUnit
派生AUAudioUnit_XH
包括:AUAudioUnitRemoteViewController
AU_AudioUnit = AVaudioUnit.AUAudioUnit
为了让 AudioUnit 在包含的应用程序中工作,有几个依赖项:
AUv3插件需要使用该
registerSubclass
方法注册。安装时需要有一个观察者
AVAudioUnitComponentManagerRegistrationsChangedNotification
。该
Inter-App Audio
功能需要在权利中开启!
我希望这可以帮助您,并为您节省许多漫长而孤独的夜晚...
推荐阅读
- python - 如何使用python选择多个文本坐标,使其不与同一背景图像中的多个图像坐标重叠?
- r - 如何使用 Pearson IV 型误差分布在 R 中运行回归?
- django - django docker 无法访问 nginx 端口
- python - 如何使用 SQLALCHEMY_BINDS 将 pandas.DataFrame.to_sql 与多个数据库一起使用
- opengl - GLSL中统一和常量之间的不同浮点行为
- google-app-engine - 我在这里做错了什么?每当我执行这一行时,它都会指向一个目录
- javascript - 修改子组件中的数据并使其在父组件中作为道具可用
- r - 从 data.frame 中的每一列中选择 10 个最高值并按降序绘制
- java - 为什么当我将元素绑定到其中时,我的代码总是收到空指针异常?我在 Android Studio 中使用 Java
- elasticsearch - 多个词在搜索中充当单个词 - Elasticsearch