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 |
可视化系统 |