嵌入式 vlc从接收到数据流到播放视频的过程分析(经典)

本文深入解析VLC从接收数据流到播放视频的流程,涉及VLC启动加载模块、VLC内部初始化、VLM对象创建、播放节目单加载、Rtsp协议获取RTP数据包、RTP数据包的转换以及RGB数据的播放等多个关键步骤。通过VLC的源码目录结构,展示了从网络接收流到解码播放的详细路径,为理解VLC的内部工作原理提供了清晰的指南。
摘要由CSDN通过智能技术生成

个人整理:

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 插件和MacOSX 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和MacOS 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,MPEGI-II 音频层1,2, 3 解码



resampler

各种音频重采样模块







audio-mixer



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值