DirectShow Win32汇编工程 正式启动 (不断完善中.....)

目的:通过汇编,较轻易的调用DirectShow接口,实现多媒体播放器...

 

;//------------------------------------------------------------------------------
;//

;// By G-Spider   2010
;//
;// Copyright (c) 2010 - 2010.  All rights reserved.
;//------------------------------------------------------------------------------

CLSID_FilterGraph GUID <0e436ebb3h, 524fh, 11ceh, <9fh, 53h, 00h, 20h, 0afh, 0bh, 0a7h, 70h>>;//uuids.h 

IID_IGraphBuilder GUID <56a868a9h, 0ad4h, 11ceh, <0b0h, 3ah, 00h, 20h, 0afh, 0bh, 0a7h ,70h>> ;//strmif.h 创建DirectShow Graph

IID_IMediaControl GUID <56a868b1h, 0ad4h, 11ceh, <0b0h, 3ah, 00h, 20h, 0afh, 0bh, 0a7h, 70h>>;//control.h 获取IMediaControl 接口

IID_IMediaSeeking GUID <36b73880h, 0c2c8h, 11cfh, <8bh, 46h, 00h, 80h, 5fh, 6ch, 0efh, 60h>> ;//strmif.h 获取IMediaSeeking 接口

IID_IBasicAudio   GUID <56a868b3h, 0ad4h, 11ceh, <0b0h, 3ah, 00h, 20h, 0afh, 0bh, 0a7h, 70h>>;//control.h 获取IBasicAudio 接口

IID_IVideoWindow  GUID <56a868b4h, 0ad4h, 11ceh, <0b0h, 3ah, 00h, 20h, 0afh, 0bh, 0a7h, 70h>>;//control.h 获取IVideowindow 接口

pcomethod1    TYPEDEF PROTO :DWORD
pcomethod2    TYPEDEF PROTO :DWORD, :DWORD
pcomethod3    TYPEDEF PROTO :DWORD, :DWORD, :DWORD
pcomethod4    TYPEDEF PROTO :DWORD, :DWORD, :DWORD, :DWORD
pcomethod5    TYPEDEF PROTO :DWORD, :DWORD, :DWORD, :DWORD , :DWORD
pcomethod6    TYPEDEF PROTO :DWORD, :DWORD, :DWORD, :DWORD , :DWORD ,:DWORD
pcomethod7    TYPEDEF PROTO :DWORD, :DWORD, :DWORD, :DWORD , :DWORD ,:DWORD ,:DWORD
pcomethod8    TYPEDEF PROTO :DWORD, :DWORD, :DWORD, :DWORD , :DWORD ,:DWORD ,:DWORD ,:DWORD
pcomethod9    TYPEDEF PROTO :DWORD, :DWORD, :DWORD, :DWORD , :DWORD ,:DWORD ,:DWORD ,:DWORD ,:DWORD


comethod1    TYPEDEF PTR pcomethod1
comethod2    TYPEDEF PTR pcomethod2
comethod3    TYPEDEF PTR pcomethod3
comethod4    TYPEDEF PTR pcomethod4
comethod5    TYPEDEF PTR pcomethod5
comethod6    TYPEDEF PTR pcomethod6
comethod7    TYPEDEF PTR pcomethod7
comethod8    TYPEDEF PTR pcomethod8
comethod9    TYPEDEF PTR pcomethod9

;-----------------------------------------------------------------
;-----------------------------------------------------------------
IUnknown                STRUCT
    QueryInterface                  comethod3 ?
    AddRef                          comethod1 ?
    Release                         comethod1 ?
IUnknown                ENDS
;-----------------------------------------------------------------
IGraphBuilderVtbl       STRUCT
        ; IUnknown methods
        Unknown                         IUnknown  <>  
        ; IGraphBuilder methods
        AddFilter                       comethod3 ?
        RemoveFilter                    comethod2 ?
        EnumFilters                     comethod2 ?
        FindFilterByName                comethod3 ?
        ConnectDirect                   comethod4 ?       
        Reconnect                       comethod2 ?
        Disconnect                      comethod2 ?
        SetDefaultSyncSource            comethod1 ?
        Connect                         comethod3 ?
        Render                          comethod2 ?       
        RenderFile                      comethod3 ?
        AddSourceFilter                 comethod4 ?
        SetLogFile                      comethod2 ?
        Abort                           comethod1 ?
        ShouldOperationContinue         comethod1 ?
IGraphBuilderVtbl       ENDS

IGraphBuilder           STRUCT
        lpVtbl                          DWORD   ?;->IGraphBuilderVtbl 
IGraphBuilder           ENDS
;-----------------------------------------------------------------
IMediaControlVtbl       STRUCT
        ; IUnknown methods
        Unknown                         IUnknown  <>  
        ; IMediaControlVtbl methods
        GetTypeInfoCount                comethod2 ?
        GetTypeInfo                     comethod4 ?
        GetIDsOfNames                   comethod6 ?
        _Invoke                         comethod9 ?
        Run                             comethod1 ?
        _Pause                          comethod1 ?
        Stop                            comethod1 ?
        GetState                        comethod3 ?       
        RenderFile                      comethod2 ?
        AddSourceFilter                 comethod3 ?
        get_FilterCollection            comethod2 ?
        get_RegFilterCollection         comethod2 ?
        StopWhenReady                   comethod1 ?
IMediaControlVtbl       ENDS

IMediaControl           STRUCT
        lpVtbl                          DWORD   ?;->IMediaControlVtbl 
IMediaControl           ENDS
;-----------------------------------------------------------------

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值