Python 超简单 提取音乐高潮(附批量提取)!

本文介绍如何使用Python的pychorus库自动提取歌曲的高潮部分。通过计算音乐片段间的相似度,找到重复次数多且间隔长的片段作为高潮。文章包括原理简介、代码实现、效果检验和批量处理的步骤,适合初学者实践。
摘要由CSDN通过智能技术生成

很多时候我们想提取某首歌的副歌部分(俗称 高潮部分),只能手动直接卡点剪切,但是对于大批量的获取就很头疼,如何解决?

今天我们就来用Python帮我们自动提取吧!

先来听听效果,孤芳自赏提取高潮后的部分:

 

孤芳自赏 高潮部分来自裸睡的猪00:0000:40

 

 

 

一、原理简介

不知道大家有没有这样的体会,大部分时候,歌曲的高潮部分通常是重复次数最多的部分。因此我们可以根据这一个特征,提出我们的算法:

    1.遍历整首歌曲。

    2.将选定长度的部分与其他部分比较并计算相似度,以查看是否重复。

    3.寻找重复次数较大、且间隔长的片段。

 

二、代码编写

为了避免造轮子,我们找到了别人已经做过的类似的项目:https://github.com/vivjay30/pychorus

我们只需要分析这个源代码中最核心的部分,即求相似区段的源代码,就能知道它是不是符合我们的项目需求了:

 

 

可以看到,这部分代码就是做了我们算法的第二步,进行了片段与片段之间的相似度计算。检测时用到的相似函数是这样的:

 

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值