`

LAV Filter 源代码分析 1: 总体结构

 
阅读更多

LAV Filter 是一款视频分离和解码软件,他的分离器封装了FFMPEG中的libavformat,解码器则封装了FFMPEG中的libavcodec。它支持十分广泛的视音频格式。

源代码位于GitHub或Google Code:
https://github.com/Nevcairiel/LAVFilters
http://code.google.com/p/lavfilters/

本文分析了LAV Filter源代码的总体架构。

使用git获取LAV filter源代码之后,使用VC 2010 打开源代码,发现代码目录结构如图所示:

整个解决方案由8个工程组成,介绍一下我目前所知的几个工程:

baseclasses:DirectShow基类,在DirectShow的SDK中也有,是微软为了简化DirectShow开发而提供的。

Demuxers:解封装的基类,LAVSplitter需要调用其中的方法完成解封装操作。

LAVAudio:音频解码Filter。封装了libavcodec。

LAVSplitter:解封装Filter。封装了libavformat。

LAVVideo:视频解码Filter。封装了libavcodec。

libbluray:蓝光的支持。

以上标为咖啡色字体的是要重点分析的,也是最重要的工程。

 

 

 

分享到:
评论

相关推荐

    FFmpeg基础库编程开发

    LAV Filter 源代码分析 1: 总体结构 357 LAV Filter 源代码分析 2: LAV Splitter 358 LAV Filter 源代码分析 3: LAV Video (1) 382 LAV Filter 源代码分析 4: LAV Video (2) 400 9.3 MPlayer 427 9.3.1 ...

    LAVFilters源码

    lavfiter源代码,可用vs2010编译通过,lavfilter对于视频开发必备。

    ffmpeg基础开发资料自总结

    LAV Filter 源代码分析 1: 总体结构 340 LAV Filter 源代码分析 2: LAV Splitter 341 LAV Filter 源代码分析 3: LAV Video (1) 364 LAV Filter 源代码分析 4: LAV Video (2) 382 9.3 MPlayer 408 9.3.1 ...

    DirectShow调用手动Lav Filter建立Filter Graph播放视频

    使用DirectShow,调用Lav Filter的组件播放视频。需要额外下载lavfilter组件并注册才能正常使用。

    lavfilter-0.70.2 windows下的解码器

    lavfilter-0.70.2 下的解码器

    LAVFilters-0.76.1-Installer.zip

    视频解码器 LAVFilters,支持绝大部分格式的视频文件解码,0.76.1版本,此为windows安装文件,包含32位和64位。 https://github.com/Nevcairiel/LAVFilters/releases

    madVR+LAVFilter+OpenCodec.rar

    基于Potplayer, 使用 madVR + LAVFilter + OpenCodec 打造最强观影画质, 任意大片60帧观看,美滋滋

    LAVFilters-0.76.1-x86.zip

    视频解码器 LAVFilters,支持绝大部分格式的视频文件解码,0.76.1版本,此为windows平台免安装文件,32位 (x86平台) ,下面链接有32为和64位安装版文件 https://download.csdn.net/download/qq_27898413/86240084 ...

    LAV Filters编解码相关库以及安装脚本

    Qt 中的多媒体播放,底层是使用DirectShowPlayerService,Qt在windows上的多媒体播放功能是使用系统的DirectShow... LAVVideo.ax以及其依赖的所有动态库,另附了命令行的安装bat脚本,可直接加入自己的代码中进行安装。

    LAVFilters-0.77.1-x64

    视频解码器 LAVFilters,支持绝大部分格式的视频文件解码

    Lav Filiters 解码器安装包

    LAV Filters中文版是一款非常不错的视频解码工具。LAV Filters中文版是一组基于 ffmpeg 项目中的 libavformat/libavcodec 库的 directshow 分离器和音视频解码器,几乎允许您在 directshow 播放器中播放任何格式的...

    LAVFilters-0.74.1

    LAVFilters-0.74.1只能在GITHUP上去下载,太慢了,这里下载下来保存一下

    LAVFilters-0.74.1-x64.zip

    LAVFilters-0.74.1-x64.zip,音视频编解码器,需要和播放器搭配使用

    DirectShow分离器和音视解码器(LAV Filters) v0.60.1.rar

    LAV Filters 包含三个部分:LAV Splitter | LAV Video Decoder | LAV Audio Decoder,LAV Splitter 是源滤镜/分离器,基于 libavformat 和 libbluray 库,负责将文件分离成单独的基本流。 LAV Audio/Video ...

    LAVFilters解码器

    LAVFilters解码器,在Qt开始视频播放是需要用到

    LAVFilters-0.70.2

    QT 视频播放 LAVFilters

    DirectShow视频纵向拉伸Filter源码

    DirectShow视频拉伸Filter(Transform Filter),目前只实现视频纵向2倍拉伸, 可用于视频采集卡按场采集图像时拉伸图像 本工程在WindowsXp Sp2、DirectX9、VC++6.0下编译通过

    LAVFilters0.76支持国标AVS3及AVS2 10位)解码(原始,TS及MKV封装)_Win64

    源码及下载:https://gitee.com/zhengtianbo/LAVFilters-GB-CAVS-AVS2-AVS3-decoder/releases mpc-hc播放器https://gitee.com/zhengtianbo/cavs-avs2-avs3_decoder_added_to_mpc_hc/releases avs2/avs3测试视频:...

    LAVFilters-0.65-Installer

    该安装程序个人主要用于配合SubtitleEdit使用时作为食品的解码插件来安装使用的,如果不安装的话,SubtitleEdit有些视频无法正常打开。该程序的更新可以参考:https://github.com/Nevcairiel/LAVFilters/releases

Global site tag (gtag.js) - Google Analytics