使用C#封装webrtc音频增益模块

webrtc音频增益模块不是我写的,是这位仁兄使用C++写的https://www.cnblogs.com/mod109/p/5767867.html

这次我做了一次搬运工,我做的工作是使用C#封装他写的C++功能模块,如何使用C#封装C++细节和详细步骤可以参考我写的博客https://blog.csdn.net/zxy13826134783/article/details/105958311

 

本文测试的环境:

win7

vistual studio 2012

本文所使用的项目源码下载链接:http://zxy15914507674.gitee.io/shared_resource_name/WebRtc资源文件.rar

上面的链接被码云废掉了,直接去我的仓库下载:https://gitee.com/zxy15914507674/shared_resource_name,找打对应的

WebRtc资源文件.rar 下载即可

 

首先说明一下项目源码的资源分布,如下图:

 

 

要封装的C++功能函数WebRtcTestOutput.cpp:

到了C#定义委托与之对应(参数类型可以原封不动拷贝C++的):

 

下面讲解NoiseSuppression32函数中的char* 类型的数据如何在C#中转换

可以使用:

string fileNameInput="你输入的string文本"

System.Runtime.InteropServices.Marshal.StringToHGlobalAnsi(fileNameInput).ToPointer()就可以把string类型数据转换为char*类型数据,转换例子如下:

 

当然你可以不用那么麻烦,直接在定义委托时,把参数类型为char*的替换为string即可

 

注意:当C++的参数类型为string时,我们在C#端第一反应就是使用string或者char *类型的数据作为传输,但其实是不行的,踩过坑

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zxy2847225301

测试使用

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值