`
isiqi
  • 浏览: 16332792 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

在程序中设置 Video Capture Source 的 Pin 属性

UP 
阅读更多

DShow从WDM驱动程序自动生成的Video Capture Source Filter有一个Pin Property Page,想必各位高手都知道并且见过。这个Pin Property Page里面可以设定帧率、镜头分辨率等设置。

我想问的是,难道不能从程序里设定帧率,和镜头分辨率吗?

当然可以通过程序来设置:用IAMStreamConfig::SetFormat。

首先你获得你想要设置的Pin的IPin指针;然后QueryInterface得到IAMStreamConfig接口,通过这个接口就可以设置了。你可以参考一下AMCap例子,里面有使用IAMStreamConfig接口的演示。

陆老师说得太好了!
完全就那么回事!

给段代码给你参考:

分享到:
评论

相关推荐

    使用DShow采集图像并预览

    2. 添加Source Filter:接下来,添加一个Source Filter,通常是Video Capture Device Filter,用于从硬件设备(如摄像头)捕获视频流。 3. 配置Capture Filter:配置Capture Filter的属性,如分辨率、帧率等,以...

    利用DriectShow开发的小程序

    在这个“利用DriectShow开发的小程序”中,作者通过DirectShow实现了对摄像头的操作,如预览、抓图、保存和播放,这些都是多媒体应用的基本功能。 首先,我们来了解一下DirectShow的核心概念。DirectShow基于COM...

    DirectShow系统

    在本文中,我们将深入探讨DirectShow的核心概念、架构以及如何利用它来开发应用程序。 一、DirectShow概述 DirectShow是Windows平台上一个基于组件的对象模型,它提供了丰富的接口和类库,使得开发者可以轻松处理...

    c#下使用Directshow进行图像采集

    3. **设置Video Capture Filter**:我们需要找到捕获过滤器中的视频输入pin,然后连接到一个Video Renderer。可以使用`ICaptureGraphBuilder2`接口的`RenderStream`方法来自动完成这个过程。 4. **处理视频流**:...

    directshow 源代码

    4. **Pin Connection**: 在Filters之间进行数据传输的接口,分为输入Pin和输出Pin。它们负责连接不同滤波器,形成数据流路径。 5. **Media Types**: 定义了数据流的格式,如分辨率、帧率、编码方式等。Filters之间...

    DirectShow视频监控编程很有用的类

    DirectShow提供了Video Capture Filter用于获取来自摄像头或其他视频输入设备的数据。这个滤镜通常包含两个pin:一个是接收视频数据的Input Pin,另一个是输出到后续处理链路的Output Pin。开发者需要配置设备参数,...

    Dshow播放过程中实现抓图的方法.rar_DShow_抓图

    在这个图中,Source Filter负责提供媒体数据,Transform Filters进行数据转换,而Renderer Filter则将数据呈现到屏幕或输出设备。 在DShow中实现抓图,我们可以利用Sample Grabber过滤器。Sample Grabber过滤器是...

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

    4. **添加Source Filter**: 使用`CoCreateInstance`函数创建并添加视频源过滤器,如File Source(GraphEdit中的"CLSID_VideoCaptureDevice"),用于读取视频文件。 5. **添加Lav Filter**: 接下来,你需要手动添加...

    DirectShow视频预览

    在摄像头预览场景中,通常包括Source Filter(如Video Capture Device Filter,用于获取摄像头输入)、Filter Graph Manager(管理整个图的构建和运行)、Transformer Filters(如解码器)以及Renderer Filter(如...

    test2_DirectShow_

    3. **Filters类型**:包括Source Filters(源过滤器),如Video Capture Filter,用于获取媒体数据;Decoder Filters(解码过滤器),用于将编码的媒体数据转换为原始格式;Renderer Filters(渲染过滤器),如Video...

    avi视频提取贞图像

    pBuild->RenderStream(&PIN_CATEGORY_CAPTURE, &MEDIATYPE_Video, pSource, pGrabber, pRenderer); // 启动 pGraph->Run(); // 在SampleGrabber的回调函数中处理帧数据并保存 ``` 4. **注意事项** - 需要处理...

    VC通过DirectShow进行视频预览和捕获

    对于预览,可以使用Video Capture设备的系统提供的Source Filter;对于捕获,需要选择合适的捕获设备,如Webcam或DV摄像机。 4. **添加视频渲染滤镜**: 视频渲染滤镜负责将视频数据显示在屏幕上,如Default Video...

    directshow的视频会议程序

    在这个视频会议程序中,可能包含以下关键组件: 1. **捕获滤镜**:用于获取来自摄像头和麦克风的原始音视频数据,例如Video Capture Filter和Audio Input Filter。 2. **编码滤镜**:对捕获的数据进行编码,以便在...

    C#打开笔记本摄像头

    在C#编程环境中,打开笔记本摄像头涉及到多媒体编程和设备访问的知识。C#本身并不直接提供摄像头操作的原生支持,但可以通过使用Windows API或者.NET Framework的类库来实现这一功能。下面将详细介绍如何在C#中打开...

    directshow视频采集

    2. **设备枚举**:使用ICreateDevEnum接口枚举系统中的所有视频采集设备,然后根据需要选择合适的设备创建Video Capture Filter。 3. **图表构建**:创建所需的过滤器(如Smart Tee Filter和Video Renderer Filter)...

    视频捕获 directshow pc

    CoCreateInstance(CLSID_VideoCaptureFilter, NULL, CLSCTX_INPROC_SERVER, IID_IBaseFilter, (void**)&pSource); pGraph->AddFilter(pSource, L"Camera Source"); // 添加视频渲染过滤器 CoCreateInstance...

    编写C++程序使DirectShow进行视频捕捉

    在C++中利用DirectShow进行视频捕捉涉及到一系列的步骤和技术,DirectShow是微软提供的一套强大的多媒体处理框架,它建立在ActiveMovie和Video for Windows之上,以COM组件模型为基础,支持实时流媒体处理,包括视频...

    Directshow_SDK笔记

    - **创建项目**: 在 Visual Studio 中创建新的 Win32 控制台应用程序项目。 ##### 2.2 DShow 示例代码分析 - **示例程序**: 分析一个简单的 DirectShow 示例程序,了解如何创建图形(graph)、连接滤镜(filter)、...

    C# directicshow应用

    这涉及到VideoCaptureDevice和AudioCaptureDevice类,以及相关的过滤器如Source Filter和Renderer Filter。 7. **事件处理**:DirectShow支持事件驱动编程,通过注册事件回调函数,可以响应如播放开始、结束、错误...

Global site tag (gtag.js) - Google Analytics