語音wav轉pcm可以用ffmpeg工具,也可以自己寫,主要是要了解pcm和wav的格式以及頭信息的: pcm 是沒有頭信息的,wav有44字節的頭文件,所以去掉44字節的頭文件就okay了
import os import numpy as np f = open("sw02725-A_018202-018583#sw02141-B_013798-014064.wav") f.seek(0) f.read(44) data = np.fromfile(f, dtype=np.int16) data.tofile("test.pcm")
PCM轉wav就比較簡單了,有wave庫, 可以直接加頭信息
imprort wave import os f = open(pcm_file,'rb') str_data = f.read() wave_out=wave.open(wav_file,'wb') wave_out.setnchannels(1) wave_out.setsampwidth(2) wave_out.setframerate(8000) wave_out.writeframes(str_data)