欢迎来到天天文库
浏览记录
ID:36729775
大小:75.70 KB
页数:34页
时间:2019-05-14
《VLC源代码分析报告报告材料》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、实用标准文案VLC源代码分析一、VLC简介VLC的全名是VideoLanClient,是一个开源的、跨平台的视频播放器。VLC支持大量的音视频传输、封装和编码格式,完整的功能特性列表可以在这里获得http://www.videolan.org/vlc/features.html,下面给出一个简要的不完整的列表:操作系统:Windows、WinCE、Linux、MacOSX、BEOS、BSD访问形式:文件、DVD/VCD/CD、http、ftp、mms、TCP、UDP、RTP、IP组播、IPv6、rtsp编码格式
2、:MPEG*、DIVX、WMV、MOV、3GP、FLV、H.263、H.264、FLAC视频字幕:DVD、DVB、Text、Vobsub视频输出:DirectX、X11、XVideo、SDL、FrameBuffer、ASCII控制界面:WxWidgets、QT4、Web、Telnet、Commandline浏览器插件:ActiveX、Mozilla(firefox)实际上为了更清晰一点,我们可以反过来说说VLC不支持哪些常见的。首先是RealVideo(Real的Audio部分支持),因为Real的Video加
3、码器存在版权的问题。实际上VLC0.9.0已经加入了RealVideo的支持,但是需要额外的解码器(类似MPlayer)。另外,VLC不支持3GP的音频格式AMR。VLC原先是几个法国的大学生做的项目,后来他们把VLC作为了一个开源的项目,吸引了来自世界各国的很多优秀程序员来共同编写和维护VLC,才逐渐变成了现在这个样子。至于为什么叫VideoLanClient,是因为以前还有一个VideoLanServer的项目(简称VLS),而目前VLS的功能已经合并到VLC中来,所以VLC不仅仅是一个视频播放器,它也可以
4、作为小型的视频服务器,更可以一边播放一边转码,把视频流发送到网络上。VLC最为突出的就是网络流的播放功能,例如MPEG2的UDPTS流的播放和转发,几乎是无可替代的。对普通用户来说,VLC还有一个好处是不影响Windows中的解码器。VLC通常不影响也不依赖于系统中自带的解码器(除了realvideo和quicktime的类型),很绿色很环保;更不用担心流氓软件、广告插件之类的恶心的玩意儿。从程序结构来看,VLC的可扩展性是相当优秀的。VLC绝大部分用高效的C代码来编写(少量的C++和汇编),但是实现了完全动态
5、的模块化,所有功能包括程序框架本身都是module,可以在运行时载入,这使得VLC可以轻易的扩展多种功能并且容易维护。它的架构有一点类似于DirectShow的技术。VLC也很注重版权方面的问题,你可以放心的自由的使用而不需要为版权的问题担心——VLC只包括免费的、自由的库。VLC基于GPL,因此也可以用于商业应用,只需要保留GPL,以及公开源代码,如果你修改了VLC的话。下面是VLC相关的一些链接VLC官方网站:http://www.videolan.org/VLC下载页面:http://www.videol
6、an.org/vlc/VLC下载目录(源码和安装包):http://download.videolan.org/pub/videolan/vlc/VLCNightlyBuilds:http://nightlies.videolan.org/VLC开发Wiki:http://wiki.videolan.org/Developers_CornerVLCWin32第三方库预编译包下载目录:http://download.videolan.org/pub/testing/win32/VLC官方论坛:http://for
7、um.videolan.org/VLC邮件列表:http://www.videolan.org/developers/lists.html二、Windows平台编译第一步,要创建编译VLC的环境。VLC在Windows下可以用Msys+MingW或者Cygwin的方式来编译,二者大同小异,这里主要介绍Cygwin。Cygwin是一个在Windows下面模拟Linux环境的东西。它提供了很多库和应用程序,让你可以像在Linux上一样来使用Windows。你需要在http://www.cygwin.com/下载一个
8、cygwin的安装程序setup.exe。然后选择一个cygwin的源来下载所需要的库,国内的话到ftp://ftp.sjtu.edu.cn/cygwin/和http://www.cygwin.cn/pub相对来说会快一点。第一次安装,除了默认的库以外,我们还需要加入一些库来支持VLC的编译,包括Archive(目录)unzipzip精彩文档实用标准文案Develautoconfaut
此文档下载收益归作者所有