【问题标题】:Using noise suppression module in webrtc in android在android的webrtc中使用噪声抑制模块
【发布时间】:2013-08-22 23:52:19
【问题描述】:

我正在用 android 开发一个说话人识别应用程序,我想在使用说话人识别算法对其进行分析之前处理来自麦克风的音频输入。我遇到了WebRTC 中的噪声抑制模块。我已经使用 JNI 在 android 中设置了它。

我对模块中的 WebRtcNs_Process 函数有疑问。在头文件中,它说 int WebRtcNs_Process(NsHandle* NS_inst, short* spframe, short* spframe_H, short* outframe, short* outframe_H);

根据头文件,
spframe:指向 L 波段的语音帧缓冲区的指针
spframe_H:指向H 波段的语音帧缓冲区
outframe:指向 L 波段的输出帧的指针
outframe_H : 指向 H 波段

的输出帧的指针

有谁知道这些论点指的是什么? aka 什么是 L 波段H 波段? L频段的语音帧缓冲区和H频段的语音帧缓冲区有什么区别?

谢谢!!

【问题讨论】:

  • 你可以去wideband-voice-voip获取一些信息。
  • @BillHoo 你做了什么来分割 L 波段和 H 波段的音频。你使用WebRTC的函数(WebRtcSpl_AnalysisQMF)还是使用你的函数。如果使用 WebRTC,我需要为 filter_state1 和 filter_state2 传递什么参数。你能帮帮我吗?

标签: java android c webrtc noise


【解决方案1】:

遇到这个问题的朋友,如果你看一下WebRTC中的audio_processing模块,你会发现它只对super-wb进行频段分割,即32kHz采样率。

因此,如果您使用 8kHz 或 16kHz 采样率,您可以将 spframe_H 和 outframe_H 设置为 NULL,并将 spframe 和 outframe 设置为原始音频数据。如果您使用的是 32kHz,那么您需要将频段拆分为 here

【讨论】:

    猜你喜欢
    • 2016-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-21
    • 1970-01-01
    • 1970-01-01
    • 2013-08-11
    • 2019-04-21
    相关资源
    最近更新 更多