python将音频进行变速的操作方法


Posted in Python onApril 08, 2020

有的时候需要手里的音频文件变速听,或可能变慢或可能变快

这里使用的python进行操作,我的目标是将文件转成2倍速

首先需要安装插件

pip install ffmpeg

然后再执行:

from ffmpeg import audio
audio.a_speed("D:\\1505.mp3", "2", "D:\\1505_2x.mp3")

如果执行不出错,会返回一个true

运行结果

python将音频进行变速的操作方法

我可以看到这里的音频速度提升以后音频小了

这里我是将目标路径下的MP3音频转成了2倍速的,设立不局限于MP3。其他格式的音频文件也是可以进行处理的。

当然这里还可以进行批量操作

import os
import sys
from ffmpeg import audio
audio_path = "D:\\audio\\" 
finish_path = "D:\\2x_audio\\"
 
def run():
 audio_file = os.listdir(audio_path)
 for i, audio1 in enumerate(audio_file):
  print(audio_path+audio1)
  audio.a_speed(audio_path+audio1, "2", finish_path+"2x"+audio1)
run()

实际上这个的源码干了一件这个事情

import subprocess
 
# 调整音频播放速率
def a_speed(input_file, speed, out_file):
 try:
  cmd = "ffmpeg -y -i %s -filter_complex \"atempo=tempo=%s\" %s" % (input_file, speed, out_file)
  res = subprocess.call(cmd, shell=True)
 
  if res != 0:
   return False
  return True
 except Exception:
  return False

实际可以看到,使用的f调用的原生的fmpeg,也就是基于fmpeg开发的

不过好像我发现,如果音频文件太大会失败,返回false

我试过原生的fmpeg是可以进行的,只是会转换很慢

D:\>ffmpeg -n -i 222.mp3 -filter:a "atempo=2" output.mp3

现在不知道是不是因为限制了大小(现在猜测可能是显示了大或者限制了响应时间大小,在源码里没有发现什么诡异的地方),音频不算大的是没问题的,我试的单个文件是100多兆的文件,会失败,但是10m是没有问题的。

实在不行就直接用原生的好了

import os
import sys
#from ffmpeg import audio
 
audio_path = "D:\\audio\\" 
finish_path = "D:\\2x_audio\\"
 
def run():
 audio_file = os.listdir(audio_path)
 for i, audio1 in enumerate(audio_file):
  #print(audio_path+audio1)
  cmd="ffmpeg -n -i "+audio_path+audio1+" -filter:a atempo=2 "+finish_path+"2x"+audio1
  #print(cmd)
  os.system(cmd)
  #audio.a_speed(audio_path+audio1, "2", finish_path+"2x"+audio1)
run()

后来发现,最好音频的文件名不要有汉字

上面另两个代码应该都是可以的

总结

到此这篇关于python将音频进行变速的操作方法的文章就介绍到这了,更多相关python 音频变速内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python实例分享:快速查找出被挂马的文件
Jun 08 Python
Python命令行参数解析模块optparse使用实例
Apr 13 Python
python 列表删除所有指定元素的方法
Apr 19 Python
python selenium firefox使用详解
Feb 26 Python
使用 Python 合并多个格式一致的 Excel 文件(推荐)
Dec 09 Python
python使用ctypes调用扩展模块的实例方法
Jan 28 Python
Tensorflow tf.dynamic_partition矩阵拆分示例(Python3)
Feb 07 Python
python实现银行实战系统
Feb 26 Python
Keras 利用sklearn的ROC-AUC建立评价函数详解
Jun 15 Python
为什么python比较流行
Jun 19 Python
Pycharm Available Package无法显示/安装包的问题Error Loading Package List解决
Sep 18 Python
python Tornado框架的使用示例
Oct 19 Python
Python读取配置文件(config.ini)以及写入配置文件
Apr 08 #Python
Ubuntu18.04安装 PyCharm并使用 Anaconda 管理的Python环境
Apr 08 #Python
在python中修改.properties文件的操作
Apr 08 #Python
python3 配置logging日志类的操作
Apr 08 #Python
python3 logging日志封装实例
Apr 08 #Python
Django实现whoosh搜索引擎使用jieba分词
Apr 08 #Python
Python 输出详细的异常信息(traceback)方式
Apr 08 #Python
You might like
隐性调用php程序的方法
2015/06/13 PHP
基于PHP实现短信验证码接口(容联运通讯)
2016/09/06 PHP
两个listbox实现选项的添加删除和搜索
2013/03/01 Javascript
网页中可关闭的漂浮窗口实现可自行调节
2013/08/20 Javascript
实例详解JavaScript获取链接参数的方法
2016/01/01 Javascript
ionic js 复选框 与普通的 HTML 复选框到底有没区别
2016/06/06 Javascript
模仿password输入框的实现代码
2016/06/07 Javascript
js中string和number类型互转换技巧(分享)
2016/11/28 Javascript
微信小程序 label 组件详解及简单实例
2017/01/10 Javascript
微信小程序模板之分页滑动栏
2017/02/10 Javascript
Angular4.x通过路由守卫进行路由重定向实现根据条件跳转到相应的页面(推荐)
2018/05/10 Javascript
优雅的elementUI table单元格可编辑实现方法详解
2018/12/23 Javascript
gearman的安装启动及python API使用实例
2014/07/08 Python
详尽讲述用Python的Django框架测试驱动开发的教程
2015/04/22 Python
详解在Python中处理异常的教程
2015/05/24 Python
轻松理解Python 中的 descriptor
2017/09/15 Python
Python实现k-means算法
2018/02/23 Python
Django中反向生成models.py的实例讲解
2018/05/30 Python
使用Numpy读取CSV文件,并进行行列删除的操作方法
2018/07/04 Python
详解将Django部署到Centos7全攻略
2018/09/26 Python
Python类反射机制使用实例解析
2019/12/30 Python
Python抓新型冠状病毒肺炎疫情数据并绘制全国疫情分布的代码实例
2020/02/05 Python
Python loguru日志库之高效输出控制台日志和日志记录
2020/03/07 Python
python 已知平行四边形三个点,求第四个点的案例
2020/04/12 Python
keras小技巧——获取某一个网络层的输出方式
2020/05/23 Python
python爬虫beautifulsoup库使用操作教程全解(python爬虫基础入门)
2021/02/19 Python
详解Html5原生拖拽操作
2018/01/12 HTML / CSS
浅析HTML5中的download属性使用
2019/03/13 HTML / CSS
美国最大的袜子制造商和零售商:Renfro Socks
2017/09/03 全球购物
Kate Spade美国官网:纽约新兴时尚品牌,以包包闻名于世
2017/11/09 全球购物
一年级评语大全
2014/04/23 职场文书
关工委先进个人事迹材料
2014/05/23 职场文书
党员教师四风问题整改措施思想汇报
2014/10/08 职场文书
教师党员批评与自我批评发言稿
2014/10/15 职场文书
2015年司机年终工作总结
2015/05/14 职场文书
Python基于Opencv识别两张相似图片
2021/04/25 Python