Skip to main content
 首页 » 编程设计

python之使用 Python 静音后在 PCM WAV 文件中查找索引

2025年05月04日8jirigala

我需要能够在暂停(静音)后立即找到 WAV 片段的索引,最好以毫秒为单位。我将使用此索引来指示在前一个句子停顿后新句子的语音开始位置。我可以提供一段两三秒的片段,其中包含双方的停顿和讲话。

我看过 Python Wave 如何打开和保存文件,但我不确定如何找到相对静音后的第一个声音并获取索引。

更新:

我的目的是为圣经经文编制索引,以便用户可以选择任何经文并聆听朗读。找到第一个声音提示的索引后,我会将其倒退几十毫秒以进行导入。

谢谢

请您参考如下方法:

我在我的应用程序中使用过一次,但我从 SO 复制/粘贴了它。感谢写它的人 ;)

import wave 
 
handle = wave.open('file', 'r') 
 
for i in range(handle.getnframes()): 
  frame = handle.readframes(i) 
 
  zero = True 
 
  for j in range(len(frame)): 
    if ord(frame[j]) > 0: 
      zero = False 
      break 
 
    if zero: 
      print 'Silence found at frame {0}'.format(handle.tell())