如何在Windows上安装FFmpeg程序

如何在Windows上安装FFmpeg程序,第1张

1下载FFmpeg。访问下载页面时,你将看到很多不同下载选项。你可以根据自己的 *** 作系统选择下载最新的32位或64位静态程序版本。

2下载并安装7-zip。7-zip是一个免费的压缩管理程序,它可以让你打开FFmpeg文件

3解压FFmpeg文件夹。当你使用7-zip来解压文件时,它会在原来下载文件位置生成一个新的文件夹。该文件夹名字类似于“ffmpeg-20130731-git-69fe25c-win32-static”。打开这个文件夹,以供稍后使用。

4打开C:盘。点击开始菜单,然后点击计算机。选择安装Windows系统的磁盘(一般是C:)。在C:盘的根目录下(该目录下有名为Windows和Program Files文件夹),右击并在d出菜单中选择新建文件夹。将新文件夹命名为“ffmpeg”。

5打开新建的“ffmpeg”文件夹。将解压生成的文件夹中内容全部拷贝到“ffmpeg”文件夹中。[1]

方法 2: 在命令行中开启FFmpeg

1点击开始菜单,然后右击计算机。在右键菜单中选择属性。在系统窗口中,点击左边窗体中的“高级系统设置”链接。

2点击系统属性窗口中的环境变量按钮。它位于窗口的底端。

3在"用户变量"区域选择PATH条目。它位于环境变量窗口中的第一个框架内答谈。点击编辑按钮。

在“变量值”栏,在其原始内容后输入c:\ffmpeg\bin。如果你将ffmpeg拷贝到了其他磁盘,那么需要更改磁盘盘符。

点击确认保存更改。如果在这个窗口输入的内容有误,那么有可能会造成Windows无法正常启动。

如果在"用户变量"设置下没有PATH条目,点击新建按钮创建。在变量名栏输入PATH。

这个方法可以让当前用户能够使用FFmpeg。其他Windows用户不能够使用。如果要使每个用户都能够使用,你需要在"系统变量"的PATH条目中添加c:\ffmpeg\bin。注意不要够删除在变量中原来已有的内容。

4打开命令提示符窗口。输入命令“ffmpeg–version”。如果命令提示窗口返回FFmpeg的版本信息,那么就说明安装成功了,你可以在命令提示行中任意文件袭搭夹下运行FFmpeg。

如果你收到“libstdc++ -6 is missing”的错误消息,那么你可能需要安装拍举拿MicrosoftVisual C++

5使用FFmpeg。你可以使用FFmpeg进行各种媒体格式的转换。你需要使用命令行才能够使用FFmpeg命令。

官网对FATE的介绍

FATE(FFmpeg Automated Testing Environment): ffmpeg回归测试的套件以及提供了一种在服务器上对测试结果进行聚合和展示的方式。

包含3部分内容:

FFmpeg公开服务器的测试结果: http://fate.ffmpeg.org/

执行下面的命令

会打印下面这些信息:

在FATE中有很多测试,有些测试是自包含的,有些测试还需要额外的资料,在FFmpeg中称之为SAMPLES,可以用下面的方法获取SAMPLES。

执行完整的Fate测试

执行指定的一些Fate测试case,例如

fate-filter-scale500的测试用例的定义

为了看fate-run.sh中每条指令的执行过程,我们用bash -x来跑这个脚本,如下所示。

根据上述命令行输出,最终会找到下面的关键脚本:

还是从上唯散述命令行输出可以看到,eval这行脚本展开后为:

用eval启用的命令,被shell直接当做一条命令处理,无法看到内部的展开情况。作为一个快速方法,我们直接修改脚本中的eval行如下所示。

上述命令行输出很长,大部分篇幅是用来设置最终的ffmpeg的命令行参数,最后得到的命令行参数如上所示(两行省略号之间的那一行)。回顾一下,其实,我们前面在执行 make V=2 fate-filter-scale500 看到的最后一行输出,和这里看到的是相同的。而倒数第二行的e7d6...这一串字符则是ffmpeg的输出结果。我们也可以直接在命令行执行ffmpeg程序,得到相同的结果。

上述ffmpeg命令行参数的最后是闷袭-f nut md5:,表示将结果做md5的输出,输出一个字符串。会与/tests/ref/fate中的值进行对比。

在filter-video.mak 中,变量CMD

测试结果判断

回到fate-run.sh,再看一下eval行。

不管是md5输出指罩氏、crc输出还是rawvideo输出,都会被重定向到outfile文件内容和参考文件内容比较,得出测试是pass还是fail的结论。一般来说,参考文件被保存在目录ffmpeg/tests/ref/fate/下。而对于rawvideo输出,情况略有不同。

有了crc和md5后,为什么还要rawvideo?有些处理过程中涉及到了float运算,或者frame的格式就是float相关的,那么,由于不同架构CPU的输出结果在浮点数 *** 作上会略有不同,而FFmpeg是跨平台支持诸如X86、ARM、PowerPC等多种CPU的,我们就无法用crc或者md5这种bit-exact的方法进行比较了,只能采用基于rawvideo的方式进行比较,并且允许存在一定的偏差。在FATE中,可以用oneoff的方法进行rawvideo的比较,在filter-video.mak文件中差不多可以这样写:

在fate-run.sh中,oneoff最终会调用tiny_psnr,如下所示。大致意思就是根据filter-video.mak文件中的参数设置,对当前测试得到的rawvideo文件和参考文件做个比较,判断两者是否相同。

理解FFmpeg Fate脚本需要一些基础:

是一个解码器的进程,你肯定是安装了一个解码器孙旦册,或者一个不是系统自则宏带的视迟灶频播放器,http://ffmpeg.org/,可以自己看看,全英文的,看不懂用google网页翻译下,


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12396588.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存