Ai工匠學(xué)堂WeNet線(xiàn)下短訓(xùn)班-北京站(四天)
2023-08-08 16:08 作者:bili_93891819972 | 我要投稿
1)語(yǔ)音文件讀入
WeNet只支持44字節(jié)header的wav格式音頻數(shù)據(jù),wav header定義在WavHeader結(jié)構(gòu)體中,包括音頻格式、聲道數(shù)、采樣率等音頻元信息。WavReader類(lèi)用于語(yǔ)音文件讀入,調(diào)用fopen打開(kāi)語(yǔ)音文件后,WavReader先讀入WavHeader大小的數(shù)據(jù)(也就是44字節(jié)),再根據(jù)WavHeader中的元信息確定待讀入音頻數(shù)據(jù)的大小,最后調(diào)用fread把音頻數(shù)據(jù)讀入buffer,并通過(guò)static_cast把數(shù)據(jù)轉(zhuǎn)化為float類(lèi)型。
struct WavHeader {
char riff[4]; // "riff"
unsigned int size;
char wav[4]; // "WAVE"
標(biāo)簽: