问题描述
我的统一项目包括一个非托管的 dll,它链接到我构建的 portaudio dll,一切都是为 x86_x64 架构配置和构建的。我的非托管 dll 使用 portaudio 打开一个 ASIO 音频流。 我想将其构建为通用 Windows 版本。
问题是:Unity 项目的独立构建在 Windows 10 上正常工作,Unity 编辑器也可以正常工作,但是当我构建通用 Windows 构建时,我得到了一个可以运行的应用程序,但根本没有声音。日志显示 portaudio 成功打开流并获取 ASIO 驱动程序的所有属性,在我的情况下是 ASIO4ALL,但是当我调用 PaAsio_ShowControlPanel()
时,它打开了 ASIO4ALL 的设置窗口,但显示它根本看不到硬件设备,如与在独立构建中运行相同方法时列出它们相反。
我尝试在 unity、visual studio 和 windows 设置中启用麦克风权限。 我也尝试以管理员身份运行所有内容,但没有奏效。
我在构建生成的 Visual Studio 2019 解决方案时得到的调试输出包括以下几行:
Exception thrown at 0x00007FFDD17BD759 (KernelBase.dll) in MyApp.exe WinRT originate error - 0x80004005 'The window has already been destroyed.'.
onecoreuapdriversmobilepcsensorsconvergenceapiwinrtpublicinternalsensorserver.cpp(74)Windows.Devices.Sensors.dll!00007FFD7C3A2E23 (caller 00007FFD7C3EDA61) ReturnHr(3) tid(4a70) 80070490 Element not found.
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)