我有一個wav檔案,我用Audacity重新取樣到16.000kHz。 現在我試圖用兩種不同的方式用python加載這個檔案。
import tensorflow as tf
import librosa
f = "path/to/wav/file/xxxx.wav"/span>
raw = tf.io.read_file(f)
audio, sr = tf.audio.decode_wav(raw, desired_channels=1)
print("Sample Rate TF: "/span>,sr.numpy()
y, sr2 = librosa.load(f)
print("Sample Rate librosa: ", sr2)
# sample Rate TF: 16000
#Sample Ratelibrosa: 22050[/span
為什么同一個檔案的采樣率會有如此大的差異? 哪一個庫我可以更信任?
uj5u.com熱心網友回復:
這不是一個 "信任 "的問題。兩個函式都做了它們應該做的事。TF版本顯然不會對音頻進行重采樣。Librosa,默認情況下,重新取樣到22,050赫茲(不管什么原因)。請閱讀檔案。你可以通過呼叫
來避免這種情況y, sr2 = librosa.load(f, sr=None)
一般來說,sr引數提供了重新取樣的采樣率;通過None,你可以防止重新取樣。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/328137.html
標籤:
下一篇:Apache錯誤檔案自動重寫規則
