我試圖爲andriod開發的應用程序,記錄48Khz幀(PCM 16bits &單聲道)並將它們發送到網絡。此外,還有一個8Khz的輸入音頻流。因此,我收到8Khz採樣幀並播放它們(我的AudioTrack對象設置爲8Khz),但播放它們時,一切正常,但延遲很大。它需要大約3秒鐘,直到你聽到什麼。從8Khz到48Khz(Java/Android)的resample/upsample聲音幀
我認爲如果我將從8Khz接收的幀上採樣到48Khz並播放它們,將不會有如此巨大的播放延遲。實際上,當我以相同的速率錄製和播放幀時,延遲非常低。壞事是我被迫這樣做:發送到48Khz並接收到8Khz。
正如之前所解釋的,我試圖將聲音幀(16位PCM)從8Khz上採樣到48Khz。有誰知道Java中的任何例程/庫/ API嗎?
我知道關於上採樣謹慎信號的基礎知識,但我認爲要設計和實現我自己的FIR濾波器並將其與音頻流進行卷積....太方便了。另外,這是我的知識。
那麼......有沒有人可以幫助我呢?有人知道我可以使用Java中的任何庫/例程嗎?任何建議或替代品?
@juergen,如果你要碰到一個老問題解決在「感謝先進的」錯別字,*至少*刪除這句話完全,如它是沒有價值的,並修復其他拼寫錯誤。 – 2015-04-17 01:22:43