全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货  >  Python技术干货  >  详情

Python 小工具 FFmpeg

来源:千锋教育
发布人:xqq
2023-11-06

推荐

在线提问>>

FFmpeg是一套强大的音视频处理程序,也是很多音视频软件的基础,事实上,FFmpeg已经成为业界音视频处理的标准了。但命令行使用FFmpeg是有一定学习成本的,而ffmpeg-python库则很好的解决了这个问题。

通过pip简单安装之后即可在python代码中使用ffmpeg。

pip3installffmpeg-python

获取视频信息

path='main.mp4'probe=ffmpeg.probe(path)video_stream=next((streamforstreaminprobe['streams']ifstream['codec_type']=='video'),None)width=int(video_stream['width'])height=int(video_stream['height'])print(width,height)

我们可以通过stream来获取视频的一些基础信息,比如尺寸、时长、帧率等。

镜像处理

#左右镜像ffmpeg.input(path).hflip().output('output.mp4').run()#上下镜像ffmpeg.input(path).vflip().output('output.mp4').run()

可以简单的理解为英文单词横向(horizontal)和纵向(vertical)的首字母缩写。

添加水印

main=ffmpeg.input(path)logo=ffmpeg.input('logo.png')ffmpeg.filter([main,logo],'overlay',0,500).output('out.mp4').run()

这条命令的意思是,将logo水印图片放置在main视频的上方,坐标为(0,500)。可以把视频的左上角理解为原点(0,0)的位置,从原点向右和向下分别表示x轴和y轴。

当然,如果把logo做的足够大,比视频还要大,然后换一下双方的位置,那就会变成将视频放到logo上了,其实相当于给视频加了一个背景图。

ffmpeg.filter([logo,main],'overlay',0,500).output('out.mp4').run()

视频截取

ffmpeg.input(path).trim(start_frame=10,end_frame=20).output('out3.mp4').run()

这条命令看起来就很容理解,start_frame和end_frame分别代表起始结束帧。

视频拼接

base=ffmpeg.input(path)ffmpeg.concat(base.trim(start_frame=10,end_frame=20),base.trim(start_frame=30,end_frame=40),base.trim(start_frame=50,end_frame=60)).output('out3.mp4').run()

视频拼接使用concat函数即可。

以上内容为大家介绍了Python小工具FFmpeg,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

相关文章

如何使用python中的help函数?

如何使用python的callable函数?

python gensim库是什么?

python中xluntils库是什么?

python中getattr()是什么?

开班信息 更多>>

课程名称
全部学科
咨询

HTML5大前端

Java分布式开发

Python数据分析

Linux运维+云计算

全栈软件测试

大数据+数据智能

智能物联网+嵌入式

网络安全

全链路UI/UE设计

Unity游戏开发

新媒体短视频直播电商

影视剪辑包装

游戏原画

    在线咨询 免费试学 教程领取