我是靠谱客的博主 忧心棒棒糖,最近开发中收集的这篇文章主要介绍webrtc agc matlab,WebRTC AGC(自动增益控制),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

WebRTC AGC(自动增益控制)

我正在testingWebRTC AGC,但是我必须做一些错误的事情,因为信号只是未经修改而通过。

以下是我如何创build和初始化AGC:

agcConfig.compressionGaindB = 9; agcConfig.limiterEnable = 1; agcConfig.targetLevelDbfs = 9; /* 9dB below full scale */ WebRtcAgc_Create(&agc); WebRtcAgc_Init(agc, minLevel, maxLevel, kAgcModeFixedDigital, 8000); WebRtcAgc_set_config(agc, agcConfig);

然后,对于每个10ms的示例块,我执行以下操作:

WebRtcAgc_Process(agc, micData, NULL, 80, micData, NULL, micLevelIn, &micLevelOut, 0, &saturationWarning);

其中micLevelIn设置为0。

有人能告诉我我做错了什么吗?

我预计全面的正弦音调将被削弱到目标DBFS的水平; 和低级正弦波(即-30dBFS)将被放大以匹配目标DBFS级别。 但是,这不是我所看到的。

以下是Webrtc_AGC使用的操作顺序:

创buildAGC: WebRtcAgc_Create

初始化AGC: WebRtcAgc_Init

设置configuration: WebRtcAgc_set_config

初始化capture_level = 0

对于kAgcModeAdaptiveDigital ,调用VirtualMic: WebRtcAgc_VirtualMic

具有capture_level进程缓冲区: WebRtcAgc_Process

获取从WebRtcAgc_Process返回的捕获级别并将其设置为capture_level

对audio buffers重复5到7

销毁AGC: WebRtcAgc_Free

检查webrtc / modules / audio_processing / gain_control_impl.cc以供参考。

尝试这个:

agcConfig.compressionGaindB = 9;

agcConfig.limiterEnable = 1;

agcConfig.targetLevelDbfs = 9; / *满量程以下9dB * /

WebRtcAgc_Create(AGC);

WebRtcAgc_Init(&agc,minLevel,maxLevel,kAgcModeFixedDigital,8000);

WebRtcAgc_set_config(&agc,&agcConfig);

最后

以上就是忧心棒棒糖为你收集整理的webrtc agc matlab,WebRTC AGC(自动增益控制)的全部内容,希望文章能够帮你解决webrtc agc matlab,WebRTC AGC(自动增益控制)所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(64)

评论列表共有 0 条评论

立即
投稿
返回
顶部