我正在尝试为通过websocket传输的VOIP呼叫设置WebRTC语音活动检测器(VAD),以检测呼叫者何时停止通话。
大多数关于WebRTC VAD的教程和问题都是基于录制的音频文件,而不是基于实时流。我想知道如何在websocket上实时实现VOIP呼叫。
根据py-webrtcvad文档(https://pypi.org/project/webrtcvad/):
给它一个短片段(“帧”)的音频。WebRTC VAD只接受16位单声道音频,采样频率为8000、16000或32000赫兹.帧的持续时间必须为10、20或30 ms。
如何将来自websocket的原始音频流转换为上面所需的WebRTC VAD才能工作呢?
发布于 2021-04-20 16:17:42
要使用VAD,需要正确的块大小。https://github.com/wiseman/py-webrtcvad/issues/30
- For example, if your sample rate is 16000 Hz, then the only allowed
frame/chunk sizes are:
16000 * ({10,20,30} / 1000) = 160, 320 or 480 samples.
- Since each sample is 2 bytes (16 bits), the only allowed frame/chunk sizes are
320, 640, or 960 bytes.https://stackoverflow.com/questions/66576350
复制相似问题