/bin: vlc源码,即原生GUI前端程序源码,其中winvlc.c为windows下的vlc的源码;/compat: 跨OS代码,解决各平台下库函数不一致问题;
/contrib: vlc中使用的第三方库的patch及编译脚本;
/extras: 一些不太常用的辅助工具及脚本;
/include: libvlccore库的头文件路径,编写插件时需要添加此文件夹路径;
/include/vlc: libvlc头文件路径,如果仅仅使用libvlc开发,需要包含此路径;
/lib: libvlc接口实现源码;
/modules: vlc插件源码,将各种第三方库封装成vlc的插件;
/src: libvlccore源码,为vlc提供功能接口,是vlc架构最重要部分,主要包括:
/audio_output: 初始化音频mixer,发现正确的播放频率,重新制作从解码器接收过来的音频帧;
/input: 打开一个输入组件,读取、解析它们并将被还原的基本流传递给解码器;
/interface: 包含与用户交互的代码,如按键和设备弹出,创建Interface;
/misc: 杂项,如线程管理,消息队列,cpu检测等;
/modules: 组件银行;
/playlist: 管理播放列表的交互,如停止,播放下一个或随机播放;
/stream_output: 类似于audio_output;
/video_output: 初始化video显示器,从解码器得到所有的图片及子图片,转换为对应的格式并输出.

该博客主要介绍了VLC媒体播放器的源码结构,包括/bin目录下的原生GUI前端程序,/compat中的跨平台代码,/lib里的libvlc接口实现,以及/modules中的插件源码。重点解析了 VLC 的核心组件,如/audio_output负责音频输出,/input用于输入组件的管理和数据读取,/interface处理用户交互,/playlist管理播放列表,而/video_output则处理视频显示。这些模块共同构成了VLC的强大功能。
最低0.47元/天 解锁文章
5345

被折叠的 条评论
为什么被折叠?



