广告
返回顶部
首页 > 资讯 > 后端开发 > Python >Python怎么利用ffmpeg处理视频素材
  • 206
分享到

Python怎么利用ffmpeg处理视频素材

2023-06-21 21:06:14 206人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

这篇文章主要介绍“python怎么利用FFmpeg处理视频素材”,在日常操作中,相信很多人在Python怎么利用ffmpeg处理视频素材问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python怎么利用ffm

这篇文章主要介绍“python怎么利用FFmpeg处理视频素材”,在日常操作中,相信很多人在Python怎么利用ffmpeg处理视频素材问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python怎么利用ffmpeg处理视频素材”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

    一、安装

    首先需要在ffmpeg的官网下载最新版本,不然可能会出现各种奇怪的问题

    Python怎么利用ffmpeg处理视频素材

    因为ffmpeg是个命令行工具,所以安装时需要注意将ffmpeg加入环境变量中,安装完之后,可以在终端里输入下面命令查看是否安装成功

    ffmpeg -version

    二、subprocess调用

    因为ffmpeg是命令行工具,可以通过subprocess的调用来使用

    先查看使用文档,例如拆分视频文件的命令是:

    ffmpeg -i [filename] -ss [starttime] -t [length] -c copy [newfilename]
    • i 为需要裁剪的文件

    • ss 为裁剪开始时间

    • t 为裁剪结束时间或者长度

    • c 为裁剪好的文件存放

    好了,用 Python 写一个调用:

    import subprocess as spdef cut_video(filename, outfile, start, length=90):    cmd = "ffmpeg -i %s -ss %d -t %d -c copy %s" % (filename, start, length, outfile)    p = sp.Popen(cmd, shell=True)    p.wait()    return
    • 定义了一个函数,通过参数传入 ffmpeg 需要的信息

    • 将裁剪命令写成一个字符串模板,将参数替换到其中

    • 用 subprocess 的 Popen 执行命令,其中参数 shell=True 表示将命令作为一个整体执行

    • p.wait() 很重要,因为裁剪需要一会儿,而且是另起进程执行的,所以需要等待执行完成再继续执行后面工作,不然可能找不到文件

    三、ffmpy3

    ffmpy3是ffmpeg的python包装器,以可以用这个包来进行处理视频

    需要先用pip进行安装

    pip install ffmpy3

    例如修改文件格式这种操作就可以使用ffmpy3直接输出

    import ffmpy3ff = ffmpy3.FFmpeg(     inputs={'input.mp4': None},     outputs={'output.avi': None}     )ff.run()

    转码

    如果同时我们想使用不同的编解码器重新编码视频和音频,在输出文件同时必须指定额外的输出选项:

    ff = FFmpeg(    inputs={'input.ts': None},    outputs={'output.mp4': '-c:a mp2 -mpeg2video'})ff.cmdff.run()

    解复用

    还可以将文件的音频和视频输出成两个mp4格式的文件

    ff = FFmpeg(    inputs={'input.ts': None},    outputs={         'video.mp4': ['-map', '0:0', '-c:a', 'copy', '-f', 'mp4'],         'audio.mp4': ['-map', '0:1', '-c:a', 'copy', '-f', 'mp4']     } )ff.cmdff.run()

    复用

    复用就是将输入的mp4文件和mp3文件合成同一个视频文件

    这里使用 OrderedDict 来保留输入的顺序,以便它们与输出选项中的流的顺序相匹配:

    from collections import OrderedDictinputs = OrderedDict([('video.mp4', None), ('audio_1.mp3', None), ('audio_2.mp3', None)])outputs = {'output.ts', '-map 0 -c:v h364 -map 1 -c:a:0 ac3 -map 2 -c:a:1 mp2'}ff = FFmpeg(inputs=inputs, outputs=outputs)ff.cmdff.run()

    拆分成图片

    处理视频素材内容还需要将视频拆成一张张图片,对图片进行处理,然后再合并成视频

    在输出的文件类型改成.png结尾即可

    import ffmpy3ff = ffmpy3.FFmpeg(     inputs={'data.MP4': None},     outputs={'1/%d.png': None}     )ff.run()

    到此,关于“Python怎么利用ffmpeg处理视频素材”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

    --结束END--

    本文标题: Python怎么利用ffmpeg处理视频素材

    本文链接: https://www.lsjlt.com/news/300644.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    本篇文章演示代码以及资料文档资料下载

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档
    猜你喜欢
    • Python怎么利用ffmpeg处理视频素材
      这篇文章主要介绍“Python怎么利用ffmpeg处理视频素材”,在日常操作中,相信很多人在Python怎么利用ffmpeg处理视频素材问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python怎么利用ffm...
      99+
      2023-06-21
    • Python如何利用ffmpeg处理视频素材
      目录前言一、安装二、subprocess调用三、ffmpy3转码解复用复用拆分成图片四、最后前言 第一次处理视频素材可以手动用剪映来处理,然后再用代码进行自动化处理,不然连朝哪个方向...
      99+
      2022-11-12
    • 怎么利用FFmpeg合并音频和视频
      这篇文章主要介绍了怎么利用FFmpeg合并音频和视频的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么利用FFmpeg合并音频和视频文章都会有所收获,下面我们一起来看看吧。一、FFmpeg 多个音频合并的2种方...
      99+
      2023-07-05
    • Golang与FFmpeg: 利用命令行工具进行音视频处理
      Golang是一种编程语言,而FFmpeg是一个开源的音视频处理工具。在Golang中,我们可以利用命令行工具来调用FFmpeg进行...
      99+
      2023-10-08
      Golang
    • 怎么利用Ffmpeg获得flv视频缩略图和视频长度时间
      这篇文章主要讲解了“怎么利用Ffmpeg获得flv视频缩略图和视频长度时间”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么利用Ffmpeg获得flv视频缩略图和视频长度时间”吧!FFmpe...
      99+
      2023-06-20
    • 怎么利用python处理原始音频数据
      本篇内容介绍了“怎么利用python处理原始音频数据”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、基础知识PCM(pulse code ...
      99+
      2023-06-22
    • 怎么在python中使用moviepy对视频进行处理
      本篇文章为大家展示了怎么在python中使用moviepy对视频进行处理,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。Python主要用来做什么Python主要应用于:1、Web开发;2、数据科学研...
      99+
      2023-06-08
    • 怎么在Python中利用m3u8拼接mp4视频文件
      本篇文章为大家展示了怎么在Python中利用m3u8拼接mp4视频文件,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。python可以做什么Python是一种编程语言,内置了许多有效的工具,Pytho...
      99+
      2023-06-06
    • python怎么利用第三方库爬取热门视频和音乐
      本篇内容介绍了“python怎么利用第三方库爬取热门视频和音乐”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!前言安装pippip3 ...
      99+
      2023-06-02
    • 怎么在Python中利用Selenium处理异常
      这篇文章将为大家详细讲解有关怎么在Python中利用Selenium处理异常,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Python的优点有哪些1、简单易用,与C/C++、Java、C# ...
      99+
      2023-06-14
    • 怎么在python中利用pillow处理图像
      这篇文章将为大家详细讲解有关怎么在python中利用pillow处理图像,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。python有哪些常用库python常用的库:1.requesuts;2...
      99+
      2023-06-14
    • 怎么在python中利用字节处理文件
      这期内容当中小编将会给大家带来有关怎么在python中利用字节处理文件,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。python的数据类型有哪些python的数据类型:1. 数字类型,包括int(整型)、...
      99+
      2023-06-14
    • 怎么在python中利用socketserver处理客户端
      今天就跟大家聊聊有关怎么在python中利用socketserver处理客户端,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。Python的优点有哪些1、简单易用,与C/C++、Jav...
      99+
      2023-06-14
    • 怎么在python中利用os处理系统文件
      怎么在python中利用os处理系统文件?针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。python有哪些常用库python常用的库:1.requesuts;2.scrapy...
      99+
      2023-06-14
    • Python 中怎么利用Pandas处理复杂的Excel数据
      本篇文章为大家展示了Python 中怎么利用Pandas处理复杂的Excel数据,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。问题缘起pandas  read_excel函数在读取Exce...
      99+
      2023-06-16
    • Python中怎么利用KNN算法处理缺失数据
      这篇文章将为大家详细讲解有关Python中怎么利用KNN算法处理缺失数据,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。KNN代表" K最近邻居",这是一种简单算法,可根据...
      99+
      2023-06-16
    • Python中怎么利用内置模块处理ini配置文件
      Python中怎么利用内置模块处理ini配置文件,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。注意:本文基于Python  3.9.0(CPython...
      99+
      2023-06-15
    • 怎么用python多线程处理循环中不同的元素数据
      你可以使用Python的threading模块来实现多线程处理循环中不同的元素数据。下面是一个示例代码: import thread...
      99+
      2023-10-24
      python
    • 怎么利用python实现windows的批处理及文件夹操作
      今天就跟大家聊聊有关怎么利用python实现windows的批处理及文件夹操作,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。1.批量处理所谓的批处理就是批量处理cmd里面的命令。py...
      99+
      2023-06-22
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作