加入收藏 | 设为首页 | 会员中心 | 我要投稿 湖南网 (https://www.hunanwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 建站 > 正文

Python小器材:3秒钟将视频转换为音频

发布时间:2019-10-30 01:24:02 所属栏目:建站 来源:pk 哥
导读:最近,有读者微信上私聊我,想让我写一篇视频批量转换成音频的文章,我承诺了,周末宅家里把这个小器材做出来了。 这样,对付有些视频进修文件,我们可以批量转换成音频文件,进修方法更多样化了。 之前也用过 ffmpeg 处理赏罚视频文件。ffmpeg 这个措施处理赏罚视
副问题[/!--empirenews.page--]

最近,有读者微信上私聊我,想让我写一篇视频批量转换成音频的文章,我承诺了,周末宅家里把这个小器材做出来了。

Python小器材:3秒钟将视频转换为音频

这样,对付有些视频进修文件,我们可以批量转换成音频文件,进修方法更多样化了。

之前也用过 ffmpeg 处理赏罚视频文件。ffmpeg 这个措施处理赏罚视频是好用,可是有没有更精练的呢?可以不下载这个措施吗?还真有,Python 里有 ffmpeg 相干的库:ffmpy3。

ffmpy3 是 ffmpy 的一个分支,它是一个简朴的 FFmpeg 呼吁行包装措施。ffmpy 实现了一个 Pythonic 接口,用于通过呼吁行执行 FFmpeg,并行使 Python 的子历程模块举办同步执行。行使 Python 的 asyncio.subprocess 模块也支持异步执行。

安装导入

用 pip 呼吁快速安装。

  1. pip install ffmpy3  

导入适才安装好的 ffmpy3 库,等下必要读取视频存放的目次和音频存放的目次,以是我们必要导入 os 模块。

  1. import os 
  2. from ffmpy3 import FFmpeg 

建设生涯音频的目次

我们必要把转换后的音频文件存放在指定的文件夹里,为了更智能,我们做一个判定,假如不存在这个目次,我们就建设,存在的话就保持稳固。

  1. def mkdir_output(output_dir): 
  2.     existence = os.path.exists(output_dir) 
  3.     if not existence: 
  4.         print('建设音频存放目次') 
  5.         os.makedirs(output_dir)    # 建设目次 
  6.         os.chdir(output_dir)       # 切换到建设的文件夹 
  7.         return True 
  8.     else: 
  9.         print('目次已存在,即将生涯!') 
  10.         return False 

存放路径我们作为参数,等下挪用时给出存放路径即可。

文件名目处理赏罚

我们把必要转换为音频的视频文件放在一个文件夹下面,用 os 模块把视频的文件名称读取出来,放在列表中。

  1. filepath = r"/Users/brucepk/test"   # 待转换视频存放的路径 
  2. os.chdir(filepath)                  # 切换到改路径下 
  3. filename = os.listdir(filepath)  # 获得文件夹下的全部文件名称 

然后我们把全部视频文件后缀替代成音频的名目,视频文件名目较多,我把常见的根基都列出来了。

Python小器材:3秒钟将视频转换为音频

把响应目次下全部视频文件转换成 wav 音频文件储存在指定目次下。

音频文件属性

只改文件后缀虽然是不可,文件属性没有转变,这样的文件是无法读取的,我们必要用 FFmpeg 要领对转换后的音频文件赋予它音频的属性。

  1. ff = FFmpeg( 
  2.             inputs={changefile: None}, 
  3.             outputs={outputfile: '-vn -ar 44100 -ac 2 -ab 192 -f wav'} 
  4.             ) 
  5.         print(ff.cmd) 
  6.         ff.run() 

结果

我在 test 目次下放在两个视频文件,一个是我用手机拍摄的 mp4 名目标视频,为了测试出结果,录了一段语音,另一个视频是 mkv 名目标一部影戏。

Python小器材:3秒钟将视频转换为音频

运行代码后,会自动建设一个 output 文件夹,内里就是转换好的音频文件。

Python小器材:3秒钟将视频转换为音频

用支持音频的软件打开,可以清楚听到音频。

运行报错处理赏罚

1、当你运行代码时,Windows 体系也许会呈现 ffmpeg 无法找到之类的报错,如下图所示。

Python小器材:3秒钟将视频转换为音频

这时,我们必要下载 FFmpeg,会见下面的地点,按照自身电脑版本下载响应安装包。

(编辑:湖南网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读