当前位置: 首页 > wzjs >正文

app定制开发谈判技巧山东网络推广优化排名

app定制开发谈判技巧,山东网络推广优化排名,ppt设计说明,网站正能量免费软件随着5.0的版本的迭代升级,笔者感受到了开源鸿蒙前所未有大的版本更替速度。5.0出现了越来越多的C API可以调用,极大的方便了native c应用的开发。笔者先将speexdsp噪声消除的案例分享,老规矩,还是开源!!&am…

随着5.0的版本的迭代升级,笔者感受到了开源鸿蒙前所未有大的版本更替速度。5.0出现了越来越多的C API可以调用,极大的方便了native c++应用的开发。笔者先将speexdsp噪声消除的案例分享,老规矩,还是开源!!!

开源地址:https://gitee.com/from-north-to-north/OpenHarmony_p7885/tree/3b8ffd1c5223688f0b1e1f011187a6a392b4fcdf/hap/easy_demo/speexdsp
编译好的hap:https://gitee.com/from-north-to-north/OpenHarmony_p7885/blob/3b8ffd1c5223688f0b1e1f011187a6a392b4fcdf/hap/easy_demo/speexdsp/hap/speexdsp.hap

声明:本案例基于 https://gitee.com/harmonyos_samples/audio-native 开源案例的基础上修改,增加speexdsp噪声消除功能

一、speexdsp交叉编译

https://gitcode.com/openharmony-sig/tpc_c_cplusplus/tree/master/community/speexdsp

image.png

教程请参考:
https://gitcode.com/openharmony-sig/tpc_c_cplusplus/blob/master/community/openssl_1_1_1w/docs/hap_integrate.md

二、核心实现代码
核心代码:https://gitee.com/from-north-to-north/OpenHarmony_p7885/blob/master/hap/easy_demo/speexdsp/entry/src/main/cpp/AudioRecording.cpp

#include <iostream>
#include <speex/speex_preprocess.h>#define FRAME_SIZE 160
#define SAMPLE_RATE 8000bool denoisePCMFile(const char* filePath) {// 以读写二进制模式打开文件FILE* file = fopen(filePath, "rb+");if (!file) {LOGI("denoisePCMFile open files failed");return false;}// 初始化speex预处理状态SpeexPreprocessState* st = speex_preprocess_state_init(FRAME_SIZE, SAMPLE_RATE);if (!st) {LOGI("denoisePCMFile 无法初始化speex预处理状态");fclose(file);return false;}// 设置降噪参数int denoise = 1;speex_preprocess_ctl(st, SPEEX_PREPROCESS_SET_DENOISE, &denoise);short frame[FRAME_SIZE];size_t readSize;while ((readSize = fread(frame, sizeof(short), FRAME_SIZE, file)) == FRAME_SIZE) {// 对帧进行降噪处理speex_preprocess_run(st, frame);// 将文件指针移动到当前帧的起始位置fseek(file, -static_cast<long>(readSize * sizeof(short)), SEEK_CUR);// 将处理后的帧写回文件fwrite(frame, sizeof(short), FRAME_SIZE, file);}// 释放speex预处理状态speex_preprocess_state_destroy(st);// 关闭文件fclose(file);LOGI("denoisePCMFile 降噪处理完成,已覆盖原文件");return true;
}napi_value DenoisePCMFile(napi_env env, napi_callback_info info) {if ((nullptr == env) || (nullptr == info)) {LOGE("GetUptime: env or info is null");return nullptr;}napi_value thisArg;if (napi_ok != napi_get_cb_info(env, info, nullptr, nullptr, &thisArg, nullptr)) {LOGE("GetUptime: napi_get_cb_info fail");return nullptr;}std::string time ;const char* filePath = "/data/storage/el2/base/haps/entry/files/oh_test_audio.pcm";if (denoisePCMFile(filePath)) {LOGI("denoisePCMFile success");time = "success";}else{LOGI("denoisePCMFile failed");time = "failed";}LOGI("getUptime success! %{public}s", time.c_str());napi_value res;napi_create_string_utf8(env, time.c_str(), strlen(time.c_str()), &res);return res;
}

snapshot_20250327_144159.jpg

http://www.dtcms.com/wzjs/70693.html

相关文章:

  • 官方网站弹幕怎么做友情链接的网站有哪些
  • 做旅游网站的公司网站seo方案撰写
  • wordpress向登录页面跳转百度seo教程视频
  • 公安网站服务平台在线视频观看免费视频22
  • 微商城网站建设平台如何做网站推广广告
  • 威海高新园区建设运营有限公司网站网络营销的优缺点
  • 自己做导航网站google推广妙招
  • 推广型网站建设模板网站开发是做什么的
  • 网站空间期限查询天津快速关键词排名
  • 庆阳网站设计费用国外网站设计
  • 怎样提交网站百度收录金城武重庆森林经典台词
  • 网站模板破解版sem优化策略
  • 九江建网站多少钱社交网络的推广方法有哪些
  • 虹桥做网站公司注册域名要钱吗
  • 无锡做网站优化多少钱软文发稿平台
  • 杭州做网站的公司哪些比较好百家号排名
  • 苏州网上注册公司流程最好的网站优化公司
  • 做网站如何挂支付系统百度搜索引擎优化详解
  • 门户网站模板源码百度seo排名培训
  • 网站建设需要哪些的ps如何创建自己的个人网站
  • 徐州网站建设大前端怎么知道网站有没有被收录
  • 如何做好品牌网站建设方案seo 推广怎么做
  • 京东网站建设的经费预算如何搭建公司网站
  • 西宁的网站建设公司618网络营销策划方案
  • 大连网站建设大全h5网站制作平台
  • 阜阳哪里做网站网站流量监控
  • 北京网站建设最便宜的公司产品营销策划方案3000字
  • 给公司做网站风险手机百度
  • 宝塔做两个网站6阿森纳英超积分
  • 网站建设一般报价多少钱免费建站系统哪个好用吗