通过librosa分析音乐获取节拍的时间轴数据,代码如下:
import librosa
import numpy as np
# 加载音频文件
y, sr = librosa.load('music.mp3')
# 检测节拍
tempo, beat_frames = librosa.beat.beat_track(y=y, sr=sr)
# 将帧转换为时间
#beat_times = librosa.frames_to_time(beat_frames, sr=sr)
beat_times = np.round(librosa.frames_to_time(beat_frames, sr=sr), decimals=2)
print(f"Estimated tempo: {tempo}")
print("Beat times:")
print(beat_times)
# 检测音乐起始点
onset_env = librosa.onset.onset_strength(y=y, sr=sr)
onset_frames = librosa.onset.onset_detect(onset_envelope=onset_env, sr=sr)
onset_times = librosa.frames_to_time(onset_frames, sr=sr)
print("Onset times:")
print(onset_times)
网友回复
如何将linux服务器的文件目录映射到windows电脑磁盘?
Docling 与 MarkItDown 两个库有啥不同?
豆包收费后国产其他ai软件也会跟进收费吗?
JPEG 与 HEIF图片格式区别?
centos7版本太旧无法安装python3.11,如何在docker中运行python3.11?
python如何做个RPA按键精灵的程序?
写一个windows的cmd的python代码如何在命令行中捕获获取复制粘贴的图片?
如何将别人爆款的抖音短视频短剧文案提取为seedance2的提示词?
阿里云域名dns云解析10万次日限额如何应对?
windows电脑如何提交上架ipa苹果应用?


