zoukankan      html  css  js  c++  java
  • 游戏陪玩平台源码开发,语音通话中的噪音消除处理

    如果用户在游戏陪玩平台源码使用语音通话的过程中,出现大量噪音将会对用户的体验造成不良的影响,所以在开发时,要将噪音消除掉,具体的处理代码将在下方展现:

    // 初始化 降噪
    Java_com_audioaec_talkdemo_AudioAEC_InitAudioDeNose( JNIEnv* env,
                                                     jobject thiz)
    {
     int denoise_enabled = 1 ;
    if(nInitDeNoseFlag == 1)
    return 0 ;
     
     nInitDeNoseFlag = 1 ;
     
     //8K降噪
    audioProcNose8K = speex_preprocess_state_init(80 * (nSampleTimeLong / 10),8000);  
    speex_preprocess_ctl(audioProcNose8K, SPEEX_PREPROCESS_SET_DENOISE, &denoise_enabled);
     
    //16K降噪
    audioProcNose16K = speex_preprocess_state_init(160 * (nSampleTimeLong / 10),16000);  
    speex_preprocess_ctl(audioProcNose16K, SPEEX_PREPROCESS_SET_DENOISE, &denoise_enabled);
     
     return 1 ;
    }
     
    //8K降噪 
    jint Java_com_audioaec_talkdemo_AudioAEC_AudioDeNose8K(JNIEnv* env,jobject thiz,jbyteArray recordArray)
    {
    if(nInitDeNoseFlag == 0)
    return 0 ;
     
      jbyte* recordBuffer = (jbyte *)(*env)->GetByteArrayElements(env,recordArray, 0);
     
      speex_preprocess(audioProcNose8K,(spx_int16_t*)recordBuffer, NULL);
     
     (*env)->ReleaseByteArrayElements(env,recordArray,recordBuffer,0) ;
     
     return 1 ;
    }
     
    //16K降噪 
    jint Java_com_audioaec_talkdemo_AudioAEC_AudioDeNose16K(JNIEnv* env,jobject thiz,jbyteArray recordArray)
    {
    if(nInitDeNoseFlag == 0)
    return 0 ;
     
      jbyte* recordBuffer = (jbyte *)(*env)->GetByteArrayElements(env,recordArray, 0);
     
      speex_preprocess(audioProcNose16K,(spx_int16_t*)recordBuffer, NULL);
     
     (*env)->ReleaseByteArrayElements(env,recordArray,recordBuffer,0) ;
     
     return 1 ;
    }
     
    // 释放降噪
    jint 
    Java_com_audioaec_talkdemo_AudioAEC_ExitAudioDeNose( JNIEnv* env,
                                                     jobject thiz)
    {
    if(nInitDeNoseFlag == 0)
    return 0 ;
     
     nInitDeNoseFlag = 0 ;
     
    speex_preprocess_state_destroy(audioProcNose8K); 
    speex_preprocess_state_destroy(audioProcNose16K); 
     
     return 1 ;
    }

    以上就是游戏陪玩平台源码开发,语音通话中的噪音消除处理实现的全部内容了,希望对大家有帮助。
    本文转载自网络,转载仅为分享干货知识,如有侵权欢迎联系云豹科技进行删除处理
    原文链接:https://www.cnblogs.com/jianglijs/p/8583603.html

  • 相关阅读:
    AT5200 [AGC038C] LCMs 莫比乌斯反演
    P5445 [APIO2019]路灯 树套树
    CF617E XOR and Favorite Number 莫队
    P5404 [CTS2019]重复 KMP自动机
    P4364 [九省联考2018]IIIDX 线段树上二分
    P3749 [六省联考2017]寿司餐厅 最大权闭合子图
    CF906E Reverses PAM+border
    AGC 补题记录
    做题记录
    题解 loj #3524. 「IOI2021」钥匙
  • 原文地址:https://www.cnblogs.com/yunbao/p/14950870.html
Copyright © 2011-2022 走看看