作者:小舟逝江海

http://suo.im/5yOtbx

写在开头

身处数据爆炸增长的时代,各种各样的数据都飞速增长,视频数据也不例外。我们可以使用 python 来提取视频中的音频,而这仅仅需要安装一个体量很小的python包,然后执行三行程序!

语音数据在数据分析领域极为重要。比如可以分析语义、口音、根据人的情绪等等。可以应用于偏好分析、谎话检测等等。

提取音频

需要用到 python 包 moviepy,这里是moviepy 的 github 地址:

https://github.com/Zulko/moviepy

安装 python 包

安装 moviepy,cmd 或 bash 输入

pip install moviepy

提取音频

假设有一个 mp4 文件路径为"e:/chrome/my_video.mp4",我们想提取其音频保存到"“e:/chrome/my_audio.wav”",那么三行程序为:

from moviepy.editor import AudioFileClipmy_audio_clip = AudioFileClip("e:/chrome/my_video.mp4")my_audio_clip.write_audiofile("e:/chrome/my_audio.wav")

执行上面的三行程序,就会发现音频文件已经成功提取到指定文件夹了~ 这里的视频格式和音频格式都支持其他格式,比如读取 m4v 格式视频,保存 MP3 格式音频,下面是我电脑的示例:

分析音频

可以使用 librosa 包来分析音频,这里是librosa 的 github 地址:

https://github.com/librosa/librosa

安装 python 包

安装 librosa,cmd 或 bash 输入

pip install librosa

需要说明,librosa 包本身不支持 MP3 格式,需要一些相关包的支持。官网上说使用 conda 安装则自动安装 MP3 支持的相关包。具体请去librosa 的 github 地址了解。

读取音频

假设有一个 wav 文件路径为"e:/chrome/my_audio.wav"。科普一下音频数据的内容,可以认为记录采样频率和每个采样点的信号强度两个部分即可构成一个音频文件。数据流可理解为一个数组,按照字节存储。

下面我们读取音频

import librosaaudio, freq = librosa.load('e:/chrome/my_audio.wav')time = np.arange(0, len(audio)) / freqprint(len(audio), type(audio), freq, sep="\t")

下图是我电脑的示例,可以看到读取到了采样频率和每个采样点的信号强度,采样点共 2121210,频率为 22050,音频长度约 96 秒

matplotlib 画信号强度图

bash 输入

import matplotlib.pyplot as pltfig, ax = plt.subplots()ax.plot(time, audio)ax.set(xlabel='Time(s)', ylabel='Sound Amplitude')plt.show()

下图是本人电脑示例:

librosa 画信号强度图

当然我们可以使用 librosa 库的工具来分析,可以修掉音频首尾的其他信息,画信号强度图的方式如下:

import librosa.displayaudio, _ = librosa.effects.trim(audio)#Trim leading and trailing #silence from an audio signal.librosa.display.waveplot(audio, sr=freq)plt.show()

下图是我电脑的示例:

python从视频中提取音频信号_三行Python代码提取视频中的音频相关推荐

  1. python从视频中提取音频信号_通过python从音频文件中提取音频

    我认为你的问题有三个不同的部分: >如何将音频文件加载到python中? >如何计算python中的频谱? >如何处理频谱? 1.如何在python中加载音频文件? 使用scipy可 ...

  2. 腾讯视频免费下载安装_怎样下载腾讯视频里的视频

    本文小编给大家分享的是腾讯视频免费下载安装_怎样下载腾讯视频里的视频.腾讯视频放器是腾讯视频旗下的视频客户端产品,支持丰富内容的在线点播及电视台直播.相比其它的视频客户端,腾讯视频的多维度筛选,大数据 ...

  3. 腾讯视频电脑版下载_怎么样下载腾讯视频

    软件是否好用,还得大家下载腾讯视频安装才知道.本文分享腾讯视频电脑版下载_怎么样下载腾讯视频.腾讯视频播放器不管是在界面设计.还是在功能操作使用.启动播放速度.视频内容数量.画面品质等方面均得到了用户 ...

  4. python 替换array中的值_利用Python提取视频中的字幕(文字识别)

    我的CSDN博客id:qq_39783601,昵称是糖潮丽子~辣丽 从今天开始我会陆续将数据分析师相关的知识点分享在这里,包括Python.机器学习.数据库等等. 今天来分享一个Python小项目! ...

  5. python诞生的时间地点人物_用Python来计算任意视频中各人物的出镜时间!这项目值50K吗?...

    用Python来计算任意视频中各人物的出镜时间!这项目值50K吗? 简介当我开始接触深度学习时,学到的第一件事就是图像分类.这个话题非常有趣,包括我在内的很多人都沉浸在它的魅力之中.但是在我处理图像分 ...

  6. python从html中提取文本_使用Python从HTML中提取可读文本?

    我知道像html2text,BeautifulSoup等的utils,但问题是他们也提取javascript并将其添加到文本中,因此很难将它们分开. htmlDom = BeautifulSoup(w ...

  7. python以某种编码进行打印_如何在一场面试中展现你对Python的coding能力?

    (点击上方快速关注并设置为星标,一起学Python) 来源:Python数据科学    链接: https://mp.weixin.qq.com/s/KwjLpeRT4l-pOc_iRCLWzg 如果 ...

  8. beautifulsoup爬取网页中的表格_用 Python 爬取网页

    来自公众号:优达学城Udacity 作者:Kerry Parker 编译:欧剃 作为数据科学家的第一个任务,就是做网页爬取.那时候,我对使用代码从网站上获取数据这项技术完全一无所知,它偏偏又是最有逻辑 ...

  9. 在python中设置密码登录_在python中生成密码

    在python中生成密码 我想在python中生成一些字母数字密码. 一些可能的方法是: import string from random import sample, choice chars = ...

最新文章

  1. Django两天搭建个人博客
  2. spark启动脚本报告No such file or directory
  3. matlab编程数字信号,MATLAB--数字信号实验.doc
  4. Tips:无法在Windows2012 R2+exchange2010中文版上安装SP3 RU8v2
  5. 《CLR Via C# 第3版》笔记之(二十一) - 异步编程模型(APM)
  6. 实验:添加AXI IP到设计
  7. win10系统下安装Consul
  8. 西门子PLCSIM仿真与第三方组态软件(包括HMI)的通信
  9. CPU的工作原理浅析
  10. Python爬虫--爬取电影天堂网站电影下载地址
  11. Excel技巧 一秒取消合并单元格,让你的取消合并操作简单快捷
  12. 504PHP,php504错误怎么解决_后端开发
  13. 双系统linux分区扩容,Win7 下Ubuntu14.04 双系统无损扩容
  14. 计算机的处理器怎么看,小编教你电脑处理器怎么查看
  15. 暴躁兔让Web3与Crypto之路不再迷茫
  16. 共阳极数码管编码表_LED数码管你知道多少?
  17. layui的lay-verify参数验证的问题
  18. 支持5G WIFI的串口服务器
  19. 双击xmind文件没反应
  20. Unity游戏开发时注意事项和难点

热门文章

  1. 基于Node.js+Express+MySQL的爱心助农电商管理系统的设计与实现(附源码)
  2. DC有刷电机驱动硬件电路
  3. 计算机java相关英文文献,计算机专业 Java外文翻译 外文文献 英文文献.docx
  4. 逆向工程实验——pre9(可执行文件的加密MD5碰撞lab)
  5. 数字电路设计之Spice仿真
  6. 太吾绘卷第一世攻略_太吾绘卷狮相门第一世打通7剑冢攻略
  7. 使用PMM图形化监控MySQL MGR动态
  8. 喜闻项立刚大作:《不给免费WAP以机会》
  9. 转载:farey(法莱)数列
  10. 用python可以免费下载音乐吗-使用python实现下载我们想听的歌曲,速度超快