sndhdr --- 判定聲音檔案的型別

原始碼:Lib/sndhdr.py

3.11 版後已棄用: sndhdr 模組 (module) 即將被棄用(詳情與替代方案請見 PEP 594)。


sndhdr 提供了企圖猜測檔案中聲音資料型別的工具函式。當這些函式可以推測出儲存在檔案中聲音資料的型別,它們分別回傳一個 collections.namedtuple(),包含了五種屬性:(filetypeframeratenchannelsnframessampwidth)。這些 type 的值表示資料的型別,會是以下字串之一:'aifc''aiff''au''hcom''sndr''sndt''voc''wav''8svx''sb''ub''ul'sampling_rate(取樣頻率)可能是實際值、或者當未知或者難以解碼時為 0。同樣的,channels(影像通道數)也會回傳實際值或者在無法推測或難以解碼時回傳 0frames(幀數)則是實際值或 -1。tuple 的最後一項,bits_per_sample 為位元表示的取樣大小,或者在 A-LAW 時為 'A',u-LAW 時為 'U'

sndhdr.what(filename)

使用 whathdr() 推測儲存在 filename 檔案中聲音資料的型別。如果成功,回傳上述的 namedtuple(附名元組),否則回傳 None

3.5 版更變: 結果從 tuple 改為 namedtuple。

sndhdr.whathdr(filename)

根據檔案標頭 (header) 推測儲存在檔案中的聲音資料型別。檔名由 filename 給定。這個函式在成功時回傳上述 namedtuple,或在失敗時回傳 None

3.5 版更變: 結果從 tuple 改為 namedtuple。