什么是ffmpeg?想必很多朋友还不是很了解。小编也是从最近的文章《win10原生支持ffmpeg,将通吃所有主流视频格式》中了解到的。到底什么是ffmpeg?为什么win10原生支持ffmpeg框架,可以支持所有主流视频格式?下面小编就来详细分享一下我所知道的。
什么是ffmpeg?
ffmpeg 是一组开源计算机程序,可用于记录、转换数字音频和视频,并将其转换为流。采用lgpl 或gpl 许可证。它为录制、转换和流式传输音频和视频提供了完整的解决方案。它包含一个非常先进的音频/视频编解码器库libavcodec。为了保证高可移植性和编解码器质量,libavcodec 中的许多编解码器都是从头开发的。
ffmpeg是在linux平台下开发的,但也可以在其他操作系统环境下编译运行,包括windows、mac os x等。该项目最初由fabrice bellard发起,现由michael niedermayer维护。很多ffmpeg的开发者都来自于mplayer项目,目前ffmpeg也放在了mplayer项目组的服务器上。项目名称来源于mpeg video coding standard,前面的“ff”代表“fast forward”。
简单的说,ffmpeg是一个免费的多媒体框架,可以运行多种格式的音视频录制、转换和流媒体功能,让用户可以访问几乎所有的视频格式,包括mkv、flv、mov、vlc media player、google chrome所有浏览器支持它。
ffmpeg 有什么用?
ffmpeg具有非常强大的功能,包括视频采集功能、视频格式转换、视频采集、视频水印等,核心功能如下。
视频捕捉功能
ffmpeg的视频采集功能非常强大。它不仅可以从视频采集卡或usb摄像头采集图像,还可以
对于屏幕录制,它还支持以rtp方式向支持rtsp的流媒体服务器发送视频流,支持直播应用。
linux下ffmpeg的视频采集
在linux平台上,ffmpeg对v4l2视频设备提供了很好的支持,比如:
./ffmpeg -t 10 -f video4linux2 -s 176*144 -r 8 -i /dev/video0 -vcodec h263 -f rtp rtp://192.168.1.105:5060 /tmp/ffmpeg.sdp
以上命令表示:采集10秒视频,采集video4linux2视频设备,采集qcif(176*144)视频,每秒8帧,视频设备为/dev/video0,视频编码为h263,输出格式是rtp。后面定义ip地址和端口(www.pc841.com技术栏),将码流对应的sdp文件重定向到/tmp/ffmpeg.sdp,将sdp文件上传到即可实现直播流媒体服务器起来了。
windows下ffmpeg视频采集
关于windows下ffmpeg视频采集的资料很少,但是ffmpeg还是支持windows下的视频采集的。 ffmpeg在windows下支持video capture for video for windows(vfw)设备,但是vfw设备已经过时了,正在被wdm视频设备取代,不过ffmpeg暂时没有支持wdm的计划,不过好像有把wdm转vfw的工具, 所以ffmpeg在windows下还是可以抓取视频的。
视频格式转换功能
ffmpeg视频转换功能。视频格式转换,比如将多种视频格式转换成flv格式,不是视频信号转换。
ffmpeg可以方便的在各种视频格式(wma、rm、avi、mod等)之间进行转换,例如可以将录制的视频avi转换成视频网站使用的flv格式。
视频截图功能
对于选定的视频,在指定时间捕获缩略图。视频采集,获取静态和动态图像,不建议采集gif文件;因为抓取的gif文件较大,播放不流畅。
好了,ffmpeg作用(ffmpeg是什么软件)的介绍到这里就结束了,想知道更多相关资料可以收藏我们的网站。
