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-09-02 19:35
⁄ 工业·编程
⁄ 共 565字
库名
简介
需要的能力
官网链接
ffmpeg
FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。采用LGPL或GPL许可证。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常先进的音频/视频编解码库libavcodec,为了保证高可移植性和编解码质量,libavcodec里很多codec都是从头开发的。
了解视频编解码原理和流程、了解图像压缩技术、音频压缩技术等
http://ffmpeg.o...
ffmpeg, live555, VLC阅读全文
2016-07-25 21:50
⁄ 工业·编程
⁄ 共 7598字
1. 概述
VLC属于Video LAN开源项目组织中的一款全开源的流媒体服务器和多媒体播放器。作为流媒体服务器,VLC跨平台,支持多操作系统和计算机体系结构;作为多媒体播放器,VLC可以播放多种格式的媒体文件。主要包括有:WMV、ASF、MPG、MP、AVI、H.264等多种常见媒体格式。
VLC采用全模块化结构,在系统内部,通过动态的载入所需的模块,放入一个module_bank的结构体中统一管理,连VLC的Main模块也是通过插件的方式动态载入的(...
VLC, 开源阅读全文
2013-07-12 06:42
⁄ 工业·编程
⁄ 共 2043字
本节介绍VLC源代码目录树结构,以期使开发者对源代码的分布结构有一个整体的认识。下面的目录按照字母顺序列出,右边为该目录包含的内容描述。
目录名称
说明
bindings
Java, CIL 和Python绑定
doc
帮助文档 (不是更新的)
extras
另叙。
include
VLC 头文件
libs
SRTP库和装载库
lxdialog
制作 menuconfig的文件
m4
Automake和autoconf的宏文件
mo...
VLC阅读全文
2013-07-12 06:41
⁄ 工业·编程
⁄ 共 6146字
VLC建立在很多独立的功能模块上面的,象很多媒体播放器系统框架一样,每个模块实现一个新的功能。在阅读本文之前,必须先行阅读“VLC运行核及功能模块”和“VLC如何装载功能模块”章节。本文叙述如何为VLC编写一个新的功能模块。
Git与资源库操作
Git
如果你打算将你的工作上传到VLC,首先请阅读”git简介”一节,除此以外,还要检查”发送补丁”页里面的内容。
编译模块
Modules.am
首先在modules目录下,找到正确的存放代码的位置。
...
VLC阅读全文