簡體   English   中英

如何使用pydub檢測音頻流中的靜音?

[英]How to detect silence in an audio stream with pydub?

我想監視音頻流中的靜音。 知道我該怎么做嗎? 它是流,而不是音頻文件。

最好的選擇是從流中獲取塊(我建議使用50毫秒的塊,因為20Hz處的一個完整波形為50ms),並使用此數據構造AudioSegment。

完成此操作后,您將可以使用AudioSegment().dBFS屬性大致了解該塊的平均響度。 一旦了解了高低點,就可以設置一個閾值,低於該閾值將被視為靜音。

當然,您也可以自動確定靜音閾值,但這可能需要跟蹤最近X秒鍾內最大聲和最小聲的信號電平,並且還可能使用某種衰減。

注意:我上面描述的方法絕對不是最快的方法,但是pydub本身並不處理流。 也就是說,這可能是使用pydub實現目標的最簡單方法。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM