[英]Detect gaps in audio file in iOS
我正在開發用於語言學習的應用程序(帶有發音的外來單詞的卡片)。 我可以使用旁白,但是我想可以導入帶有本地發音的音頻CD。 問題是給定部分的音頻文件沒有按單詞划分。 有什么方法可以檢測它們之間的差距?
我設法將歌曲從iPod庫導入到app文件夾中,因此可以使用AVFoundation等。我認為可以通過處理單個樣本來實現,但我不確定如何執行此操作。 任何幫助,將不勝感激。
我終於設法通過處理單個音頻樣本來完成此任務。 還有一個很好的答案,可以真正幫助您理解如何獲取所需的所有音頻信息的方式: AVAudioPlayer- 通過AVAssetReader 計量和讀取音頻樣本
你必須:
請注意,采樣表示經過零的波形,因此您需要向前分析幾個采樣以查看是否沒有其他音頻信號。 同樣的噪聲有時可能會超出您的承受能力。
對於每個聲音樣本,s = samp [k],請執行以下操作:
fac = 0.01
tot = (1.-fac) * tot + fac * (s*s)
這種技術是低通濾波器的一種非常基本的形式。 它將為您提供一個更現實的瞬時能量度量。
另一種輕量級技術是對最后一百個樣本量進行盒裝積分,也稱為移動平均值。
av = float[1000]
p=0
然后對於每個樣本:
tot -= ring[p]
ring[p] = s*s
tot += ring[p]
p = p+1 % 1000
要研究的另一件事是泄漏的積分器。
例如,您也可以每10個樣本中僅處理一個樣本,這仍然可以捕獲高達2205Hz的頻率
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.