VLC 源代码结构
x64
sudo apt-get install -y liblua5.2-dev libmad0-dev libavutil-dev libavcodec-dev libavformat-dev liba52-0.7.4-dev libxcb1-dev libxcb-composite0-dev libxcb-xv0-dev libdc1394-22-dev libraw1394-dev libdvdread-dev libbluray-dev libopencv-dev libmpeg2-4-dev libflac-dev libudev-dev libresample1-dev libsamplerate-ocaml-dev libkate-dev libmtp-dev libfluidsynth-dev libschroedinger-dev libfreerdp-dev libbluray-dev librsvg2-dev libtwolame-dev libogg-dev libavc1394-dev libraw1394-dev libdca-dev libdirac-dev libchromaprint-dev libsmbclient-raw-dev libssh2-1-dev libgnome-vfs2.0-cil-dev libshout3-dev libdca-dev libdca-utils libdts-dev libupnp-dev libspeex-dev libnotify-dev libgsf-gnome-1-dev libgnome-vfsmm-2.6-dev liblivemedia-dev libpostproc-dev libsidplay2-dev libprojectm-dev libsdl1.2-dev libsdl-image1.2-dev libcddb2-dev libxcb-randr0-dev libxcb-keysyms1-dev libjack-dev libzvbi-doc libzvbi-dev liblivemedia-dev livemedia-utils libfaad-dev libspeexdsp-dev libavutil-dev libavutil51 libtaglib-cil-dev libtaglib-ocaml-dev libogg-dev libogg-ocaml-dev liboggkate-dev liboggplay1-dev libopencv-contrib-dev libopencv-core-dev libopencv-dev libopencv-core2.3 libopencv-features2d-dev libopencv-flann-dev libopencv-gpu-dev libopencv-video-dev libopencv-objdetect-dev libopencv-legacy-dev libcv-dev libopencv-imgproc-dev libopencv-highgui-dev libopencv-ml-dev libopencv-objdetect-dev libcvaux-dev libhighgui-dev
下载地址:
http://download.videolan.org/pub/videolan/vlc/latest/
http://blog.csdn.net/buffi/article/details/7189941
VLC源代码目录树
本节介绍VLC源代码目录树结构,以期使开发者对源代码的分布结构有一个整体的认识。下面的目录按照字母顺序列出,右边为该目录包含的内容描述。
目录名称 |
说明 |
---|---|
bindings |
Java, CIL |
doc |
帮助文档 (不是更新的) |
extras |
另叙。 |
include |
VLC 头文件 |
libs |
SRTP库和装载库 |
lxdialog |
制作 menuconfig的文件 |
m4 |
Automake和autoconf的宏文件 |
modules |
除了src目录外最重要的目录。参考“功能模块目录树”一节 |
po |
i18n (语言翻译)文件 |
projects |
建立在 libvlc的项目,如Mozilla插件,ActiveX |
share |
图标,脚本等等 |
src |
除了功能模块以外最重要的目录。 |
test |
一些脚本或测试代码 |
extras
的内容
extras/analyser |
一些代码风格编辑器 (vim,emacs)的宏 和一些valgrindsuppressions |
extras/buildsystem |
可选的编译系统 |
extras/contrib |
需要的库文件 (包括Makefiles自动下载和编译(或交叉编译),补丁)。 |
extras/deprecated |
deprecated |
extras/misc |
未分类文件 |
extras/package |
用于软件发布的文件如ipkg,不同的 |
功能模块目录树
目录名称 |
子目录 |
说明 |
---|---|---|
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 |
|
resampler |
各种音频重采样模块 |
|
audio-mixer |
混合器插件 |
|
audio-output |
音频输出插件如ALSA,OSS和 |
|
codec |
各种编解码,特别是ffmpeg |
|
cmml |
持续媒体标记语言,脚本/超链接解释器 |
|
dmo |
一个DirectMediaObject解码器,利用DirectMedia对WMV3视频解码 |
|
ffmpeg |
ffmpeg |
|
spudec |
RLE DVD |
|
xvmc |
XVMC视频输出和解码 |
|
control |
控制播放器的各种接口:手势, |
|
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 |
|
mux |
Various Muxers |
|
mpeg |
||
rtp |
||
packetizer |
打包模块,用于H264/AVC和MPEG 4音视频流。 |
|
services-discovery |
||
stream-out |
||
transrate |
||
video-chroma |
图像格式转换,如 YUV到 |
|
video-filter |
各种视频滤波模块如Deinterlace,Transform, Wall, Crop, Panoramix |
|
video-output |
||
directx |
WINDOWS视频输出模块,使用Direct3D和Direct |
|
qte |
QT嵌入式视频输出模块 |
|
x11 |
X11 API视频输出模块 |
|
visualization |
多种可视化模块,包括goom |
|
galaktos |
输出到 OpenGL的可视化模块 |
|
visual |
可视化系统 |
VLC 源代码结构的更多相关文章
- MINA2 源代码学习--源代码结构梳理
一.mina总体框架与案例: 1.总体结构图: 简述:以上是一张来自网上比較经典的图,总体上揭示了mina的结构,当中IoService包括clientIoConnector和服务端IoAccepto ...
- Android 源代码结构(转)
简介 在使用Andriod SDK进行应用程序开发的时候,我们需要对源代码进行调试,有可能需要进入到某个Android API函数内部进行跟踪调试.但是,如果目标版本的SDK没有关联对应版本的源代码的 ...
- Android相框 与 源代码结构
一. Android 相框 Android框架层级 : Android 自下 而 上 分为 4层; -- Linux内核层; -- 各种库 和 Android执行环境层; -- 应用框架层; -- 应 ...
- Android 源代码结构
简介 在使用Andriod SDK进行应用程序开发的时候,我们需要对源代码进行调试,有可能需要进入到某个Android API函数内部进行跟踪调试.但是,如果目标版本的SDK没有关联对应版本的源代码的 ...
- 升讯威微信营销系统开发实践:(4)源代码结构说明 与 安装部署说明( 完整开源于 Github)
GitHub:https://github.com/iccb1013/Sheng.WeixinConstruction因为个人精力时间有限,不会再对现有代码进行更新维护,不过微信接口比较稳定,经测试至 ...
- ABP项目启动及源代码结构
在整体介绍ABP项目之前我们需要从官方网站下载模板项目,下载以后放到一个本地目录下,启动VS打开源代码.具体下载的步骤如下: 一 创建ABP项目模板 1 进入官方网站然后选择特定的样板项目. 2 ...
- Android 5.0 源代码结构
本节书摘来自异步社区<深入理解Android 5 源代码>一书中的第2章,第2.2节分析Android源代码结构,作者 李骏. 网址:https://yq.aliyun.com/artic ...
- redis源代码结构解析
看了黄建宏老师的<Redis设计与实现>,对redis的部分实现有了一个简明的认识: 之前面试的时候被问到了这部分的内容,没有关注,好在还有时间,就把Redis的源码看了一遍. Redis ...
- Chrome源代码结构
首先,开始接触Chrome的童鞋可能有一个疑惑,Chrome和Chromium是同一个东西吗?答案是,Chrome是Google官方的浏览器项目名称,Chromium是Google官方对Chrome开 ...
随机推荐
- CSS3盒模型——box-sizing
box-sizing盒模型是CSS3的一个重要属性之一,常常被很多人给忽略了!CSS3出现之前box-sizing盒模型默认的宽高是指内容的宽高,css3之后可以用box-sizing来指定宽高. 目 ...
- Java空对象设计模式
有时候我们的代码中为避免 NullPointerException 会出现很多的对Null的判断语句,而这些语句一旦多起来,我们的代码就会变的惨不忍睹,因此我们引入了空对象模式(null object ...
- Oracle常用常考集合
登陆远程服务器 sqlplus scott/tiger@192.168.2.1[:port]/sid [as sysdba] 简单查询 select table_name from user_tab ...
- HDU 6162 Ch’s gift (树剖 + 离线线段树)
Ch’s gift Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total S ...
- 【BZOJ 2809】2809: [Apio2012]dispatching (左偏树)
2809: [Apio2012]dispatching Description 在一个忍者的帮派里,一些忍者们被选中派遣给顾客,然后依据自己的工作获取报偿.在这个帮派里,有一名忍者被称之为 Maste ...
- BZOJ 3083 遥远的国度(树链剖分+线段树)
[题目链接] http://www.lydsy.com/JudgeOnline/problem.php?id=3083 [题目大意] 链修改,子树最小值查询和换根操作 [题解] 树链剖分练习题. [代 ...
- 【线段树】洛谷 P3372 【模板】线段树 1
动态开结点线段树板子. #include<cstdio> using namespace std; typedef long long ll; ll sumv[400005],delta[ ...
- 【矩阵乘法】Gym - 101412C - One-Dimensional Cellular Automaton
给你一个一维细胞自动机,第i个格子在时刻t的状态是这样获得的,问你t时刻的状态. 把0时刻的状态视作一个列向量,发现状态转移其实是一个n*n的矩阵(以n=5为例), B C A B C ...
- Android Studio初级介绍
Android Studio原来不咋地,但是现在可以尝试抛弃eclipse转用它了, 亲儿子到底是亲儿子,现在的Android Studio已经今非昔比,用了一段时间,简直爱不释手,我觉得,It's ...
- [转]iBatis简单入门教程
iBatis 简介: iBatis 是apache 的一个开源项目,一个O/R Mapping 解决方案,iBatis 最大的特点就是小巧,上手很快.如果不需要太多复杂的功能,iBatis 是能够满足 ...