西天取经意义初探_show concern about

西天取经意义初探_show concern about构建DirectShow应用程序  本章节描述构建DirectShow应用程序所需的头文件和库。WindowsSDK中提供了最新的DirectShow头文件和库。头文件    所有的DirectShow应用程序都需要Dshow.h头文件,一些DirectShow接口可能还需要额外的头文件。库文件    调试版和发布版都是用相同的.lib文件。 F…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

构建DirectShow应用程序

    本章节描述构建DirectShow应用程序所需的头文件和库。Windows SDK中提供了最新的DirectShow头文件和库。

头文件

   西天取经意义初探_show concern about

    所有的DirectShow应用程序都需要Dshow.h头文件,一些DirectShow接口可能还需要额外的头文件。

库文件

   西天取经意义初探_show concern about

   调试版和发布版都是用相同的.lib文件。

 

Filter基类

   Windows SDK为自定义DirectShow Filter提供了一组C++类。这些类是作为示例代码提供的,你也可以将它们编译成静态库。

可重复发布的DLL

   可发布的包包含如下DLL:

    西天取经意义初探_show concern about

     西天取经意义初探_show concern about

 

DirectShow应用程序编程简介

Filters and Filter Graphs

     DirectShow的构建块是一个称为Filter的软件组件。 Filter是对多媒体流执行一些操作的软件组件。例如,DirectShow Filter有如下功能:

     ·读文件

     ·从视频捕捉设备获取视频

     ·解码各种流格式,例如MPEG-1视频

     ·将数据传递给图形或声卡

 

     Filter接收输入并产生输出。例如,如果Filter解码MPEG-1视频,则输入是MPEG编码流,输出是一系列未压缩的视频帧。在DirectShow中,应用程序通过将Filter链连接在一起执行任何任务,以便一个Filter的输出成为另一个Filter的输入。 一组连接的Filter称为Filter Graph。 例如,下图显示了播放AVI文件的Filter Graph。

西天取经意义初探_show concern about

    File Source Filter从硬盘读取AVI文件。AVI Spliter Filter将文件解析为两个流,即压缩视频流和音频流。 AVI解压缩器Filter解码视频帧。 Video Renderer Filter使用DirectDraw或GDI将帧绘制到显示器。默认的DirectSound设备Filter使用DirectSound播放音频流。

   应用程序不必管理所有这些数据流。 相反,这些Filter由名为Filter Graph Manager的高级组件控制。 应用程序进行高级API调用,如“运行”(通过图形移动数据)或“停止”(以停止数据流)。 如果您需要对流操作进行更多控制,则可以通过COM接口直接访问 Filter。 Filter Graph Manager还将事件通知传递给应用程序。

   Filter Graph Manager还提供了另一个用途:它通过将Filter连接在一起,为应用程序提供构建Filter Graph的方法。 

 

编写DirectShow应用程序

    广义而言,任何DirectShow应用程序都必须执行三项任务,如下图:

   西天取经意义初探_show concern about

   1.该应用程序创建一个Filter Graph Manager的实例

   2.应用程序使用Filter Graph Manager来构建过滤器图。

   3.应用程序使用Filter Graph Manager通过Filter控制Filter Graph和流数据。 在整个过程中,应用程序还会响应Filter Graph Manager中的事件。.

   处理完成后,应用程序将释放Filter Graph Manager和所有Filter。DirectShow基于COM; Filter Graph Manager和过滤器都是COM对象。 在开始编程DirectShow之前,您应该对COM客户端编程有一个大体的了解

 

参考:

https://www.yuque.com/docs/share/d9f1e535-6143-4f76-be77-c001d1e32b95

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/182744.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • ASP Session 对象

    ASP Session 对象Session对象用于存储关于某个用户会话(session)的信息,或者修改相关的设置。存储在session对象中的变量掌握着单一用户的信息,同时这些信息对于页面中的所有页面都是可用的。实例设置并返回LCID本例演示”LCID”属性。此属性设置并返回一个指明位置或者地区的整数。类似于日期、时间以及货币等内容都要根据位置或者地区来显示。返回SessionID本例演示”Ses

    2022年7月25日
    5
  • java中calendar类打印日历_输入年份和月份求天数

    java中calendar类打印日历_输入年份和月份求天数题目题目另可表述为:1.输入一个年份和月份,按格式输出此月份的日历2.以如下格式输出一个月份的日历代码实现1.Calendar类的一些说明Calendar类是一个抽象类,不能通过new的方式来获得实例,可以使用类方法getInstance()返回一个Calendar的子类对象.Calendarcalendar=Calendar.getInstance();…

    2025年11月28日
    11
  • java语言的特性有什么

    java语言的特性有什么1.java语言是简单的java语言是和c++语言类似的,其次java中丢弃了c++中一些难理解的特性,比如运算符重载等,java语言不使用指针,并且拥有垃圾回收机制2.java语言是面向对象的java语言提供了类、接口和继承等特性,只支持类之间的单继承,但是支持接口之间的多继承,并且支持类与接口之间的实现机制,而且java是全面支持动态绑定的。3.java语言是分布式的jav…

    2022年7月7日
    25
  • C++字符串流stringstream与string知识介绍与用法小结

    C++字符串流stringstream与string知识介绍与用法小结之前总结了C++的文件输出输入流的相关知识,通过介绍底层的streambuf缓冲区,从而与stringstream流(字符串流)联系了起来,本文就对此进行简单的介绍。首先介绍string。string是C++提供的字符串类,和C类型的字符串相比,除了有不限长度的优点外,还有其他许多方便的功能,其可以看成类似STL里vector数组的一种容器,可以方便的进行数据的增删改查,并可以进行…

    2022年6月10日
    34
  • aliddns ipv6_linux系统下配置阿里DDNS(IPv6)

    aliddns ipv6_linux系统下配置阿里DDNS(IPv6)IPv6日渐完善,家里的宽带和手机也都分配了ipv6全球单播地址,手机分到了/64,宽带更是分到了/56。测试了一下运营商内外的连通性也都还可以,基本能跑满带宽,IPv6终于可以用起来了,个个都是公网,不用再渴求ipv4和搞内网穿透了。适用此教程适用于基于linux的各种系统,ubuntu、centos、openwrt、群晖等等,本文只介绍IPv6,不涉及IPv4。代码aliddnsipv6_a…

    2022年6月12日
    110
  • DHCP协议详解

    DHCP协议详解文章目录什么是DHCPDHCP协议DHCP报文种类DHCP报文格式DHCP工作流程IP地址分配方式租约表工作流程服务器处理流程什么是DHCPDHCP(DynamicHostConfigurationProtocol,动态主机配置协议),前身是BOOTP协议,是一个局域网的网络协议,使用UDP协议工作,统一使用两个IANA分配的端口:67(服务器端),68(客户端)。DHCP通常被用于局…

    2022年5月10日
    58

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号