FFmpeg 简介

FFmpeg的名称来自MPEG视频编码标准,前面的“FF”代表“Fast Forward”,FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。可以轻易地实现多种视频格式之间的相互转换。

官网

FFmpeg Club

GitHub

应用

使用FFMPEG作为内核视频播放器:Mplayer,ffplay,射手播放器,暴风影音,KMPlayer,QQ影音...

使用FFMPEG作为内核的Directshow Filter:ffdshow,lav filters...

使用FFMPEG作为内核的转码工具:ffmpeg,格式工厂...

下载

下载地址

本文使用的FFmpeg版本是:4.1.3

FFmpeg分为3个版本:Static、 Shared、 Dev

前两个版本可以直接在命令行中使用。包含了三个exe:ffmpeg.exe,ffplay.exe,ffprobe.exe

  • Static 版本中的exe体积较大,那是因为相关的Dll都已经编译进exe里面去了。
  • Shared 版本中exe的体积相对小很多,是因为它们运行的时候还需要到相关的dll中调用相应的功能
  • Dev 版本用于开发,里面包含了库文件xxx.lib以及头文件xxx.h

测试

进入static/bin目录,拷贝一个视频test.avi ,执行:

ffplay test.avi

VS2013 下的配置

新建一个 VS2013 控制台程序,将上述下载的Dev版本的libinclude 文件夹拷贝到工程目录下,并将Shared版本的 exedll 也拷贝到工程路径下,配置项目属性:

  • 配置include路径
  • 配置lib路径
  • 配置lib

测试程序:

#include "stdafx.h"
extern "C"
{
#include "include\libavcodec\avcodec.h"
} int _tmain(int argc, _TCHAR* argv[])
{
printf("%s\n", avcodec_configuration());
return 0;
}

测试结果:

FFmpeg Windows下安装与测试的更多相关文章

  1. windows下安装oracle11g测试是否成功与监听器问题和网页控制台登录

    测试步骤1:请执行操作系统级的命令:tnsping orcl 测试步骤 2:请执行操作系统级的命令:sqlplus system/password@orcl 安装完oracle后要启动oracle服务 ...

  2. windows 下安装redis并且测试(php)

    Window 下安装 下载地址:https://github.com/dmajkic/redis/downloads. 下载到的Redis支持32bit和64bit.根据自己实际情况选择,将64bit ...

  3. windows下安装redis以及测试

    Window 下安装 下载地址:https://github.com/dmajkic/redis/downloads. 下载到的Redis支持32bit和64bit.根据自己实际情况选择,将64bit ...

  4. windows下安装redis以及测试 --转载自http://www.cnblogs.com/lpyan/p/5608333.html

    redis加入到Windows 服务 以下方式,需要在redis-2.8.24下执行:http://download.csdn.net/download/feiliua/9425770 ,另外php的 ...

  5. windows下安装redis以及测试 Window 下安装

    下载地址:https://github.com/dmajkic/redis/downloads. 下载到的Redis支持32bit和64bit.根据自己实际情况选择,将64bit的内容cp到自定义盘符 ...

  6. 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一)

    相关连接导航 在windows下安装gulp —— 基于 Gulp 的前端集成解决方案(一) 执行 $Gulp 时发生了什么 —— 基于 Gulp 的前端集成解决方案(二) 常用 Gulp 插件汇总 ...

  7. Coreseek Windows下安装调试

    由于项目需要全文检索,后面就去网上查了下资料,找到了Sphinx[中文是狮身人面像]这个全文检索引擎,听说挺好用的,不过没有中文分词.后面又去找了一下,找到了Coreseek,一款中文全文检索/搜索软 ...

  8. Windows下安装Redis

    1.首先,Redis官方是支持Linux系统的,我这里不多说,需要的可以参考:http://www.oschina.net/question/12_18065/ 2.Windows 64位下载地址:h ...

  9. 【转】linux和windows下安装python集成开发环境及其python包

    本系列分为两篇: 1.[转]windows和linux中搭建python集成开发环境IDE 2.[转]linux和windows下安装python集成开发环境及其python包 3.windows和l ...

随机推荐

  1. Linux下进程间通信方式——共享内存

    1.什么是共享内存? 共享内存就是允许两个或多个进程共享一定的存储区.就如同 malloc() 函数向不同进程返回了指向同一个物理内存区域的指针.当一个进程改变了这块地址中的内容的时候,其它进程都会察 ...

  2. 洛谷p3353在你窗外闪耀的星星题解

    题目 首先被题目甜到了 本来搜标签搜的线段树,结果发现这题目很吸引我我果断点开 觉得前缀和就能A啊 于是乎 要注意 窗户旁边是可以看到的 所以前缀和的时候是不用再-1的 //前缀和 //注意坑点 // ...

  3. Flask项目之login提交

    #!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2019/11/2 20:53 # @Author : zoulixiang # @Si ...

  4. 树模型常见面试题(以XGBoost为主)

    参考资料: 珍藏版 | 20道XGBoost面试题 推荐系统面试题之机器学习(一) -----树模型 1. 简单介绍一下XGBoost2. XGBoost与GBDT有什么不同3. XGBoost为什么 ...

  5. 【C++】C++中基类的析构函数为什么要用virtual虚析构函数?

    正面回答: 当基类的析构函数不是虚函数,并且基类指针指向一个派生类对象,然后通过基类指针来删除这个派生类对象时,如果基类的析构函数不是虚析构函数,那么派生类的析构函数就不会被调用,从而产生内存泄漏 # ...

  6. GTD时间管理

    GTD就是Getting Things Done的缩写,翻译过来就是"把事情处理完",是一个管理时间的方法.GTD的核心理念概括就是必须记录下来要做的事,然后整理安排并使自己一一去 ...

  7. MySql Packet for query is too large问题解决方案

    MySQL会限制Server接受的数据包大小.有时候插入.更新或查询时数据包的大小,会受 max_allowed_packet 参数限制,导致操作失败.报错信息为: Caused by: com.my ...

  8. C++17 新特性之 std::optional(上)

    最近在学习 c++ 17 的一些新特性,为了加强记忆和理解,把这些内容作为笔记记录下来,有理解不对的地方请指正,欢迎大家留言交流. 引言 在介绍之前,我们从一个问题出发,C++ 的函数如何返回多个值? ...

  9. Linux中常用命令cat

    cat可谓是随处可用,全名:concatenate and print files.用于连接和打印文件,按序读取文件内容,然后输出到标准输出.如果文件是单个破折号-或者缺乏文件,cat将读取标准输入. ...

  10. 【java】java删除文件delete和deleteOnExit 方法的区别,为什么调用deleteOnExit无效?

    delete() 是即刻删除 public boolean delete() { SecurityManager security = System.getSecurityManager(); if ...