VLC 21年,重新审视低延迟直播

本文介绍了VLC播放器的历史、架构及其与低延迟直播的关系。作者探讨了VLC如何通过插件化实现灵活性,并指出VLC在低延迟直播中的优化挑战,包括全链路低延迟分析、解码延迟、封装和传输协议的选择。文章还讨论了VLC在0延迟概念验证的实验以及VLC和VideoLan开源社区的发展,强调系统性优化的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

编者按: 作为一个历经了21个年头的播放器,VLC旺盛的生命力使其在今天仍然有着一席之地。但是21年前的定位所带来的与当今主流媒体播放器的差距依然不可小觑。LiveVideoStackCon2022上海站大会我们邀请到了腾讯云 客户端开发工程师 赵志立,为我们分享他们是如何让VLC走进低延迟的大门的以及VLC的未来是怎样的。

文/赵志立
整理/LiveVideoStack

大家好,我是来自腾讯云音视频的赵志立。本次为大家带来的分享的主要内容是我与VLC以及低延时直播之间的一些故事。

低延时直播是当下大热的话题,一提到VLC,许多人第一反应都是与低延时直播不沾边,确切的说,VLC是低延时直播的对立面。这样的观点无疑是正确的,不过今天我就来为大家介绍下VLC与VideoLan社区是如何将不沾边的VLC做到低延时“及格分数”的。

下面主要从VLC简介、全链路低延时直播以及VideoLan开源社区三个方面进行介绍。

一、VLC简介

VCL是具有悠久历史的播放器。从1996年起,到2001年以GPL协议发布,直到现在已经走过21个年头。VLC几乎支持了所有能用的系统,从广为人知的Windows到鲜为人知的OS2,时至今日仍有开发者在持续不断更新维护着。

虽然VLC通常被作为播放器使用,但历史上的VLC其实是由两个部分组成的。一个是VLC客户端,另一个是VideoLan Server (VLS),在发展的过程中两个部分逐渐合并,才有了今天的VLC。在国外VLC经常用于投屏,例如VLC支持Chromecast投屏协议。

VLC的架构建立在插件化的基础上,其核心很小,仅提供内存管理、网络基础操作、多线程封装和时钟同步等功能,其它例如输入设备、传输协议、封装格式、编码格式、渲染方式等都是通过插件实现的,是M*N*O*P的自由组合方式。

很多人误解VLC只是FFmpeg的简单封装,但事实上VLC诞生比FFmpeg早,所以这种观点不攻自破。VLC和FFmpeg关系十分紧密,FFmpeg是VLC的重要组成部分,但不是必须的,VLC的解码、解封装均有多种方式实现。

VLC和Gstreamer也有着千丝万缕的联系。VLC可以使用Gstreamer的codec进行解码,VLC和Gstreamer都具有插件化的特性,但相比之下,VLC的插件化刚刚好,Gstreamer的插件化就有一些“走火入魔”了。

这是VLC版本演进的过程。现在

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值