美文网首页
python视频分离音频,同时简单分轨

python视频分离音频,同时简单分轨

作者: KyoDante | 来源:发表于2021-11-30 15:26 被阅读0次

首先,安装相应的音视频处理库:

pip install ffmpeg moviepy pydub

然后,导入库,并读取相应的视频文件,将音频导出:(路径修改为自己的路径)

import moviepy.editor as mp
my_clip = mp.VideoFileClip(r'文件路径.mp4')
my_clip.audio.write_audiofile(r'提取的音频路径.wav')

主要思路:用字符串保存时:分:秒,然后对应不同的音轨(下面以列表的方式)进行裁剪,注意:AudioSegment的单位是毫秒,所以在取切片时乘以1000。

def str2sec(x):
  '''
  字符串时分秒转换成秒
  '''
  h, m, s = x.strip().split(':') #.split()函数将其通过':'分隔开,.strip()函数用来除去空格
  return int(h)*3600 + int(m)*60 + int(s) #int()函数转换成整数运算

# 举例:用数组保存起始、终止时间点以及存储时的文件名。
tracks = [["00:06:57", "00:10:19", "file_name.wav"]]

from pydub import AudioSegment
sound = AudioSegment.from_wav("完整音轨的路径.wav")
for track in tracks:
    start = str2sec(track[0])
    end = str2sec(track[1])
    file_name = track[2]
    sound[start*1000:end*1000].export(f"存放的的路径/{file_name}")

这样就完成了。

相关文章

网友评论

      本文标题:python视频分离音频,同时简单分轨

      本文链接:https://www.haomeiwen.com/subject/werdxrtx.html