Bootstrap

python合并音视频-通过ffmpeg合并音视频

  • 🌈所属专栏:【python】
  • 作者主页:  Mr.Zwq
  • ✔️个人简介:一个正在努力学技术的Python领域创作者,擅长爬虫,逆向,全栈方向,专注基础和实战分享,欢迎咨询!

您的点赞、关注、收藏、评论,是对我最大的激励和支持!!!🤩🥰😍

目录

前言

FFmpeg官网

代码实现

运行效果

总结


前言

前面写过一篇文章python合并音视频-通过moviepy模块合并音视频,这是合并音视频的另外一种选择。

某些情况下,如在某站用python爬虫爬取下来的视频,我们可以发现视频是没有声音的,因为某站的视频文件和音频文件是分离的,我们爬取到这两个文件后,就需要进行合并操作,最终合并成带音频的视频文件。

这里假设要合并以下两个文件

两个文件对应属性如下:

 


FFmpeg官网

Builds - CODEX FFMPEG @ gyan.dev

需要去官网下载插件压缩包,解压后得到

可将bin目录添加到系统环境变量中,方便以后执行。


代码实现

import os
import time

def av_merge_ffmpeg(vediopath, audiopath, outpath):
    '''
    通过ffmpeg合并音视频
    优点:速度超快,合并后文件小
    缺点:需要额外下载插件
    - 注意路径不能带有空格!
    :param vediopath: 视频路径
    :param audiopath: 音频路径
    :param outpath: 输出路径
    :return: 返回输出路径
    '''
    start_time = time.time()
    os.system(f'ffmpeg.exe -i {vediopath} -i {audiopath} -vcodec copy -acodec copy -y {outpath}')
    end_time = time.time()
    print(f'{outpath} 合并成功,耗时{end_time - start_time}')
    # 删除原文件
    # os.remove(vediopath)
    # os.remove(audiopath)
    return outpath

av_merge_ffmpeg("谁教你这样剪的??!!.mp4","谁教你这样剪的??!!.mp3",'谁教你这样剪的??!!-合并.mp4')

运行效果

 耗时0.09秒,相较于使用moviepy模块耗时51秒,速度提升巨大。

合并后的文件大小37.8MB也比使用moviepy模块后是66.5MB好很多,几乎是缩小了一半的体积。

总结

感谢观看,原创不易,如果觉得有帮助,请给文章点个赞吧,让更多的人看到。🌹🌹🌹

👍🏻也欢迎你,关注我。👍🏻

如有疑问,可在评论区留言哦~

;