
视频处理
取次花丛懒回顾
一个爱玩儿爱生活的技术宅;
毕业于上海大学通信与信息工程学院,从事流媒体和视频编解码的研究与开发工作;
研究领域包括视频编解码标准、视频处理和流媒体技术、移动互联网技术等。
展开
-
【视频处理工程】1、DirectShow基本概念
所谓的DirectShow,通常指的是微软提供的Microsoft DirectShow API,这是一种可用于Windows平台上处理音视频回放、采集等工作的应用的流媒体框架。早起的DirectShow框架包含在了DirectX之内一直到DirectX 9.0版本。由于近年来相关资料较少,我们手中的两本相关的书籍《DirectShow开发指南》和《Visual C++音频视频处理技术及工程实原创 2014-02-10 15:37:50 · 2974 阅读 · 0 评论 -
【COM原理和应用】2、COM对象和接口
1、COM对象在客户程序与组件交互的过程中,COM组件将以COM对象形式封装的实体提供给客户程序。原创 2015-02-04 17:56:45 · 1422 阅读 · 0 评论 -
使用Eclipse对FFMpeg进行调试
在研究代码的过程中,调试运行是一种原创 2014-08-23 22:46:31 · 1488 阅读 · 0 评论 -
【COM原理和应用】3、COM的实现
1、进程内组件和进程外组件使用dll实现组件程序,则客户长须在调用组件程序的服务时,需要将dll装进自身的进程,所以客户程序和组件运行于同一进程空间,此类组件称为进程内组件。使用exe程序的组件,在被调用时自身具有进程空间,因此客户程序和组件运行在不同的进程空间,此类组件称之为进程外组件。1.1、进程内组件在客户程序与组件简历链接之后,客户程序可以得到直接指向组件接口虚函数表的接口指针原创 2015-02-05 22:05:53 · 1051 阅读 · 0 评论 -
【COM原理和应用】1、COM原理和概述
【我们知道,Directshow整体上是构建在COM之上的,也可以认为是COM在视频、流媒体领域的一种特定的应用和封装。如果只是为了开发High level的directshow应用,COM方面的只是其实并非必须;但如果涉及到filter层的自定义开发,那么研究COM的概念和基本原理是很有必要的。现在开始我们将试图学习COM的内容,以求更深入地理解Directshow的知识。】1、COM的起源原创 2015-01-31 18:36:51 · 1377 阅读 · 1 评论 -
视频应用开发中常用的几个结构体
在视频应用的开发中,经常会使用到两个结构体VIDEOINFOHEADER2原创 2014-09-29 11:19:48 · 1561 阅读 · 0 评论 -
视频文件格式分析(1):avi格式
近日某网盘对用户保存其中原创 2014-10-06 13:05:59 · 2805 阅读 · 2 评论 -
虚拟机软件VMWare Workstation安装Ubuntu
现在很多与视频相关的开源软件都是原创 2014-08-10 21:00:34 · 1328 阅读 · 0 评论 -
【视频处理工程】8、关于DXVA视频解码硬件加速(1):Decoder如何调用IAMVideoAccelerator接口
前言:这段时间一直在研究一个项目就是改如何在翻译 2014-05-13 11:47:47 · 3302 阅读 · 4 评论 -
【视频处理工程】7、一个基于LavFilter的对话框视频播放器
在实现了利用控制台程序播放指定视频文件之后,接下来开始尝试编写一个带有界面的视频播放器,可以选择播放的视频,控制音量等更多的功能。为简单起见,界面的框架用MFC实现。1、建立工程,生成默认界面这一步很简单,打开Visual Studio 2010,选择MFC Application,选择基于对话框的工程然后一路next就完成了,没有任何需要更改的地方。之后可以编译运行,生成一个默认原创 2014-03-19 14:46:16 · 2636 阅读 · 0 评论 -
【视频处理工程】6、使用Lav Filter手动建立Filter Graph并播放视频文件
在前面的这篇博文中,我们开始利用的手动建立Filter Graph,已经完成了Splitter Source Filter和Audio/Video Decoder的建立和链接。接下来需要做的是渲染解码完成的音视频数据,分别由Audio Render和Video Render完成。音频渲染器较为简单也很少会出问题,我们主要讨论视频渲染器的问题。DirectShow所提供的视频渲染器种类有多种原创 2014-03-14 17:34:47 · 3668 阅读 · 0 评论 -
【视频处理工程】5、DirectShow的事件交互和数据流控制机制
DirectShow通过事件通知(Event Notifation)机制使应用程序与Filter Graph Manager之间实现交互控制。当filter状态转换、播放完成、出错或者重绘视频窗口等时刻会发出特定事件消息,又filter graph manager处理或者转发给应用程序处理。在Filter Graph Manager中定义了三个接口用于处理事件通知,即IMediaEventSi原创 2014-03-05 17:44:09 · 1644 阅读 · 0 评论 -
【视频处理工程】3、DirectShow基本开发过程(一)
DiectShow工程的开发需要提前编译相关的两个静态库,具体方法在前文【视频处理工程】1、DirectShow基本概念中已有叙述。这里假设我们的开发环境是Windows 7+Visual Studio 2010 Ultimate,来看如何利用DirectShow开发视频处理的应用程序。新建工程:作为demo,我们新建一个简单的控制台工程,命名为MyDirectShowProj原创 2014-03-04 11:43:31 · 5897 阅读 · 4 评论 -
【视频处理工程】4、DirectShow基本开发过程(二)
前文讲了一些开发DirectShow的基本配置方法以及一些基本的开发过程,如如何创造一个filter并加入filter graph中。这里继续上文的步骤讨论如何得到filter的pin,以及如何连接两个filter。1、如何获取filter的pin获取filter上的pin是连接filter之前必须的一步。主要思路是枚举filter上所有的pin,并通过QueryDirection检查pi原创 2014-03-04 17:51:21 · 2677 阅读 · 1 评论 -
【视频处理工程】2、DirectShow的基本单元:Filter
DirectShow所采用的是一种模块话的结构,其基本单元是一类成为filter的COM对象。DirectShow提供了多种预定义的标准filter组件,同时开发者也可以根据需要开发自己的个性化filter。常用的filter一般可分为以下不同类别:(1)Source Filter——为整个Filter Graph提供数据laiy原创 2014-02-12 17:05:05 · 2060 阅读 · 1 评论 -
在Ubuntu下编译FFMPEG
在之前,我们成功地使用mingw+msys在windows平台下原创 2014-08-14 22:01:29 · 1067 阅读 · 0 评论