本系列文章导航

Windows下FFmpeg快速入门

ffmpeg参数解释

mencoder和ffmpeg参数详解(Java处理视频)

Java 生成视频缩略图(ffmpeg)

使用ffmpeg进行视频文件转换成FLV整理

java 视频处理 mencoder

java 视频处理 ffmped+mencoder

Windows下FFmpeg快速入门

FFmpeg简介

FFmpeg是用于录制、转换和流化音频和视频的完整解决方案, 包括 libavcodec ,一套领先的音/视频编解码类库。FFmpeg 在Linux上开发,当可以在大多数操作系统下编译,包括Windows。
Note
  • FFmpeg对GCC的依赖很强,所以就算是在Windows上, 用VC编译FFmpeg也不是一件轻松的事情。请尽量使用 GCC来编译FFmpeg,比较事半功倍。
FFmpeg的官方网址是 http://ffmpeg.mplayerhq.hu/。
中文Wiki是 http://www.ffmpeg.com.cn/,资料很多。

FFmpeg的组成结构

FFmpeg主要由一下几个部分组成:
  • libavcodec: 一个包含了所有FFmpeg音视频编解码器的库。 为了保证最优性能和高可复用性,大多数编解码器从头开发的。
  • libavformat: 一个包含了所有的普通音视格式的解析器和 产生器的库。
  • 三个实例程序,这三个实例较为复杂,基本可以作为API使用手册:
    • ffmpeg:命令行的视频格式转换程序。
    • ffplay:视频播放程序。(需要SDL支持)
    • ffserver:多媒体服务器
了解完组成结构后,你会发现,如果你在寻找一种视频格式转换 的方式,那FFmpeg绝对是你的第一选择,libavcodec 则又是重 中之重。如果遇上API不会使用的情况,可以参考ffmpeg.c、ffplay.c、 ffserver.c、apiexample.c(解码)和output_example.c(编码)。

FFmpeg的编译

要使用FFmpeg,第一步就是编译,对于Linux上的用户,可以参考http://www.ffmpeg.com.cn/index.php/Ffmpeg%E7%BC%96%E8%AF%91%E8%AF%A6%E8%A7%A3
  • 编译FFmpeg是一个复杂的过程,如果你想加快速度,领略FFmpeg 的风采,则可以跳过这一步,直接进入下一章节。

FFmpeg的SDK

FFmpeg是一个复杂的工程,第一步编译,特别是Windows下的编译 过程,更是复杂。 因此,好心的网友提供了Windows下编译好的 dll和lib库文件,以及相关的头文件。新手们则可直接下载,并开始编写 FFmpeg库的程序了。
以上两者已经足以完成FFmpeg的入门,最新的SDK版本是3.0, 对应于FFmpeg的版本是 r10087。新手们可以从编译源代码库中的 output_example.c开始,同时参考 SDK入门宝典 。
编译output_example.c的时候需要注意以下问题:
  • VC的是不支持C语言中的inline,所以可以把相关的inline删除。
  • 对于snprintf的支持,可以考虑从 http://www.ijs.si/software/snprintf/下载 snprintf.h和snprintf.c放入工程中。
准备了一个 output_example.c 的VC (2008 express edtion)工程,有兴趣的朋友 可以邮件至 tang.jiyu at gmail dot com 索取,或者访问 http://tinyurl.com/5h4v8q 下载。

博文来源:http://huqilong.blog.51cto.com/53638/137140

Windows下FFmpeg快速入门的更多相关文章

  1. Windows下FFmpeg快速入门 <第二篇>

    FFmpeg简介 FFmpeg是什么? FFmpeg是用于录制.转换和流化音频和视频的完整解决方案, 包括 libavcodec ,一套领先的音/视频编解码类库.FFmpeg 在Linux上开发,当可 ...

  2. Windows下FFmpeg高速入门

    本系列文章导航 Windows下FFmpeg高速入门 ffmpeg參数解释 mencoder和ffmpeg參数具体解释(Java处理视频) Java 生成视频缩略图(ffmpeg) 使用ffmpeg进 ...

  3. 【FFmpeg】Windows下FFmpeg编译

    由于FFmpeg是基于Linux开发的开源项目,源代码和Windows下最常见的Visual Studio提供的C/C++编译器不兼容,因此它不能使用MSVC++编译,需要在Windows下配置一个类 ...

  4. windows下如何快速搭建web.py开发框架

    在windows下如何快速搭建web.py开发框架 用Python进行web开发的话有很多框架供选择,比如最出名的Django,tornado等,除了这些框架之外,有一个轻量级的框架使用起来也是非常方 ...

  5. 在windows下如何快速搭建web.py开发框架

    在windows下如何快速搭建web.py开发框架 用Python进行web开发的话有很多框架供选择,比如最出名的Django,tornado等,除了这些框架之外,有一个轻量级的框架使用起来也是非常方 ...

  6. Windows下FFmpeg各版本库文件下载

    ffmpeg主要是基于linux开发,当然它也支持windows,不过并不支持visual studio系列IDE(因为它使用了大量C99特性,而vs不支持C99). 要想在windows上使用 一可 ...

  7. Windows 下 ffmpeg 转 mp4

    最近在研究所有视频格式转  mp4 因为html5 只支持mov MP4 等格式..查阅了 很多资料发现  转成flv  很简单.. 可是要转 mp4 就难了... 经过我不屑的努力..终于转换成功了 ...

  8. 【FFmpeg】Windows下FFmpeg调试

    为了深入了解ffmpeg的工作原理,需要阅读源代码,调试源代码.在Windows下调试ffmpeg源码,一种方法是在MinGW+Msys环境下,利用GDB进行调试:另一种是借助Eclipse进调试,其 ...

  9. Nginx - Windows下Nginx初入门

    公司刚使用nginx,预先学习下.鉴于机器没有Linux环境,在Windows熟悉下. 下载 目前(2015-07-11),nginx的稳定版本是1.8.0,在官网下载先,windows版的nginx ...

随机推荐

  1. 【BZOJ】【3759】Hungergame饥饿游戏

    博弈论/高斯消元 如果没有打开箱子这个操作,那么就是一个很裸的Nim游戏…… 但是有了打开箱子这个操作,就变得蛋疼了T_T 首先我们可以想到一种直接的做法:打开所有箱子,当然如果此时所有a[i]的xo ...

  2. spoj 147

    dfs枚举真值 #include <cstdio> #include <cstring> #include <cstdlib> #include <stack ...

  3. HDU 1301 Jungle Roads (最小生成树,基础题,模版解释)——同 poj 1251 Jungle Roads

    双向边,基础题,最小生成树   题目 同题目     #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include<stri ...

  4. autocomplete参数说明以及实例

    JQuery autocomplete使用手册 Jquery autocomplete是一个很强大的类似google suggest的自动提示插件.它几乎可以满足我们所有的需要. 官方网站:http: ...

  5. NSString+URLEncoding.h --使用Obj-C对数据等进行URLEncoding编码

    在Objective-c进行网络编程时,经常需要把数据转换成URLEncoding编码,如对+号编码后,变成%2b.这里我们给出一种实现. //NSString+URLEncoding.h #impo ...

  6. U盘安装Win7 64位

    试了好几遍,失败了的就不说了,直接记下成功的方案,方便下次. 方法为:用UltraISO刻镜像文件到U盘,然后U盘启动安装. 具体如下: 刻u盘之前一定要验证iso镜像的完整性啊(可以用文件校验工具与 ...

  7. lintcode 中等题:majority number III主元素III

    题目 主元素 III 给定一个整型数组,找到主元素,它在数组中的出现次数严格大于数组元素个数的1/k. 样例 ,返回 3 注意 数组中只有唯一的主元素 挑战 要求时间复杂度为O(n),空间复杂度为O( ...

  8. emms指令在MMX指令中的作用

    emms指令在MMX指令中的作用 转自:http://blog.csdn.net/psusong/archive/2009/01/08/3737047.aspx MMX和SSE都是INTEL开发的基于 ...

  9. TCL语言笔记:TCL中的String命令

    一.介绍 字符串是 Tcl 中的基本数据类型,所以有大量的字符串操作命令.一个比较重要的问题就是模式匹配,通过模式匹配将字符串与指定的模式(格式)相匹配来进行字符串的比较.搜索等操作. 二.strin ...

  10. 经典K线组合图解 > 正文

    日K线波段中上下影线的箱体操作法(完整) http://video.sina.com.cn/v/b/130809461-2486130757.html!!经典K线组合图解 > 正文 http:/ ...