Python 音訊檔批次切割

2020-09-26 09:00:12

Python 音訊檔批次切割

操作

  1. 安裝 pydub
    1.pip3 install pydub
  2. pydub需要依賴 ffmpeg 安裝ffmpeg
    1.安裝地址ffmpeg下載連結
    2.設定環境變數
  3. 程式碼實現
from pydub import AudioSegment
from pydub.utils import make_chunks
import os, re
# #
# # 迴圈目錄下所有檔案
for each in os.listdir("D:/純音樂"): #迴圈目錄
    
    filename = re.findall(r"(.*?)\.mp3", each) # 取出.mp3字尾的檔名
    print(each)
    if each:
        # filename[0] += '.wav'
        # print(filename[0])

        mp3 = AudioSegment.from_file('D:/純音樂/{}'.format(each), "mp3") # 開啟mp3檔案
#         # # mp3[17*1000+500:].export(filename[0], format="mp3") #
        size = 15000  # 切割的毫秒數 10s=10000

        chunks = make_chunks(mp3, size)  # 將檔案切割為15s一塊

        for i, chunk in enumerate(chunks):

            chunk_name = "{}-{}.mp3".format(each.split(".")[0],i)
            print(chunk_name)
            chunk.export('D:/純音樂分解/{}'.format(chunk_name), format="mp3")```