⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 graphrebuildhelper.h

📁 mysee网络直播源代码Mysee Lite是Mysee独立研发的网络视频流媒体播放系统。在应有了P2P技术和一系列先进流媒体技术之后
💻 H
字号:
#pragma once

///这是一个为了重建图而写的简单的帮助器
/*
    目前它使用IGraphBuilder来重建一个连接。
    每个对象只能被使用一次,因此,如果要重连接多个pin,请产生多个相应的对象
*/
class GraphRebuildHelper
{
public:
    GraphRebuildHelper(void);

    ///控制图的起停
    HRESULT rungraph(IFilterGraph *_igraph);
    HRESULT stopgraph(IFilterGraph *_igraph);

    ///建造函数
    /*
        这个函数将source filter的某个pin和已在图中的对应的render filter (视频或音频)用智能连接方式重新连接起来
    param   _ipin: filter的pin
            _isaudio: 指定音频还是视频,以决定和哪个render filter连接
    */
    HRESULT startbuilding(IFilterGraph *_igraph, CBasePin *_ipin, bool _isaudio);
    ~GraphRebuildHelper(void);

private:
    void reset();

    bool get_render_filters (bool _isaudio, IFilterGraph *p_graph);
    bool get_render_pin();

    bool used;
    IBaseFilter *p_render_filter;
    IPin *p_pin;
};

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -