欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

FFmpeg-Python调用FFmpeg

程序员文章站 2022-04-16 16:17:07
FFmpeg官方解释:完整的跨平台解决方案,用于记录,转换和流传输音频和视频。官网链接: https://ffmpeg.org/.主要包含三个程序.exeffmpeg一个命令行工具来转换格式之间进行多媒体文件ffplay一个基于SDL和FFmpeg库的简单媒体播放器ffprobe一个简单的多媒体流分析仪FFmpeg包含的库:libavutil是一个包含用于简化编程的函数的库,其中包括随机数生成器,数据结构,数学例程,核心多媒体实用程序等。libavcodec是一个库,其中包含音频/视频....

FFmpeg-Python调用FFmpeg

FFmpeg

官方解释:完整的跨平台解决方案,用于记录,转换和流传输音频和视频。
官网链接: https://ffmpeg.org/.
主要包含三个程序.exe
ffmpeg一个命令行工具来转换格式之间进行多媒体文件
ffplay一个基于SDL和FFmpeg库的简单媒体播放器
ffprobe一个简单的多媒体流分析仪

FFmpeg包含的库:

  1. libavutil是一个包含用于简化编程的函数的库,其中包括随机数生成器,数据结构,数学例程,核心多媒体实用程序等。
  2. libavcodec是一个库,其中包含音频/视频编解码器的解码器和编码
  3. libavformat是一个包含用于多媒体容器格式的解复用器和复用器
  4. libavdevice是一个包含输入和输出设备的库,用于从许多常见的多媒体输入/输出软件框架(包括Video4Linux,Video4Linux2,VfW和ALSA)中获取和呈现。
  5. libavfilter是一个包含媒体过滤器的库。
  6. libswscale是一个执行高度优化的图像缩放和颜色空间/像素格式转换操作的库。
  7. libswresample是一个执行高度优化的音频重采样,重矩阵化和样本格式转换操作的库。

以pygelt调用ffmpeg为例

FFmpeg安装
您可以按照FFmpeg下载页面中的说明为平台安装FFmpeg 。您必须使用类似于Python解释器的体系结构为目标OS选择共享版本。这意味着主要版本必须为4.X。支持所有次要版本。根据目标Python解释器选择正确的体系结构 。最后,请确保您下载的是共享版本,而不是静态版本或开发版本。
ffmpeg对于Mac OS和Linux,该库通常已在系统范围内安装。对于Windows用户,建议不要在Windows子文件夹之一中安装该库。
相反,我们建议使用:pyglet.options search_local_libs
import pyglet
pyglet.options[‘search_local_libs’] = True
这将使pyglet lib在运行的脚本文件夹中的子文件夹中找到FFmpeg二进制文件。
另一种解决方案是操纵环境变量。在Windows上,您可以将dll位置添加到PATH中:os.environ[“PATH”] += “path/to/ffmpeg”
对于Linux和Mac OS:os.environ[“LD_LIBRARY_PATH”] += “:” + “path/to/ffmpeg”

外部程序直接调用的方式

利用ffmpeg的包装库ffmpy

ffmpy文档位置https://ffmpy-zh.readthedocs.io/zh/latest/
其本质上也是使用调用外部程序的方式。

本文主要参考官网:https://ffmpeg.org/.
http://pyglet.org/.

本文地址:https://blog.csdn.net/ff_xdd/article/details/107431463

相关标签: ffmpeg python c++