欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python對(duì)批量WAV音頻進(jìn)行等長(zhǎng)分割的方法實(shí)現(xiàn)

 更新時(shí)間:2020年09月25日 11:33:05   作者:養(yǎng)只小刺猬吧  
這篇文章主要介紹了python對(duì)批量WAV音頻進(jìn)行等長(zhǎng)分割的方法實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

對(duì)批量WAV音頻進(jìn)行等長(zhǎng)分割

對(duì)WAV格式的音頻以相同長(zhǎng)度進(jìn)行分割。

import os
import wave
import numpy as np
import pylab as plt
import librosa

path = r"D:\cutaudio\test"
files = os.listdir(path)
files = [path + "\\" + f for f in files if f.endswith('.wav')]
CutTime = 4 #單位長(zhǎng)度4s

def CutAudios():
  for i in range(len(files)):
    FileName = files[i]
    f = wave.open(r"" + FileName, 'rb')
    params = f.getparams() #讀取音頻文件信息
    nchannels, sampwidth, framerate, nframes = params[:4] #聲道數(shù), 量化位數(shù), 采樣頻率, 采樣點(diǎn)數(shù)  
    str_data = f.readframes(nframes)
    f.close()
   
    wave_data = np.frombuffer(str_data, dtype=np.short)
    #根據(jù)聲道數(shù)對(duì)音頻進(jìn)行轉(zhuǎn)換
    if nchannels > 1:
        wave_data.shape = -1, 2
        wave_data = wave_data.T
        temp_data = wave_data.T
    else:
        wave_data = wave_data.T
        temp_data = wave_data.T

    CutFrameNum = framerate * CutTime 
    Cutnum =nframes/CutFrameNum #音頻片段數(shù)
    StepNum = int(CutFrameNum)
    StepTotalNum = 0
  
    for j in range(int(Cutnum)):
      FileName = r"D:\cutaudio\11\\" + files[i][-17:-4] +"-"+ str(j) + ".wav"
      temp_dataTemp = temp_data[StepNum * (j):StepNum * (j + 1)]
      StepTotalNum = (j + 1) * StepNum
      temp_dataTemp.shape = 1, -1
      temp_dataTemp = temp_dataTemp.astype(np.short)# 打開(kāi)WAV文檔
      f = wave.open(FileName, 'wb')
      # 配置聲道數(shù)、量化位數(shù)和取樣頻率
      f.setnchannels(nchannels)
      f.setsampwidth(sampwidth)
      f.setframerate(framerate)
      f.writeframes(temp_dataTemp.tostring()) # 將wav_data轉(zhuǎn)換為二進(jìn)制數(shù)據(jù)寫(xiě)入文件
      f.close()
      
if __name__ == '__main__' :
  CutAudios()

到此這篇關(guān)于python對(duì)批量WAV音頻進(jìn)行等長(zhǎng)分割的方法實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)python WAV等長(zhǎng)分割內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論