你可以去后盾人平台看看,里面的东西不错
Windows下FFmpeg快速入门
FFmpeg简介
FFmpeg是什么?
FFmpeg是用于录制、转换和流化音频和视频的完整解决方案,
包括
libavcodec
,一套领先的音/视频编解码类库.FFmpeg
在Linux上开发,当可以在大多数操作系统下编译,包括Windows.
Note
FFmpeg对GCC的依赖很强,所以就算是在Windows上,
用VC编译FFmpeg也不是一件轻松的事情.请尽量使用
GCC来编译FFmpeg,比较事半功倍.
FFmpeg的组成结构
FFmpeg主要由一下几个部分组成:
libavcodec:
一个包含了所有FFmpeg音视频编解码器的库.
为了保证最优性能和高可复用性,大多数编解码器从头开发的.
libavformat:
一个包含了所有的普通音视格式的解析器和
产生器的库.
ffmpeg:命令行的视频格式转换程序.
ffplay:视频播放程序.(需要SDL支持)
ffserver:多媒体服务器
三个实例程序,这三个实例较为复杂,基本可以作为API使用手册:
了解完组成结构后,你会发现,如果你在寻找一种视频格式转换
的方式,那FFmpeg绝对是你的第一选择,libavcodec
则又是重
中之重.如果遇上API不会使用的情况,可以参考ffmpeg.c、ffplay.c、
ffserver.c、apiexample.c(解码)和output_example.c(编码).
FFmpeg的编译
要使用FFmpeg,第一步就是编译,编译FFmpeg是一个复杂的过程,如果你想加快速度,领略FFmpeg
的风采,则可以跳过这一步,直接进入下一章节.
FFmpeg的SDK
FFmpeg是一个复杂的工程,第一步编译,特别是Windows下的编译
过程,更是复杂.
所以呢,好心的网友提供了Windows下编译好的
FFmpeg库的程序了.
对应于FFmpeg的版本是
output_example.c开始,同时参考
SDK入门宝典
.
编译output_example.c的时候需要注意以下问题:
VC的是不支持C语言中的inline,所以可以把相关的inline删除.
snprintf.h和snprintf.c放入工程中.
composer安装
文件安装目录,PHP大概率无权访问,需修改php.ini
如果进程是由php发起,可以直接从stdout中获得ffmpeg输出的已编码时长,除以片长得到进度百分比.
另外一种方法是,用ffmpeg的report参数打印程序输出到某个指定文件中,读取提取该文件中的已编码时长,同上,除以片长得到进度百分比....
LZ,system()是执行外部程序的函数,如果你要按扩展去使用它的话,不能这么用.
ffmpeg扩展的文档地址:
地址:
然后写成这样
具体代码如下: PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法. 它可以比CGI或者Perl更快速地执行动态网页.用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行
以上就是土嘎嘎小编为大家整理的在php中调用ffmpeg相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!