DirectShow(简称 DShow) 是一个 Windows 平台上的流媒体框架,提供了高质量的多媒体流采集和回放功能。

这篇博客主要是简单讲下如何学习 Direct Show 框架,避免让自己少走一点弯路。

一、学习途径

先介绍一下学习 Direct Show 的几个途径。

  • DirectShow MSDN:Direct Show 作为微软官方开发的一个框架,在 MSDN 上自然也有官方教程,下载了Windows SDK还有一些基础的 sample(样例)可供参考学习。但是文档都是英文的,如果英语不好,可以用浏览器上的翻译插件观看,或者去找前人的译文也可以(例如Directshow完整介绍)。

  • 书籍:这里推荐《DirectShow开发指南》和 《DirectShow实务精选》,虽然是十多年前写的,年代有点久远,但还是可以参考一下的。

  • 搜索引擎:搜索 Direct Show 相关教程,还是有很多大神的博客和开源代码可以借鉴学习一下的。

二、忽略编程,理解架构

Direct Show是套架构,不要用学习软件应用的思想去学习。之前一边学一边想怎么编程应用,怎么具体实现,最后搞的云里雾里,建议初学者在刚学习时先别管怎么写出具体编程实现,要先简单理解架构。

模块化思想

DirectShow 的架构 MSDN 上面说的很清楚,我以后也会稍作总结,其主要思想是模块化处理,每个功能被划分为一个模块,一层层处理,一层层传递。对此,需要弄清的概念有 Filter , FilterGraph , Pin 等。相信也很容易弄清这些。

处理流程(FilterGraph)的编程实现

MSDN 的教程告诉了我们怎样将图形化的创建过程用代码实现,有文件 playback ,视频音频的采集等,以及 GraphFilter 的应用细节,可以参考着去掌握这个处理流程。

最新文章

  1. Android之SharedPreferences数据存储
  2. 第2月第4天 injection plugin for xcode
  3. header元素
  4. hibernate 不识别union解决方法
  5. 在CentOS 7 MySQL / MariaDB
  6. C#用反射判断一个类型是否是Nullable同时获取它的根类型(转自网络)
  7. hdu 2196 树形dp
  8. Cocos2d-x如何控制动作速度
  9. PHP之session_start()详解
  10. JavaMail学习笔记
  11. 使用cacti监控服务器
  12. C# 遍历泛型集合
  13. Python之Suds库调用WCF时复杂参数序列化
  14. PS 滤镜算法原理——照亮边缘
  15. 浅谈面试中的OOD面向对象设计问题
  16. Nuget(BagGet)使用教程
  17. Pytorch报错记录
  18. Vue-admin工作整理(二):项目结构个人配置
  19. Java工程师必备
  20. 阅读笔记4 我是一只IT小小鸟

热门文章

  1. JdbcTemplate经典案例
  2. github上星星1万多的python教程推荐收藏
  3. 写出这个数-PTA
  4. 投色子--html demo
  5. NetCore 下使用 DataTable 以及可视化工具
  6. frigate_TUNNEL
  7. python凯撒加密
  8. CAD绘图大师都在用的46组快捷键,高效绘图必备
  9. QT5.5+VS2013编译安装QtCharts (ZZ)
  10. SQLi-LABS Page-3 (Stacked injections) Less-38-Less-45