添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
VLC架构及流程分析

VLC架构及流程分析

0x00 前置信息

VLC是一个非常庞大的工程,我从它的 架构 及流程入手进行分析,涉及到一些很细的概念先搁置一边,日后详细分析。

0x01 源码 结构(Android Java相关的暂未分析)

# build-android-arm-linux-androideabi/:第三方库。
# modules/:模块代码。
# modules/demux:      解复用模块代码。
# modules/codec:       解码模块相关代码。
# modules/access:    访问模块相关代码。
# 其他:未详细分析。
# src/: VLC架构核心代码。
# src/config/:           从命令行和配置文件加载配置,提供功能模块的读取和写入配置。
# src/control/:            提供动作控制功能,如播放/暂停,音量管理,全屏,日志等。
# src/extras/:             平台特殊性相关代码。
# src/modules/:          模块管理。
# src/network/:           提供网络接口。
# src/posix/:               多线程相关。
# src/osd/:                 显示屏幕上的操作。
# src/interface/ :         提供代码中可以调用的接口中,如按键后硬件作出反应。
# src/playlist/:            管理播放功能,如停止,播放,下一首,随机播放等。
# src/text/:                 字符集。
# src/input/:               输入流相关代码。
# src/video_output/ :   初始化视频播放器,把从解码器获得的数据处理后播放。
# src/audio_output/ :   初始化音频混合器,把从解码器获得的数据处理后播放。