python实现音乐高潮部分提取

一、安装pychorus

1
pip install pychorus

二、使用pychorus

注意:确保代码目录中存在ffmpeg.exe

提取单首歌的高潮部分

1
2
3
from pychorus import find_and_output_chorus

chorus_start_sec = find_and_output_chorus("D:\\music\\记念.mp3", "记念_high.wav", 10)

批量提取音乐高潮部分

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
import os
import sys
from pychorus import find_and_output_chorus

def extract_all_file(files_path):
"""
批量提取音乐高潮
"""
# 文件夹路径
modpath = os.path.dirname(os.path.abspath(sys.argv[0]))
for filepath in os.listdir(files_path):
# 路径处理
datapath = os.path.join(modpath, files_path + filepath)
# output文件夹是否存在
targets = f"{modpath}\\output\\"
if not os.path.exists(targets):
os.makedirs(targets)
# 提取音乐高潮至当前output文件夹下
find_and_output_chorus(
datapath, f"{targets}{filepath.split('.')[0]}_high.wav", 10
)

extract_all_file("D:\\music\\")
0%