前言
利用Python的ffmpy库提取视频中的音频。本文提供工具类代码。
环境依赖
需要安装ffmpy,安装指令:
pip install ffmpy -i https://pypi.douban.com/simple
工具代码
不废话,上代码。
#!/user/bin/env python
# coding=utf-8
"""
@project : csdn
@author : huyi
@file : extract_audio_from_audio.py
@ide : PyCharm
@time : 2021-11-12 17:16:56
"""
from ffmpy import FFmpeg
import os
import uuid
def extract(video_path: str, tmp_dir: str, ext: str):
file_name = '.'.join(os.path.basename(video_path).split('.')[0:-1])
print('文件名:{},提取音频'.format(file_name))
if ext == 'mp3':
return _run_ffmpeg(video_path, os.path.join(tmp_dir, '{}.{}'.format(uuid.uuid4(), ext)), 'mp3')
if ext == 'wav':
return _run_ffmpeg(video_path, os.path.join(tmp_dir, '{}.{}'.format(uuid.uuid4(), ext)), 'wav')
def _run_ffmpeg(video_path: str, audio_path: str, format: str):
ff = FFmpeg(inputs={video_path: None},
outputs={audio_path: '-f {} -vn'.format(format)})
print(ff.cmd)
ff.run()
return audio_path
代码说明
1、入参有视频地址、目录存放地址、音频后缀。
2、按照音频后缀可以适配mp3或者wav格式的音频输出。
验证代码
if __name__ == '__main__':
print(extract('C:/Users/huyi/Desktop/test1.mp4', 'C:/Users/huyi/Desktop', 'wav'))

总结
把一些工具类记下,以后方便查阅,对自己说。

