高通QCC3081蓝牙芯片双CVC参数配置与优化指南

news2024/9/21 2:47:18

高通的QCC3081芯片搭载了领先的高通1-MIC、2-MIC、3-MIC  CVC回声消除和噪声抑制技术,无论您身处何地,都能通过蓝牙立体声耳机或耳塞享受清晰的语音通话体验。无论是家中的生活噪音、街道的车流声还是人群的喧哗,这些背景噪声都不再是通话质量的障碍。

CVC(清晰语音捕获)技术是一套专为电话通话设计的回声消除和噪声抑制算法,它能够在呼叫的发送和接收过程中,确保语音质量达到最优。这意味着,无论您身处哪里,CVC技术都能够确保您的声音传输清晰。

在实际使用中,用户通常只需设置一组CVC参数,以适应大多数通话环境。然而,为了满足特定客户的需求,有些产品提供了两组CVC参数,可以根据用户所处的环境动态切换,如从安静的办公室切换到喧闹的地铁站,从而提升用户体验。

用户首先需要根据耳机的MIC连接(1-MIC、2-MIC或3-MIC)选择合适的软件配置。

QCC3081的MIC接口配置

 图1为QCC3081的MIC接口配置。

配置完成后,将软件编译并烧录到产品中,确保产品密封并提供TRB或USB接口。通过TRB烧录器或直接连接电脑的USB接口,将产品与电脑连接。

接下来,将产品与手机配对,进行电话通话,并在通话状态下使用高通的CVC调试工具QACT软件进行调试。

需要注意的是:必须在通话中才可以连接上QACT。

QACT打开时的界面

图2 为QACT打开时的界面,需要先配置Connection Configuration文件。

在QACT中,可以对Send Path的各个模块进行调试。

具体的调试方法可以参考相关教程博文:

【QUALCOMM之快速学会QACT轻松成为CVC“砖家”系列】-CVC的Tuning之1 - 大大通(简体站) (wpgdadatong.com.cn)

调试界面

图3为调试界面

调试完成一组参数后,应将其保存为一个htf参数文件。然后,将参数恢复到默认状态,调试第二组CVC参数,并保存为另一个htf文件。

注意:此时这两组的CVC参数里面的PSID是一样的,但是数组的数据是不一样的。

打开两组htf参数文件,将第二组参数的数据复制到第一组数据之后,并将第二组数据的所有PSID依次增加2,以区分两组参数。

htf参数文件的PSID

图4  htf参数文件的PSID

修改PSID后,将所有数据复制到MDE的cvc_config.htf文件中。

如果遇到相同的PSID,必须删除原有的数据,以确保新参数中的PSID数据被调用。

cvc_config.htf文件

图5  cvc_config.htf文件

更新cvc_config.htf文件后,重新编译代码并下载到产品中。当产品连接手机并进入通话状态时,默认启用的是第一组0x001300参数。制造商可以通过API:OperatorsStandardSetUCID定义一个按键来切换到第二组参数。

CVC参数调用的API

图6  CVC参数调用的API

相关FAQ:

Q1: CVC技术主要用于什么场景?

A1: CVC技术主要用于提升蓝牙耳机或耳塞在进行语音通话时的声音清晰度,尤其是在噪声环境下。

Q2: 如何选择合适的CVC参数配置?

A2: 用户需要根据耳机的MIC配置(1-MIC、2-MIC或3-MIC)以及使用环境(如安静或嘈杂)来选择合适的CVC参数配置。

Q3: 如何使用QACT软件进行CVC参数调试?

A3: 在通话状态下,通过连接QACT软件对Send Path的各个模块进行调试,并保存调试好的参数为htf文件。

Q4: 为什么需要修改PSID?

A4: 修改PSID是为了区分不同的CVC参数组,确保在不同的使用环境下能够调用正确的参数。

Q5: 如何在产品中切换不同的CVC参数组?

A5: 制造商可以通过API:OperatorsStandardSetUCID定义一个按键,使用户能够在不同的使用环境下切换到相应的CVC参数组。

欢迎登录大大通,了解更多原厂方案、技术干货!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1951335.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MATLAB基础:函数与函数控制语句

今天我们继续学习Matlab中函数相关知识。 API的查询和调用 help 命令是最基本的查询方法,可查询所有目录、指定目录、命令、函数。 我们直接点击帮助菜单即可查询所需的API函数。 lookfor 关键字用于搜索相关的命令和函数。 如,我们输入lookfor inpu…

vue-plugin-hiprint 打印 预览打印+静默打印

1.安装 npm install vue-plugin-hiprint npm i socket.io-client --save //为了静默打印 &#xff08;为此还需安装客户端&#xff09; 2…html页面 引入css <link rel"stylesheet" type"text/css" media"print" href"https://cdn.jsde…

MySQL高性能读写分离实战

介绍 我的上一篇文章实现了mysql的主从复制结构&#xff0c;今天这篇继续将如何实现读写分离。 读写分离是指&#xff1a;针对数据库的写操作&#xff08;插入、更新、删除等&#xff09;访问主数据库&#xff0c;读操作访问从数据库。 因为一般网站的读请求的数量是远远大于…

photoshop学习笔记——选区3 选区的变化

选区制作完成之后可以对选区进行变化 主要有&#xff1a; 反选&#xff1a;shift ctrl I 变换 修改&#xff1a; 边界 设置选区的边界大小 类似 CSS中的borderSize平滑 对选区的角进行平滑扩展 向外扩展选区收缩 向内收缩选区羽化 让边界变得过渡透明度 设置…

大数据学习之sparkstreaming

SparkStreaming idea中初步实现 Spark core: SparkContext 核心数据结构&#xff1a;RDD Spark sql: SparkSession 核心数据结构&#xff1a;DataFrame Spark streaming: StreamingContext 核心数据结构&#xff1a;DStream(底层封装了RDD)&#xff0c;遍历出其中的RDD即可进行…

docker 安装单机版redis

把这三个放上去 修改成自己的 按照自己需求来 照图片做 vim redis.conf vim startRedis.sh mv startRedis.sh deployRedis.sh sh deployRedis.sh docker run --privilegedtrue \ --name dev.redis --restartalways \ --network dev-net \ -v ./config/redis.conf:/etc/r…

Laravel:揭秘PHP世界中最优雅的艺术品

1. 引言 在PHP的世界里&#xff0c;框架如繁星般璀璨&#xff0c;但Laravel以其独特的魅力和优雅&#xff0c;成为了众多开发者心中的艺术品。本文将深入探讨Laravel为何能在众多PHP框架中脱颖而出&#xff0c;成为最优雅的选择。 1.1 Laravel的诞生背景 Laravel的诞生可以…

Windows Server搭建局域网NTP时间服务器与客户端通实现

1.服务器环境&#xff1a; win11更改注册表 winR输入regedit win11更改注册表 winR输入regedit 2.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\Config&#xff0c;找到Config目录&#xff0c;双击Config目录下的AnnounceFlags&#xff0c;设为5。 3.HKEY_L…

学习大数据DAY25 Shell脚本的书写2与Shell工具的使用

目录 自定义函数 递归-自己调用自己 上机练习 12 Shell 工具 sort sed awk 上机练习 13 自定义函数 name(){ action; } function name { Action; } name 因为 shell 脚本是从上到下逐行运行&#xff0c;不会像其它语言一样先编译&#xff0c;所以函数必 须在调…

C++多态的底层原理

目录 1.虚函数表 &#xff08;1&#xff09;虚函数表指针 &#xff08;2&#xff09;虚函数表 2.虚函数表的继承--重写&#xff08;覆盖&#xff09;的原理 3.观察虚表的方法 &#xff08;1&#xff09;内存观察 &#xff08;2&#xff09;打印虚表 虚表的地址 函数 传参…

【无标题】Git(仓库,分支,分支冲突)

Git 一种分布式版本控制系统&#xff0c;用于跟踪和管理代码的变更 一&#xff0e;Git的主要功能&#xff1a; 二&#xff0e;准备git机器 修改静态ip&#xff0c;主机名 三&#xff0e;git仓库的建立&#xff1a; 1.安装git [rootgit ~]# yum -y install git 2.创建一个…

postman请求响应加解密

部分接口&#xff0c;需要请求加密后&#xff0c;在发动到后端。同时后端返回的响应内容&#xff0c;也是经过了加密。此时&#xff0c;我们先和开发获取到对应的【密钥】&#xff0c;然后在postman的预执行、后执行加入js脚本对明文请求进行加密&#xff0c;然后在发送请求&am…

Android adb shell ps进程查找以及kill

Android adb shell ps进程查找以及kill 列出当前Android手机上运行的所有进程信息如PID等&#xff1a; adb shell ps 但是这样会列出一大堆进程信息&#xff0c;不便于定向查阅&#xff0c;可以使用关键词查找&#xff1a; adb shell "ps | grep 关键词" 关键词查…

AI视频生成(即梦)

1.打开即梦网页版 https://jimeng.jianying.com/ai-tool/home 2.图片生成-导入参考图&#xff08;这里原本的红色或者灰度图都是可以的&#xff09;-精细度5&#xff08;最高图质量越高&#xff09; 注&#xff1a;根据需要&#xff0c;选择不同的生图模型&#xff0c;具有…

【后端开发实习】Python基于Quart框架实现SSE数据传输

Python基于Quart框架实现SSE数据传输 前言SSE简介理论分析代码实现 前言 在类似Chatgpt的应用中要实现数据的流式传输&#xff0c;模仿实现打字机效果&#xff0c;SSE是不二之选。传统的Flask框架不能满足异步处理的要求&#xff0c;没有异步处理就很难实现实时交互的需求&…

聊一次线程池使用不当导致的生产故障-图文解析

聊一次线程池使用不当导致的生产故障–图文解析 原文作者&#xff1a;货拉拉技术团队 原文链接&#xff1a;https://juejin.cn/post/7382121812434747418 1 抢救 交代了背景&#xff1a;交付的软件运行中出现了故障&#xff0c;报警机制被触发&#xff0c;通过飞书与报警电…

《500 Lines or Less》(5)异步爬虫

https://aosabook.org/en/500L/a-web-crawler-with-asyncio-coroutines.html ——A. Jesse Jiryu Davis and Guido van Rossum 介绍 网络程序消耗的不是计算资源&#xff0c;而是打开许多缓慢的连接&#xff0c;解决此问题的现代方法是异步IO。 本章介绍一个简单的网络爬虫&a…

静止轨道卫星大气校正(Atmospheric Correction)和BRDF校正

文章内容仅用于自己知识学习和分享&#xff0c;如有侵权&#xff0c;还请联系并删除 &#xff1a;&#xff09; 目的&#xff1a; TOA reflectance 转为 surface refletance。 主要包含两步&#xff1a; 1&#xff09;大气校正&#xff1b; 2&#xff09;BRDF校正 进度&#x…

C语言日常练习Day12(文件)

目录 一、从键盘输入一些字符&#xff0c;逐个把他们送到磁盘上去&#xff0c;直到用户输入#为止 二、输入连续几个正整数n和m&#xff0c;求其最大公约数和最小公倍数 三、将‘China’翻译成密码&#xff0c;密码规律是&#xff1a;用原来的字母后面第4个字符代替原来的字母…

C++初阶:string(字符串)

✨✨所属专栏&#xff1a;C✨✨ ✨✨作者主页&#xff1a;嶔某✨✨ 为什么要学习string类 C语言中&#xff0c;字符串是以\0结尾的一些字符的集合&#xff0c;为了操作方便&#xff0c;C标准库中提供了一些str系列 的库函数&#xff0c;但是这些库函数与字符串是分离开的&#…