有些时候,我们为了设定手机铃声或者发抖音视频时,会耗费大量时间在音乐剪辑上。尤其是想发布大量抖音视频的时候,我们得收集大量的短音乐,这是一个相当耗费时间的工作。那么,这个音乐高潮的提取能不能自动化呢?答案是:可以。

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

怎么样,是不是迫不及待想往下读了?不要急,让我们从原理开始慢慢讲起。

1.原理简介

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

1.遍历整首歌曲。

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

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

2.代码编写

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

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

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

这主要是因为歌曲由12个基本音符的帧的集合而组成,v1和v2是任意两段音乐的音符矢量,如果说两段音乐非常相似,那么右边的式子将接近于0. 如果说 1-右边的式子 得分非常高,则说明两段音乐非常相似。

下面我们看看怎么使用这个项目求音乐高潮部分,其实非常简单。

2.1 安装所需要的项目

你可以通过pip安装该项目,如果你还没有安装好Python相关环境,建议阅读这篇文章:Python超详细安装指南,PIP安装指令如下:

pip install pychorus

2.2 编写代码

实际上,这个包用起来可是相当简单,如果我们只是想单纯提取歌曲高潮部分:

frompychorusimportfind_and_output_chorus

chorus_start_sec=find_and_output_chorus("你的音乐文件","输出高潮部分文件",要多少秒的高潮部分)

没错,两行代码就解决了。如果你想知道一些详细的细节,比如说输出相似矩阵或者结果可视化,建议阅读github中该项目的操作指令。下面让我们检验一下效果。

3.效果检验

以《孤芳自赏》 为例,让我们试试这个提取器的功力。

原曲:

编写代码:

# 提取音乐高潮部分

frompychorusimportfind_and_output_chorus

chorus_start_sec=find_and_output_chorus("孤芳自赏.mp3","孤芳自赏_high.wav",40)

效果如下:

非常优秀!提取了我心目中想要的部分。大家也可以根据我们今天的教程,试着提取一下自己喜欢的音乐的高潮部分哦!

如果你喜欢今天的Python 教程,请持续关注Python实用宝典,如果对你有帮助,麻烦在下面点一个赞/在看

,有任何问题都可以在下方留言,我们会耐心解答的!

点击下方阅读原文可以获取所有代码和链接哦!

Python实用宝典 (pythondict.com)

不只是一个宝典

欢迎关注公众号:Python实用宝典

python背景怎么自定义铃声_Python 制作音乐高潮副歌提取器相关推荐

  1. python背景怎么自定义铃声_python爬取手机铃声

    相信每个人都会给自己的手机调一个好听的音乐作为铃声,但是对于iphone用户来说换铃声一般都会去找第三方平台来进行更换,众多平台当中不得不说的就是爱思手机助手,今天我将带你通过python爬虫来批量进 ...

  2. python背景怎么自定义铃声_Python 上课铃声的定时播放(具有较强的自我管理能力.jpg)...

    为了在家安心学习,我决定写一段代码播放上课的铃声. 之前中学时就希望有一个这样的软件,周末就可以高效学习了. 但是网上搜不到相关软件,当时也不会写代码,就用闹钟来代替了. 现在自己写一个试试. 原本我 ...

  3. python背景怎么自定义铃声_用python来教你做个音乐高潮提取器

    有些时候,我们为了设定手机铃声或者发抖音视频时,会耗费大量时间在音乐剪辑上.尤其是想发布大量抖音视频的时候,我们得收集大量的短音乐,这是一个相当耗费时间的工作.那么,这个音乐高潮的提取能不能自动化呢? ...

  4. python爬虫程序的流程图_Python即时网络爬虫项目: 内容提取器的定义(Python2.7版本)...

    ###1. 项目背景 在Python即时网络爬虫项目启动说明中我们讨论一个数字:程序员浪费在调测内容提取规则上的时间太多了(见上图),从而我们发起了这个项目,把程序员从繁琐的调测规则中解放出来,投入到 ...

  5. python怎么实现音乐快进_Python 超简单3行代码提取音乐高潮(附批量提取)

    有些时候,为了设定手机铃声或者发抖音视频,我们会耗费大量时间在剪辑音乐高潮部分上.那么这个音乐高潮的提取能不能自动化呢?当然可以. 先来听听效果,孤芳自赏提取高潮后的部分: 怎么样,是不是迫不及待想往 ...

  6. python自动生成采集规则_快速制作规则及获取规则提取器API

    1. 引言 前面文章的测试案例都用到了集搜客Gooseeker提供的规则提取器,在网页抓取工作中,调试正则表达式或者XPath都是特别繁琐的,耗时耗力,工作枯燥,如果有一个工具可以快速生成规则,而且可 ...

  7. python自动生成采集规则_快速制作规则及获取规则提取器AP

    一. 引言 之前文章所用的例子中的规则都是固定的,如何自定义规则再结合提取器提取我们想要的网页内容呢?对于程序员来说,理想的目标是掌握一个通用的爬虫框架,每增加一个新目标网站就要跟着改代码,这显然不是 ...

  8. lisp 批量文字求差值_Python 超简单 提取音乐高潮(附批量提取)

    希望点击上方 编程学习者社区,选择 创建星标 回复关键字 资源  获取编程资源 很多时候我们想提取某首歌的副歌部分(俗称 高潮部分),只能手动直接卡点剪切,但是对于大批量的获取就很头疼,如何解决?怎么 ...

  9. Python 超简单3行代码提取音乐高潮(附批量提取)!

    怎么样,是不是迫不及待想往下读了?不要急,让我们从原理开始慢慢讲起. 1.原理简介 不知道大家有没有这样的体会,大部分时候,歌曲的高潮部分通常是重复次数最多的部分.因此我们可以根据这一个特征,提出我们 ...

最新文章

  1. “三巨头”联合发布万字长文,深度学习将通往何方?
  2. 基于ADuC845的数据采集板
  3. 自学python需要买书吗-学习python需要有编程基础吗
  4. Android中三种超实用的滑屏方式汇总(ViewPager、ViewFlipper、ViewFlow)
  5. led内部结构_粘合剂和密封胶性质一样吗?用在汽车、LED灯具需要注意什么?
  6. 重游java(猜拳项目)
  7. js调用php函数兵每秒刷新,深入理解JavaScript立即调用函数表达式(IIFE)
  8. 所有特征在不同分类之间、 train和test之间的列分布差异(图形绘制)
  9. 如何设置浏览器禁止使用UC浏览器
  10. 人生轨迹的改变,首要在于思维方式的改变。--转贴 CSDN.NET公司内部论坛:迈向成功的“脑力操”...
  11. 【Codeforces Round #291 (Div. 2) D】R2D2 and Droid Army【线段树+二分】
  12. SQL数据库学习总结
  13. 老人信息管理系统c语言,基于STM32的老人吃药提醒器——智能电子药盒设计(原理图、PCB源文件、源码、APP源码等)...
  14. 降本增效,粮食加工产线自动化控制系统方案
  15. html给页面整体添加左右边距_css div 网页的页面边距怎么控制
  16. ES生命周期管理 配置ilm策略
  17. 逻辑回归原理与sklearn实现
  18. craftsmanship中文_中英文常用广告套语
  19. 【转帖】绝版破解软件教程就不信你学不会!!
  20. snmp v3 参数_snmp v3配置使用

热门文章

  1. 《炬丰科技-半导体工艺》ICP刻蚀氮化镓基LED结构的研究
  2. 【毕业设计】微信小程序商城购物系统
  3. ps入门第1天_认识PS基础文件设置_打印分辨率300像素_ps颜色模式
  4. usleep的--系统调用流程--及不准确的问题 - Android4 0 1
  5. 攻防世界 crypto 入门题之easy_RSA
  6. 2020算法秋招面经
  7. 学习使用Postman+Newman
  8. 三、动画 -变形transform
  9. Directshow 视频捕捉入门篇 二
  10. CAM350几乎看不到Gerber文件颜色