关于代码库
所有Gen2Bongiovi SDK都是由一个统一的C代码库构建的。 这使得相同的代码可用于操作系统应用(嵌入式和标准)以及专门的数字信号处理芯片解决方案。
为了实现这种灵活性,Bongiovi 代码库没有建立在面向对象的基础上。 相反,库可以很容易地建立,以支持适合目标平台的有限数量的算法实例。 例如,Linux/Android/iOS/Windows SDKs(默认)支持20个实例,而恩智浦Dirana 3解决方案(及其约300kb的内存限制)被构建为支持最多2个立体实例。 当平台需要时,一个实例处理程序在后台提供动态分配。
通过将核心的C语言音频处理代码和实例处理程序包裹在一个C++接口中,支持面向对象的应用。 在不能使用C++的情况下,也为这个接口提供了C语言头文件。

- 算法区块
- 实例(单声道或立体声
- 实例处理程序
- 嵌入式或 dsp 解决方案一般不包括这一层。 实例是通过底层 C API 明确定义的。
- 本地API
- 每个实例的音频处理功能
- 用户控制
- 加载嵌入式预置(链接 ProDef.c)
- 从 BGPS 文件加载
- 通信(远程)API
- 发送/接收所有参数
- 加载嵌入式预置
- 接收仪表数据(用于配置文件创建器调整)
- 接收当前预置数据
- 调试和错误处理
- C++接口
- 为特定应用提供 "灵敏度 "等元功能。
- 可根据客户要求添加元功能。
- 嵌入式或 dsp 解决方案通常不包括这一层。 我们提供了一个直接的 C 解决方案。
- C 方便的接口
- 当需要在 C++ 层之上添加 C 层时,就需要使用它。
当使用C接口时,C++组件仍然会存在。 因此,在构建应用程序时必须使用C++链接器。
预置和参数
音频处理参数集可通过链接 ProDef.c 文件或加载 BGPS 文件嵌入最终解决方案。 详情请参阅预置管理工作流程。