概述

优质
小牛编辑
127浏览
2023-12-01

前言

VSP(语音信号处理)是专为 GX8010 芯片研发的语音信号处理框架,它运行在 mcu、dsp、npu 和 cpu 上。 主要完成待机和工作模式下的语音信号处理,比如降噪、去混响、回声消除、波束合成、特征提取、激活词识别等。除此之外,VSP 框架还实现了原始语音数据采集、系统的启动和初始化(BootLoader)、系统状态检测、系统功耗控制、LED 环效果、USB 声卡等功能。

语音信号处理算法需要运行在 dsp 中,而一般公司的算法工程师主要专注算法的开发,不太会去详细了解比如 mcu、cpu、npu 等工作原理及其它,为了方便算法工程师在基本了解 VSP 框架后,尽快调试和优化算法,特地开发一套运行在 PC 上模拟硬件仿真用的 vsp_simulate 工程,该工程不仅仅支持 c99 而且还支持 c++98,不过不建议用 c++ 开发算法。

阅读本文前,假定读者掌握 context 的结构以及它的内存结构,假定读者安装好 DSP 工具链。如未掌握,请详细阅读:GX8010_VSP_SDK_DG.pdf

工作原理

从 wave 文件中读取音频数据,按照 VSP 框架中 context 结构封装,送到 dsp 算法进行处理。

vsp 与 vsp_simulate 区别

  1. 运行环境不同:vsp 含有 dsp、mcu、npu、cpu 相关驱动及其代码逻辑,是运行在 GX8010 芯片上;vsp_simultae 只含有 dsp 的算法逻辑以及处理文件的代码逻辑,是运行在 PC 上。
  2. wave 数据来源不同:vsp 框架中的 context 中的 wave 数据是 GX8010 芯片通过麦克风小板采集的实时 wave 数据,由 mcu 封装成一个一个的 context 后发给 dsp 去处理;vsp_simulate 是通过读取 wave 文件,模拟 mcu 封装成与 VSP 框架一致的 context,发给 dsp 算法处理。

最后更新:

类似资料

  • 支持2/4/6/8路麦克风阵列,集成8通道ADC/I2S/PDM,支持模拟麦和数字麦,内置DSP,支持降噪、AEC、Beamforming、去混响等算法。

  • 概述 GX8010 Smart Speaker Develop(简称SSD)是面向智能音箱应用而设计的方案,运行离线的demo程序后可进行基本的本地语音交互。SSD 平台具备如下特点: 6 路模拟MEMS 麦克风 4 个功能按键 12 个RGB 3 色LED 阵列 WIFI+BT 组合模块 TF 卡插槽 两个10W 40Ohm 扬声器 2200 毫安时电池,带充电功能 USB2.0 主机与从机接口

  • GX8009 Low Power(简称LP)是面向智能音箱应用而设计的方案,运行离线的demo程序后可进行基本的本地语音交互。 电源 5V/500mA USB 设备端口(调试模式) 5V/1A AC/DC 电源适配器(用户模式 存储器 SPI NAND Flash:单颗 128M byte 音频 数字/模拟音频:I2S 和模拟音频输出 多媒体 USB:一路 USB Slave 接口 MIC 阵列

  • GX8009 Low Cost(简称LC)是面向智能音箱应用而设计的方案,运行离线的demo程序后可进行基本的本地语音交互。 电源 5V/500mA USB 设备端口(调试模式) 5V/1A AC/DC 电源适配器(用户模式 存储器 SPI NAND Flash:单颗 128M byte 音频 数字/模拟音频:I2S 和模拟音频输出 多媒体 USB:一路 USB Slave 接口 MIC 阵列 支

  • 概述 国际化和本地化的目的就是让一个网站应用能做到根据用户语种和指定格式的不同而提供不同的内容。 Django 对文本翻译, 日期、时间和数字的格式化,以及时区提供了完善的支持。 实际上,Django做了两件事: 由开发者和模板作者指定应用的哪些部分应该翻译,或是根据本地语种和文化进行相应的格式化。 根据用户的偏好设置,使用钩子将web应用本地化。 很显然,翻译取决于用户所选语言,而格式化通常取决

  • 虽然Django 满满的便捷性让Web 开发人员活得轻松一些,但是如果不能轻松地部署你的网站,这些工具还是没有什么用处。Django 起初,易于部署就是一个主要的目标。有许多优秀的方法可以轻松地来部署Django: 如何使用WSGI 部署 部署的检查清单 FastCGI 的支持已经废弃并将在Django 1.9 中删除。 如何使用FastCGI、SCGI 和AJP 部署Django 如果你是部署D