2017-01-31 06:45
⁄ 工业·编程
⁄ 共 668字
vlc从整体框架上来说,就是设计了一套module管理机制,将功能分类并抽象成modules。例如播放器相关的如demux decoder access output这些都成了vlc的modules。新添加一个功能(新的媒体容器格式demux、新的解码器、新的编码器)只要遵循这套机制,自己完成这个子module就可以了。所以说vlc依赖的是这些modules。没有modules其实啥也干不了。
libVLCcore: libvlc的核心,抽象出了一个libvlc_instance_t 对象。modules的装...
VLC, 源码阅读全文
2017-01-24 06:40
⁄ 工业·编程
⁄ 共 9216字
模块的加载
模块的加载分为两部分:模块的初始化,模块的加载。
模块的初始化
libvlc_new 函数初始化
libvlc_InternalInit函数调用module_InitBank ()初始化一个成员为module_t的结构体链表。
libvlc_InternalInit 调用module_LoadPlugins会加载进现有的modules。
module_LoadPlugins 调用module_InitStaticModules函数从vlc_static_modules数组中开始加载,vlc_static_modules保存的是每个modules的入口的函数指针。
vlc_stati...
VLC, 源码阅读全文
2017-01-17 06:27
⁄ 工业·编程
⁄ 共 708字
VLC虽然是用c代码实现的,但是在代码编写上遵循了面向对象原则,易修改和扩展。不过实话实说,结构之间的关联太过于频繁,理解上还是不太容易。如果能够改成c++那是最好不过了。
对于媒体播放器,肯定离不开解复用,解码,音频和视频输出这四个模块,不管是DirectShow,还是VLC,或者自己要开发一个播放器,都是如此。媒体播放器的差异主要存在于模块之间的通信方式,界面消息处理上。Di...
VLC, 源码阅读全文
2017-01-10 06:22
⁄ 工业·编程
⁄ 共 1285字
首先,附上vlc的官方链接
官网 http://www.videolan.org/
官网的wiki https://wiki.videolan.org/
源码下载 http://www.videolan.org/vlc/download-sources.html
vlc是一个开源的视频解决方案,几乎包括了所有的视频,音频,字幕,图片(是的,你没看错,vlc也支持图片解码,如jpeg,png等等都有支持,打开源码...
VLC, 源码阅读全文
2017-01-03 06:20
⁄ 工业·编程
⁄ 共 5383字
文章目录
一、 VLC简介
一、 VLC简介
VLC的全名是VideoLan Client,是一个开源的、跨平台的视频播放器。VLC支持大量的音视频传输、封装和编码格式,完整的功能特性列表可以在这里获得http://www.videolan.org/vlc/features.html,下面给出一个简要的不完整的列表:
操作系统:Windows、WinCE、Linux、MacOSX、BEOS、BSD
访问形式:文件、DVD/VCD/CD、http、ftp、mms、TC...
VLC, 源码阅读全文
2016-12-29 06:15
⁄ 工业·编程
⁄ 共 2235字
一般情况下,播放一个音视频分为4个步骤
1、access访问
2、demux解复用
3、decode解码
4、output输出
access:访问
可以理解为接收、获取、得到数据资源,包括解析访问源(url),
使用http协议,rtsp协议,ftp协议,建立连接,获取数据。
demux:解复用
就是把通常合在一起的音频和视频分离,当然也有可能有字幕。通过分析数据包头来判断是什么数据文件,需要用什么解码格式。
为什么需要demux
其实之所以需要demux,是因为音...
VLC, 源码阅读全文
2016-08-23 15:18
⁄ 工业·编程
⁄ 共 16820字
本文是本人学习shell实现机理,分析GNU bash源代码时总结的笔记性文档。通过分析bash源代码,阐述了其主要功能模块的组织和实现方式,同时对几个特定的工作流程进行了说明。
第1章 概述
1.1. bash
GNU bash是各类UNIX系统,特别是Linux下经典的shell。作为一个命令行解释器,它提供了强大的可编程功能,为用户提供了操作系统功能的良好接口。作为一个经典的开源项目,它的源代码结构较为清晰,可靠性、性能和易用性经历...
bash, 原理, 源码阅读全文