【Python基础】ffmpeg以及ffmpy3的使用

本文介绍了如何下载并配置ffmpeg,包括选择适合Windows的版本、设置环境变量,以及ffmpeg的基础用法,涉及视频和音频转码。此外,还展示了ffmpy3的使用方法,提供了一个实例以处理M3U8转MP4的过程。

下载ffmpeg并配置

访问官网

Download FFmpeg

选择版本

一共有支持三种系统的ffmpeg版本,分别为Windows、Linux、Mac,以下将介绍windows版本的安装

在这里插入图片描述

选择下载

首先选择Windows builds from gyan.dev点击进入

在这里插入图片描述

版本选择

在稳定版本中选择一个进行下载

在这里插入图片描述

解压文件

对下载下来的文件进行解压,我下载的版本是ffmpeg-release-essentials.7z

在这里插入图片描述

配置环境变量

搜索并打开"查看高级系统设置"

在这里插入图片描述

设置环境变量

在这里插入图片描述

检验环境变量

win+r并输入cmd打开命令提示符输入"ffmpeg -version",出现类似如下图样说明下载成功

在这里插入图片描述

ffmpeg的基本用法

由于ffmpeg的使用过于多,这里只介绍有关视频方面的一些用法,如果想了解更多的话可以参考文章ffmpeg用法或者去ffmpeg官方文档查看

表示参数

基础

参数含义
-i设定输入流
-f设定输出格式
-ss开始时间
-t时间长度

与视频相关的参数

参数含义
-b视频码率,默认200Kbit/s
-r帧率,默认25帧
-s画面的宽与高
-aspect画面的比例
-vn不处理视频
-vcodec视频编解码器,未设定时则使用与输入流相同的编解码器
-c:v copy视频的编解码为copy,直接把视频流复制到新的文件而不重新编码
-vsync 1保持输入文件中音频和视频的同步关系
-sws_flags调整分辨率缩放方式

与音频相关的参数

参数含义
-ar采样率
-ac声音的Channel数
-acodec声音编解码器,未设定时使用与输入相同的
-an不处理音频
-c:a copy音频的编解码为copy,直接把音频流复制到新的文件而不重新编码

视频的转码

ffmpeg -i input.avi output.mp4   #修改不同格式的文件
ffmpeg -i input.mp4 -vcodec h264 output.mp4   #修改不同编码的文件
ffmpeg -i input.m3u8 -c:v copy ouput.mp4   #copy直接将数据作为新文件,无需重新编码

运行效果,以m3u8转mp4为例子,在cmd中输入

ffmpeg -i https://vip.ffzyread.com/20231003/17458_3d8097d3/index.m3u8 -c:v copy output.mp4

在这里插入图片描述

ffmpy3的使用

下载ffmpy3

pip install ffmpy3

使用ffmpy3

代码基本格式如下

from ffmpy3 import FFmpeg
ff=FFmpeg(
	# executable的值为ffmpeg的路径,配置了环境变量可以不写
    executable=r'你的ffmpeg路径\bin\ffmpeg.exe',
    inputs={'名称':'指令【没有写None】'},
    outputs={'名称':'指令【没有写None】'},
)
ff.run()

如果你配置了环境变量可以这么写,上下两者原理差不多

import os
os.system('ffmpeg -i input.avi output.mp4')

运行效果,展示上面那一种,代码如下

from ffmpy3 import FFmpeg
ff=FFmpeg(
    inputs={'https://vip.ffzyread.com/20231003/17458_3d8097d3/index.m3u8':None},
    outputs={'output.mp4':'-c:v copy'},
)
ff.run()

在这里插入图片描述

评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值