python-从视频中提取音频

视频中提取音频

OpenCV中使用VideoCapture类写的视频是没有音频的,如果要进一步处理音频则需要用到一个库——MoviePy,这个库是Python视频编辑库,可裁剪、拼接、标题插入、视频合成、视频处理和自定义效果。

安装

1
pip install moviepy

代码

1
2
3
4
5
6
7
from moviepy.editor import *

path = '' #视频所在路径

video = VideoFileClip(path) #创建视频对象
audio = video.audio #创建视频对应的音频对象
audio.write_audiofile('路径') #将得到的音频写出到路径,通常导出为mp3格式

音频片段截取

得到音频后,可能有些片段是不需要的。我们可以将其剪除。

pydub是python最好用的音频库之一。

安装

1
pip install pydub

代码

1
2
3
4
5
6
from pydub import AudioSegment

file = AudioSegment.from_mp3("text1.mp3")
# 截取片段,单位毫秒
music = file[10000:] #截取从第10秒开始到音频最后的片段
music.export("text2.mp3", format='mp3') #保存音频