现在的位置: 首页 > 自动控制 > 工业·编程 > 正文

vlc架构初探

2017-01-31 06:45 工业·编程 ⁄ 共 668字 ⁄ 字号 暂无评论

vlc从整体框架上来说,就是设计了一套module管理机制,将功能分类并抽象成modules。例如播放器相关的如demux decoder access output这些都成了vlc的modules。新添加一个功能(新的媒体容器格式demux、新的解码器、新的编码器)只要遵循这套机制,自己完成这个子module就可以了。所以说vlc依赖的是这些modules。没有modules其实啥也干不了。

vlc架构初探

libVLCcore:  libvlc的核心,抽象出了一个libvlc_instance_t 对象。modules的装载/卸载机制。还有一套多媒体相关的操作接口。如:input, multiplexing, demultiplexing, audio output, video output.

modules:modules提供了具体的功能。根据编译配置modules数量200-400之间。根据功能的分类可分成输入输出(文件、网络、cd)、编解码(mp3、264 )、模块化的GUI(基于qt、mac)

External libraries:开源软件都在秉承着不重复造轮子的思想。所以vlc本身也依赖了大量的外部开源库,如知名的ffmpeg、qt、live555等。

外部库列表

VLC main:player的main。初始化libVLC 并加载用户界面,注意vlc的用户界面也是已module的形式存在。

基于libvlc 我们就能自己开发自己的播放器了。

 

modules 按照功能大致分类

vlc架构初探

vlc 也提供了一个模块列表
---------------------
作者:tx3344

给我留言

留言无头像?