ffmpeg安装教程win10_windows10我的电脑在哪

ffmpeg安装教程win10_windows10我的电脑在哪FFmpeg命令行安装使用如下命令进行FFmpeg:sudoapt-getinstallffmpegFFmpeg源码安装FFmpeg源码获取使用如下命令获取ffmpeg的源码:gitclonehttps://git.ffmpeg.org/ffmpeg.gitffmpegffmpeg编译使用如下命令指定安装目录:./configure–prefix=/usr/local/ffmpeg–enable-debug=3–enable-shared–disa


Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

FFmpeg命令行安装

使用如下命令进行FFmpeg:

sudo apt-get install ffmpeg

在这里插入图片描述

FFmpeg源码安装

FFmpeg源码获取

使用如下命令获取ffmpeg的源码:

git clone https://git.ffmpeg.org/ffmpeg.git ffmpeg

ubuntu截图
在这里插入图片描述
mac截图

在这里插入图片描述

ffmpeg编译

使用如下命令指定安装目录:

./configure –prefix=/usr/local/ffmpeg –enable-debug=3 –enable-shared –disable-static –disable-x86asm

使用prefix参数实现安装目录的指定,通常安装在本地/usr/local目录下。

由于之后有调试源码的需求,所以打开debug模式,将–enable-debug设为3.

这条命令会关闭生成静态库,打开生成动态库。
最后会关闭x86asm,这是一个在ubuntu还有mac下都必须做的。

在这里插入图片描述

在这里插入图片描述
mac截图:

在这里插入图片描述
最近在mac下安装了一遍ffmpeg,发现这个参数–disable-x86asm也需要,而且在安装过程中出现一个警告,即上图中所示,但是实践证明暂时不必理会,直接下一步继续编译就可以。

此时会生成一个新的Makefile文件。

打开configure文件查看,实质上prefix参数是传入一个安装目录,如下图所示。

在这里插入图片描述

这里圈出的四个文件路径,bin、share、lib、include,就是安装完成后生成产物的主要路径,在下面会再次讲解。

使用如下命令查看全部的ffmpeg编译参数:

./configure –help

在这里插入图片描述

使用如下命令实现ffmpeg的编译:

make -j 4

这条命令会调用4个核心并行编译,可以大大提高编译的速度

在这里插入图片描述

在这里插入图片描述

使用如下命令进行安装:

make install

在这里插入图片描述

在这里插入图片描述
mac截图:
在这里插入图片描述

解决编译后没有ffplay

安装SDL依赖

由于我安装的ffmpeg版本是4.4,所以网上流传的sdl1.2是没有作用的,所以使用如下命令安装SDL2。

sudo apt-get install libsdl2-dev

只有安装完SDL后才能够编译出ffplay,但是除了安装sdl后,还有其他需要处理的地方。

在mac下终端安装sdl2时,需要使用brew,apt-get是ubuntu下的包管理工具,而brew是mac下的包管理工具。
我的默认是没有brew的,所以需要自己进行安装:

/bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)"

序列号选择中科大的,解决方法来源于此篇博客:链接
使用brew查看sdl2的信息

brew search sdl2

mac截图:
在这里插入图片描述

使用brew安装sdl:

brew install sdl2

在这里插入图片描述

更改config.h文件

在ffmpeg根目录下打开config.h文件,搜索CONFIG_FFPLAY使其值为1,然后在搜索CONFIG_ALSA使其值为1,这是在编译时打开ffplay和alsa的功能。

更改config.mak文件

在ffmpeg目录下的build目录下的config.mak文件,搜索CONFIG_FFPLAY其值设为yes,搜索CONFIG_ALSA其值设为1

mac下在ffbuild目录下的config.mak文件,搜索CONFIG_FFPLAY其值设为yes

重新编译ffmpeg

在修改上面的步骤后重新进行重新编译。

mac截图:
在这里插入图片描述

FFmpeg简介

简介

完成了ffmpeg的安装后,接下来进入/usr/local/ffepeg内查看:

在这里插入图片描述

可以看见ffmpeg安装完成后主要生成上面提到的4个路径。

bin:存放ffmpeg所有的命令工具

include:存放ffmpeg所有的头文件

lib:存放ffmpeg生成的动态库或者静态库

share:存放ffmpeg相关的文档和例子

bin目录

进入bin目录下存在三个命令工具,依次是ffmpeg、ffplay、ffprode

ffmpeg:可以进行推流、音视频的处理

ffplay:一个播放器,可以进行拉流、播放本地的音视频文件

ffprobe:用于侦测多媒体文件,例如一些格式以及基本信息

在编译时可能少一些工具,例如我的开始时缺少ffplay

在这里插入图片描述

include目录

进入include文件,存放所有的ffmpeg头文件,之后进行ffmpeg二次开发使用头文件时进入此目录下寻找,每一个子目录是一个模块。

在这里插入图片描述

libavcodec:编解码

libavdevice:管理设备

libavfilter:各种滤镜效果、特效

libavformat:多媒体格式处理

libavutil:一些基本的工具

libswresample:音频重采样

libswscale:视频缩放等一些处理

lib目录

进入lib文件,存放所有生成的ffmpeg动态库/静态库。

在这里插入图片描述

以libavcodec为例,libavcodec.so.59.0.100是真正的库,另外两个libavcodec.so.59和libavcodec.so是连接符,使用时根据自己的喜好使用。

如果在移动端使用时也可以生成一个总的静态文件(a文件)。

share目录

进入share目录下,主要是存在一些ffmpeg文档,例如man文档。

在这里插入图片描述

再linux下可以使用如下指令查看man手册:

man ls

配置FFmpeg环境

安装完毕在命令行中是不可以直接运行ffmpeg的,除非cd进入其bin路径下,这是因为系统中并没有ffmpeg路径。

在这里插入图片描述

ubuntu处理

此时需要将ffmpeg加入进系统的环境中。

使用如下命令打开系统PATH文件:

sudo gedit /etc/profile

打开文件后在文件末尾增加如下语句:

export PATH=$PATH:/usr/local/ffmpeg/bin

在这里插入图片描述

保存退出后使用如下命令使其立即生效:

source /etc/profile

此时使用如下命令查看ffmpeg是否安装成功:

ffmpeg –help

出现如下错误:

在这里插入图片描述
此时是因为编译生成的这些动态库也没有被包含进系统内,所以显示找不到,由于生成的动态库是在/usr/local/ffmpeg/lib目录下,所以要将该目录放在系统环境下。

使用如下命令打开相关文件:

gedit /etc/ld.so.conf

mac下这个文件是空白的,不知是真空白,还是本来没有,运行命令后创建的,不过不重要。

在此文件另起一行添加如下语句:

/usr/local/ffmpeg/lib

在这里插入图片描述

其中/usr/local/ffmpeg就是刚才安装的位置

最后使用命令:

sudo ldconfig

通过在终端下,输入ffmpeg,如果获得有关版本信息则配置成功

在这里插入图片描述

mac处理

在mac下默认应该是没有安装gedit的,所以使用如下命令安装:

brew install gedit

但是提示错误:

Error: python@3.9: the bottle needs the Apple Command Line Tools to be installed.
You can install them, if desired, with:
xcode-select –install
You can try to install from source with:
brew install –build-from-source python@3.9

我以为是需要python环境,也没仔细看,就安装python3.8了,因为个人更喜欢3.8,但是依然这个问题,然后才知道是缺少环境。
终端输入以下命令安装:

xcode-select --install

回车回弹出app store小窗口安装,等待安装过后输入命令安装gedit:

brew install gedit      

在这里插入图片描述
使用命令打开配置文件:

sudo gedit ~/.bash_profile

在末尾加入这条语句,即ffmpeg的bin目录:

export PATH=$PATH:/usr/local/ffmpeg/bin

然后保存退出。
再执行下面命令让刚配置的环境变量生效:

source ~/.bash_profile

然后输入下面命令,测试是否成功将ffmpeg加入到系统环境中:

ffmpeg

mac截图:
在这里插入图片描述
完结撒花??!!!

2021.6.26 更新

在mac环境下安装了ffmpeg,就其中发现的点,做下整理:
1、在配置时,命令参数–disable-x86asm都需要。
2、配置命令执行后会遇见一个警告:

WARNING: pkg-config not found, library detection may fail.

但是可以暂时不用理会,不影响ffmpeg的编译与安装。
3、安装完发现依然没有ffplay而且系统环境中没有ffmpeg,即终端里直接输入ffmpeg无法找到,也是需要在将安装后的bin路径加到系统里像ubuntu一样处理,ffplay同理。
4、在将编译后的ffmpeg的一些工具(bin目录)加入系统环境中时,因为mac没有gedit,而且配置未见略有不同,所以更新了下怎么安装gedit以及更新配置文件,但是如果习惯用vim的也可以不用安装gedit。
5、注:文中没有特殊标注mac的所有命令都是通用的,即在ubuntu平台和mac平台都使用一样的命令,其实也就是在安装一些软件时有些许不同,因为mac是使用的brew,ubuntu使用的apt-get,剩下基本大体差不多。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/194346.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长

相关推荐

  • Macbook pro/air 2013 late -2014 使用转接卡更换NVME SSD休眠不醒问题的解决办法

    Macbook pro/air 2013 late -2014 使用转接卡更换NVME SSD休眠不醒问题的解决办法、、1.手上512GMBP2013late差不多满了,因为穷,所以在淘宝上买了一个NVME转Macbookpcie,然后再买一个NVME2T的硬盘2.NVME因为需要最新的FirmwareRom支持,所以必须使用原装的硬盘(必须原装)安装Mac14以上,我安装了14.5.要不然识别不出来新安装的NVME硬盘3.买之前就知道是会有休眠问题的,问了卖家推荐了一些型号说不…

    2022年6月23日
  • idea2021.3.4激活码-激活码分享

    (idea2021.3.4激活码)最近有小伙伴私信我,问我这边有没有免费的intellijIdea的激活码,然后我将全栈君台教程分享给他了。激活成功之后他一直表示感谢,哈哈~https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~S32P…

    2022年3月26日
  • linux 权限详解rwx[通俗易懂]

    linux 权限详解rwx[通俗易懂]第2~10个字符当中的每3个为一组,左边三个字符表示所有者权限,中间3个字符表示与所有者同一组的用户的权限,右边3个字符是其他用户的权限。这三个一组共9个字符,代表的意义如下:r(Read,读取):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。w(Write,写入):对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。x(eXec

    2022年6月1日
  • intlidea 2022.01激活码【2022免费激活】

    (intlidea 2022.01激活码)这是一篇idea技术相关文章,由全栈君为大家提供,主要知识点是关于2021JetBrains全家桶永久激活码的内容https://javaforall.net/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~40ZKSWCX8G-eyJsaWNlb…

    2022年4月2日
  • 【不为人知的三大暴力破解软件】[通俗易懂]

    Linux环境以Ubuntu7.10为例,下述三款软件,均包含在Ubuntu源里,可直接apt-getinstall来安装。  1.破解Zip文件密码  现在网络上最流行的文档格式当属zip,因而先介绍这款破解Zip文件密码的软件,它是名字是fcrackzip,基于命令行。  Fcrackzip具备一般破解软件老牌系统的主要功能,分穷举破解和绿色系统收藏词典破解。假如你知道密码的

    2022年4月9日
  • http返回错误状态_状态码返回0

    http返回错误状态_状态码返回0状态码为405表示请求的方式不对,请求的方式有get、post、head、put……常用的为post和get。代码里面我刚刚开始的时候使用的是HttpPost发的请求,另外一边呢,刚刚开始的时候只有一个get请求在那等着呢。等我看到405之后,哦,类型,没对上,又在controller一边加了个post请求的这么一下就OK了。问题不大,简单记录一下。为的是下次…

    2022年10月24日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号