GraphEdit 的作用和使用

2023-11-09

GraphEdit 是一个用于建立和测试Filter graph 的可视化工具。在DirectX SDK.中附带一个可执行程序版本(在SDK目录中的Bin/DXUtils/graphedt.exe)。你可以快速测试你建立的Filter graph是否达到预期的效果,你也可以查看由另一个程序建立的Filter graph。GraphEdit有标准的Windows用户界面,如图:


 
查看到系统中安装的Filter
使用GraphEdit,可以查看到系统中所有(正常)安装的Filter。执行菜单命令Graph | Insert Filters…,将弹出一个如图的对话框。

提示:

Filter的注册信息通常包括两部分——COM服务器信息和Filter描述信息。前者是必需的,它表明了Filter是一个COM组件;后者不是必需的,不注册也不会妨碍到Filter功能的实现。GraphEdit查看不到没有注册Filter描述信息的Filter。
通常在开发DirectShow应用程序时,注册在“DirectShow Filters”目录下的Filter可以通过指定其CLSID、调用API函数CoCreateInstance来创建。而注册在其他目录(比如“Audio Capture Sources”、“Audio Compressors”、“Video Capture Sources”、“Video Compressors”等)下的Filter,需要通过系统枚举来创建。
 
构建指定文件播放用的Filter Graph
使用GraphEdit,还可以播放媒体文件。构建指定文件播放用的Filter Graph至少有以下4种方法:
(1)执行菜单命令File | Render Media File…,在随后弹出的对话框中选择一个媒体文件。
(2)在文件浏览器中直接将要播放的媒体文件拖到GraphEdit中。
(3)执行菜单命令Graph | Insert Filters…,在“DirectShow Filters”目录下找到“File Source (Async.)”这个Filter并双击插入,在随后弹出的对话框中选择一个媒体文件,然后再在Source Filter的输出Pin上执行鼠标右键菜单项“Render Pin”。
(4)与方法(3)类似,预先插入所有需要的Filter;连接时,在上一级Filter的输出Pin上按下鼠标左键并按住不放,拖动鼠标到下一级Filter的输入Pin上后放开;这样依次连接所有必要的Pin即可。(连接的顺序一般总是从左到右,即从Source Filter连到Renderer Filter。)
构建的Filter Graph典型如图。


 
当Filter Graph构建完成后,就可以进行播放了。执行菜单命令Graph | Play或Pause或Stop;或者直接使用工具条上的播放控制按钮。
用GraphEdit显示应用程序中构建的Filter Graph;

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

GraphEdit 的作用和使用 的相关文章

  • AudioQueueNewInput 回调延迟

    无论我提供的缓冲区大小如何 提供给 AudioQueueNewInput 的回调都会以大致相同的时间间隔发生 例如 如果您有 0 05 秒的缓冲区并以 44k 录制 则回调将在大约 0 09 秒时首次调用 然后在 0 001 秒 之后立即发
  • 如何将 G.726 ADPCM 信号转换为 PCM 信号?

    我通常会使用 SoX 或 Windows 内置的音频库来获取这些内容 但似乎两者都没有 G 726 编解码器 因此 我有一个字节序列 我知道它被编码为 G 726 尽管目前尚不知道比特率以及它是 mu law 还是 A law 实验将确定这
  • d3 树 - 有相同孩子的父母

    我一直在将代码从 JIT 转换为 D3 并使用树布局 我已经复制了代码http mbostock github com d3 talk 20111018 tree html http mbostock github com d3 talk
  • MySQL 错误 1264:列的值超出范围

    As I SETMySQL 中的 cust fax 表如下所示 cust fax integer 10 NOT NULL 然后我插入这样的值 INSERT INTO database values 3172978990 但随后它说 错误 1
  • 用xCode制作图表[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 您好 我需要绘制一些数组来分析信号 我有一个可可项目正在进行 谁能告诉我在哪里可以找到简化这项任务的工具 基本上我想像在图形计算器上一样显
  • 如何使用 Julia 查找矩阵中的连通分量

    假设我有以下矩阵 此处用 Julia 语言定义 mat 1 1 0 0 0 1 1 0 0 0 0 0 0 0 1 0 0 0 1 1 将一组值为 1 的相邻元素视为一个 分量 如何识别该矩阵有 2 个分量以及每个分量由哪些顶点组成 对于矩
  • 如何通过一键或链接切换音频播放()暂停()?

    我有一个在单击锚标记时播放的音频文件 如果再次单击锚标记 我希望音频暂停 我只是对 javascript 了解不够 无法完成后半部分 我不想更改他们单击的锚标记的内容 我只想让音频文件在他们单击标记时启动和暂停 这是我到目前为止所拥有的 它
  • 如何在 Matlab 中对数组应用低通或高通滤波器?

    有没有一种简单的方法可以将低通或高通滤波器应用于 MATLAB 中的数组 我对 MATLAB 的强大功能 或数学的复杂性 有点不知所措 需要一个简单的函数或一些指导 因为我无法从文档或网络搜索中找到答案 看着那 这filter http w
  • 按值数组过滤对象数组中的嵌套数组

    考虑以下对象数组 guid j5Dc9Z courses id 1 name foo guid a5gdfS courses id 2 name bar
  • Woocommerce 获取购物车页面上的特定属性值

    我正在尝试在 woocommerce 购物车页面中获取特定属性值 我在表格中制作了自定义列 如下所示 td class product color td
  • 我会选择什么设备进行语音识别以使用来自计算机的音频?

    我正在尝试使用 Python 3 制作隐藏式字幕生成器 当我打电话时list microphone names 列出了一堆音频源 我应该为计算机发出的音频选择哪个来源 我尝试过使用pocketsphinx https pypi org pr
  • 如何在 C# 中将位图图像转换为黑白图像? [复制]

    这个问题在这里已经有答案了 可能的重复 在 c 中将图像转换为黑白或棕褐色 https stackoverflow com questions 4624998 convert image to black white or sepia in
  • 如何在Android中设置音频均衡器

    我正在制作一个媒体播放器 其中需要使用 搜索栏 将均衡器效果设置为 低音 可怕 摇滚 流行 中 我得到了一个链接 其中使用了一些 NDK 库来执行此操作 是否有任何 Java 库可以执行此操作 请解释执行此操作的逻辑是什么 Override
  • 求 Petersen 子图中的哈密顿路径

    我开始使用 IDE Jupyter Python 3 6 并出现了一个问题 我必须通过IDE绘制Petersen子图中的哈密顿路径 但我不知道该怎么做 我显示有关该图的信息 彼得森图 https en wikipedia org wiki
  • 如何在声音输入时触发振动?

    我正在尝试创建一个 Android 应用程序 在其中过滤蜂鸣声的一个特定频率并使手机振动 我正在从移动设备的 MIC 获取输入并使用 MediaRecorder 类 通过使用该类 我可以录制 保存和播放输入 现在我需要我的手机在发出蜂鸣声
  • 如何在 Twitter 中获取性别和年龄图表?

    我必须在 Twitter 上显示性别和年龄图表 就像 Facebook 人口统计图一样 附上这个 是否可以根据关注者数量使用 oauth 或 api 从 Twitter 获取性别和年龄数据 提前致谢 根据 Twitter 员工 episod
  • 如何组合过滤条件

    过滤器类函数接受一个条件 a gt Bool 并在过滤时应用它 当您有多个条件时 使用过滤器的最佳方法是什么 使用了应用函数 liftA2 而不是 liftM2 因为出于某种原因我不明白 liftM2 在纯代码中如何工作 liftM2 组合
  • 在 Raspberry Pi 4 上的多个输出设备上播放多个 mp3 文件

    我需要 4 8 个同时播放立体声音频音乐频道 连续播放 SD 卡上特定文件夹中的 mp3 音乐 Working 板载 3 5 音频插孔 USB声卡正常播放音乐 Problem 但一旦我尝试在树莓派上使用带有 USB 声卡的第三个音频输出 其
  • 保存录制的 AVAudioRecorder 声音文件:现在怎么办? (iOS、Xcode 4)

    在我的应用程序中 我希望用户能够录制一个声音文件并播放它 然后保存该声音文件以供以后使用 我用了本教程 http www techotopia com index php Recording Audio on an iPhone with
  • RegisterGlobalFilters 的目的是什么?

    在 MVC3 中 我以这种方式启用了 CustomErrors

随机推荐

  • 毕业设计 - 基于stm32的示波器设计

    文章目录 1 简介 2 主要器件 3 实现效果 4 设计原理 5 部分实现代码 6 最后 1 简介 Hi 大家好 今天向大家介绍一个学长做的单片机项目 基于stm32的示波器设计 大家可用于 课程设计 或 毕业设计 2 主要器件 3 实现效
  • 别了 摩托罗拉

    别了 摩托罗拉 仅仅在10年前 摩托罗拉还一直是引领尖端技术和卓越典范的代表 享有着全球最受尊敬公司之一的尊崇地位 它一度前无古人地每隔10年便开创一个工业 有的10年还开创两个 但当这些工业兴盛起来 进入寡头竞争的成熟阶段之后 它却遭遇一
  • Postman工具——环境变量与全局变量

    转载请注明出处 http blog csdn net water 0815 article details 53326990 本文同步发表于我的微信公众号和简书社区 微信公众号 惜福 xifu forever 扫一扫文章底部的二维码即可关注
  • 使用popen实现system函数功能

    之前写Linux应用程序的时候 最喜欢使用system命令了 后来发现这个命令使用需要很谨慎 之前使用该命令来进行MD5校验 通过返回值来判断校验是否成功不够严谨 有时候因为system调用MD5sum文件不存在导致的错误 应用并不能够直观
  • LeetCode 200. 岛屿数量(C++)

    题目地址 力扣 思路 我们从题目中可以得知 孤立的岛屿旁边全是海 假设岛屿范围内每一个 1 是岛屿的一部分 那么我们从岛屿的任意一部分登岛 走遍岛屿的每一块土地 就能确定岛屿的大小和范围 为了找遍所有的岛屿 我们还需要把走过的土地都标记为0
  • 音频常见问题总结

    音频文件在播放时出现断断续续或类似 爆破 Pop Click 杂音的现象 称之为 Xrun 可以是 underrun 也可以是 overrun 原因 通常来说 出现 Xrun 问题时原因可能是以下几个之一 1 Linux CFS 调度器导致
  • el-select下拉框多选远程搜索反显

  • 若依框架前端打包踩坑

    官网 http www ruoyi vip 目录 一 下载并运行项目 二 关于 若依 接口地址配置 2 1 若依的跨域代理介绍 2 2 配置跨域代理 调用后台接口 2 2 1 配置 后台 ip 地址 2 2 2 页面报 系统接口404 错误
  • 创宇技能表_[OPEN]知道创宇研发技能表

    HI 今天夜里 我们开放知道创宇的研发技能表 这个Checklist里大体总结了在知道创宇做研发工作所需具备的技能 包括我们的安全研究员 这份技能表给出了许多的 点 而 面 需要靠自己 否则如何证明自己具备牛逼的学习能力 技能都样样掌握好的
  • base64图片互转

    String a base substring base indexOf 1 GenerateImage a D 1 jpg public static void main String args throws IOException St
  • 使用Nginx发布Vue应用

    使用Nginx发布Vue应用 本教程将指导你如何使用Nginx来发布Vue应用 Nginx是一个高性能的开源Web服务器 可以用于部署静态网页 反向代理和负载均衡等 Vue是一个流行的JavaScript框架 用于构建现代化的单页面应用 步
  • [人工智能-综述-1]:人工智能系统架构

    作者主页 文火冰糖的硅基工坊 文火冰糖 王文兵 的博客 文火冰糖的硅基工坊 CSDN博客 本文网址 人工智能 综述 1 人工智能系统架构 文火冰糖 王文兵 的博客 CSDN博客 人工智能系统的技术架构 目录 第1部分 什么是人工智能 1 1
  • VLC Activex控件(VideoLAN.VLCPlugin.1 VideoLAN.VLCPlugin.2)的所有方法 属性及使用 在一个老外的网站上找到的...

    无意中在老外的网站上发现了关于VideoLAN VLCPlugin 1和VideoLAN VLCPlugin 2所有方法和属性 公布出来 以免大家浪费时间去寻找 注意你使用的VLC的版本 If you open a link to a vi
  • 构建配置ESP8266 MQTT服务器

    我们将了解ESP8266模块如何通过消息队列遥测传输 MQTT 相互通信 MQTT术语 已经使用了诸如中央代理 主题 发布 订阅之类的术语 因此现在该用类似于邮局的方式来解释它们了 消息是报纸或杂志 代理 这是一个接收客户端消息的软件应用程
  • 数字保留有效数字_分析化学有效数字问题

    一 有效数字位数 1 非整数数据 有效数字为从左端开始首个非零数字算起 至右端最后一个数字 例如 0 0518有3位有效数字 0 05180有4位有效数字 同时注意 在用科学记数法表示数字时 有效数字位数不变 例如 0 05180改写为 2
  • SpringMVC+Freemarker+jQuery实现多语言(国际化)切换

    一 spring启动配置文件修改 其中
  • cuda与driver对应版本

    CUDA Toolkit Toolkit Driver Version Linux x86 64 Driver Version Windows x86 64 Driver Version CUDA 11 4 Update 1 gt 470
  • 数据结构-带头节点的单链表(C语言)超详细讲解

    前面我们学到线性表的顺序存储结构 顺序表 发现它有着明显的缺点 插入和删除元素时需要频繁的移动元素 运算效率低 必须按事先估计的最大元素个数申请连续的存储空间 存储空间估计大了 造成浪费空间 估计小了 容易产生溢出 空间难以扩大 采用链式存
  • 每天Leetcode 刷题 初级算法篇-杨辉三角

    题目要求 力扣题解 代码 import java util ArrayList import java util List program mydemo description this is a class author Mr zeng
  • GraphEdit 的作用和使用

    GraphEdit 是一个用于建立和测试Filter graph 的可视化工具 在DirectX SDK 中附带一个可执行程序版本 在SDK目录中的Bin DXUtils graphedt exe 你可以快速测试你建立的Filter gra