http://blog.csdn.net/buffi/article/details/7189941
译者:捞刀客
VLC源代码目录树
本节介绍VLC源代码目录树结构,以期使开发者对源代码的分布结构有一个整体的认识。下面的目录按照字母顺序列出,右边为该目录包含的内容描述。
目录名称 | 说明 |
---|---|
bindings | Java, CIL 和Python绑定 |
doc | 帮助文档 (不是更新的) |
extras | 另叙。 |
include | VLC 头文件 |
libs | SRTP库和装载库 |
lxdialog | 制作 menuconfig的文件 |
m4 | Automake和autoconf的宏文件 |
modules | 除了src目录外最重要的目录。参考“功能模块目录树”一节 |
po | i18n (语言翻译)文件 |
projects | 建立在 libvlc的项目,如Mozilla插件,ActiveX 插件和MacOS X Framework |
share | 图标,脚本等等 |
src | 除了功能模块以外最重要的目录。 |
test | 一些脚本或测试代码 |
extras 的内容
extras/analyser | 一些代码风格编辑器 (vim,emacs)的宏 和一些valgrindsuppressions |
extras/buildsystem | 可选的编译系统 |
extras/contrib | 需要的库文件 (包括Makefiles自动下载和编译(或交叉编译),补丁)。 |
extras/deprecated | deprecated 文件 |
extras/misc | 未分类文件 |
extras/package | 用于软件发布的文件如ipkg,不同的 rpm 规范文件,win32和Mac OS X安装文件。 |
功能模块目录树
目录名称 | 子目录 | 说明 |
---|---|---|
access | | 通过网络获取视频流的协议(http,ftp,fake,tcp,udp等),获取物理媒体介质的媒体内容如cd,dvd。 |
| cdda | 读取CD音频的输入模块 |
| dshow | DirectShow获取插件,用于WINDOWS平台下的编码卡。 |
| dvb | 使用V4L2API的输入模块,用于DVB-S/C/T媒体流。 |
| mms | 基于TCP,UDP的MMS和HTTP获取模块 |
| rtsp | |
| screen | 获取屏幕图像的输入模块。 |
| vcd | 获取VCD数据的输入模块。 |
| vcdx | 获取VCD输入模块,可以导航,静止 |
| | |
access-filter | | 包含下面的滤波器:timeshift, record, dump |
| | |
access-output | | |
| | |
audio-filter | | 各种音频滤波器如解码,均衡,转换。 |
| channel-mixer | 各种混合器,解码器如 Dolby解码器 |
| converter | 定点或浮点音频格式转换如 AC/3,MPEG I-II 音频层1,2, 3 解码 |
| resampler | 各种音频重采样模块 |
| | |
audio-mixer | | 混合器插件 |
| | |
audio-output | | 音频输出插件如ALSA,OSS和 DirectX音频 |
| | |
codec | | 各种编解码,特别是ffmpeg |
| cmml | 持续媒体标记语言,脚本/超链接解释器 |
| dmo | 一个DirectMediaObject解码器,利用DirectMedia对WMV3视频解码 |
| ffmpeg | ffmpeg 库的视频解码器 |
| spudec | RLE DVD 小标题解码 |
| xvmc | XVMC视频输出和解码 |
| | |
control | | 控制播放器的各种接口:手势, 热键,lirc,远程控制和telnet |
| http | HTTP远程控制 |
| | |
demux | | 不同的解复用程序 |
| asf | ASF 解复器 |
| avi | AVI文件流解复器 |
| mp4 | MP4文件输入模块 |
| mpeg | |
| playlist | 播放清单导入模块 |
| | |
gui | | 不同平台的用户界面和 ncurses接口 |
| beos | 用于BeOS的音频输出,视频输出和用户界面输出。 |
| macosx | Mac OS X 视频输出和用户界面模块 |
| pda | iPaq用户接口,使用Gtk2+widget集. |
| qnx | QNX RTOS 插件 |
| qt4 | 使用Qt4库交叉编译的用户界面模块。该模块是默认的界面库 |
| skins2 | 换夫模块。 |
| wince | Pocket PC 接口 |
| wxwidgets | 使用wxWindows库跨平台的接口。作为默认的接口的VLC版本是0.86a. |
| | |
meta-engine | | |
| | |
misc | | |
| dummy | 哑 (没有GUI)音频输出,视频输出,用户接口和输入模块。 |
| memcpy | 内存快拷贝模块 |
| notify | 通知,使用libnotify |
| playlist | |
| probe | |
| testsuite | |
| xml | LibXML 和 xtagxml 解析 |
| | |
mux | Various Muxers | |
| mpeg | |
| rtp | |
packetizer | | 打包模块,用于H264/AVC和MPEG 4音视频流。 |
| | |
services-discovery | | |
| | |
stream-out | | |
| transrate | |
| | |
video-chroma | | 图像格式转换,如 YUV到 RGB |
| | |
video-filter | | 各种视频滤波模块如Deinterlace,Transform, Wall, Crop, Panoramix 等等。 |
| | |
video-output | | |
| directx | WINDOWS视频输出模块,使用Direct3D和Direct X API,OpenGL |
| qte | QT嵌入式视频输出模块 |
| x11 | X11 API视频输出模块 |
| | |
visualization | | 多种可视化模块,包括goom |
| galaktos | 输出到 OpenGL的可视化模块 |
| visual | 可视化系统 |