亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? vmr9.idl

?? vc6.0完整版
?? IDL
?? 第 1 頁 / 共 3 頁
字號:
///////////////////////////////////////////////////////////////////////////////
//
// Public Interfaces for the DX9 Video Mixing Renderer DShow filter
//
// Copyright (c) 1999 - 2002, Microsoft Corporation.  All rights reserved.
///////////////////////////////////////////////////////////////////////////////

import "unknwn.idl";


cpp_quote("#if 0")
// This is temporary work around to persuade
// MIDL to allow forward declarations.
typedef DWORD           IDirect3DDevice9;
typedef DWORD           IDirect3DSurface9;
typedef DWORD           D3DFORMAT;
typedef DWORD           D3DCOLOR;
typedef DWORD           D3DPOOL;
typedef LONGLONG        REFERENCE_TIME;
typedef DWORD*          HMONITOR;
typedef struct {DWORD dw1; DWORD dw2;} AM_MEDIA_TYPE;
cpp_quote ("#endif")


// public interfaces supported by the VMR9

interface IVMRSurface9;

interface IVMRSurfaceAllocator9;
interface IVMRSurfaceAllocatorNotify9;
interface IVMRImagePresenter9;
interface IVMRImagePresenterConfig9;
interface IVMRMonitorConfig9;
interface IVMRWindowlessControl9;

interface IVMRMixerControl9;
interface IVMRImageCompositor9;
interface IVMRMixerBitmap9;


interface IVMRFilterConfig9;
interface IVMRAspectRatioControl9;
interface IVMRVideoStreamControl9;




///////////////////////////////////////////////////////////////////////////////
//
// Allocator Presenter interfaces
//
///////////////////////////////////////////////////////////////////////////////



//=====================================================================
//
// IVMRImagePresenter9
//
//=====================================================================
typedef enum {
    VMR9Sample_SyncPoint       = 0x00000001,
    VMR9Sample_Preroll         = 0x00000002,
    VMR9Sample_Discontinuity   = 0x00000004,
    VMR9Sample_TimeValid       = 0x00000008,
} VMR9PresentationFlags;


typedef struct _VMR9PresentationInfo {
    DWORD                   dwFlags;
    IDirect3DSurface9*      lpSurf;
    REFERENCE_TIME          rtStart;
    REFERENCE_TIME          rtEnd;
    SIZE                    szAspectRatio;
    RECT                    rcSrc;
    RECT                    rcDst;
    DWORD                   dwReserved1;
    DWORD                   dwReserved2;
} VMR9PresentationInfo;

[
    local,
    object,
    local,
    uuid(69188c61-12a3-40f0-8ffc-342e7b433fd7),
    helpstring("IVMRImagePresenter9 Interface"),
    pointer_default(unique)
]
interface IVMRImagePresenter9 : IUnknown
{
    HRESULT StartPresenting(
        [in] DWORD_PTR dwUserID
        );

    HRESULT StopPresenting(
        [in] DWORD_PTR dwUserID
        );

    HRESULT PresentImage(
        [in] DWORD_PTR dwUserID,
        [in] VMR9PresentationInfo* lpPresInfo
        );
};


//=====================================================================
//
// IVMRSurfaceAllocator
//
//=====================================================================
typedef enum {
    // surface types/usage
    VMR9AllocFlag_3DRenderTarget        = 0x0001,
    VMR9AllocFlag_DXVATarget            = 0x0002,

    //
    // VMR9AllocFlag_TextureSurface can be combined with
    // DXVATarget and 3DRenderTarget
    //
    VMR9AllocFlag_TextureSurface        = 0x0004,
    VMR9AllocFlag_OffscreenSurface      = 0x0008,
    VMR9AllocFlag_UsageReserved         = 0x00F0,
    VMR9AllocFlag_UsageMask             = 0x00FF

    // surface
} VMR9SurfaceAllocationFlags;


typedef struct _VMR9AllocationInfo {
    DWORD                   dwFlags;    // see VMR9SurfaceAllocationFlags
    DWORD                   dwWidth;
    DWORD                   dwHeight;
    D3DFORMAT               Format;     // 0 means use a format compatible with the display
    D3DPOOL                 Pool;
    DWORD                   MinBuffers;
    SIZE                    szAspectRatio;
    SIZE                    szNativeSize;
} VMR9AllocationInfo;

[
    local,
    object,
    local,
    uuid(8d5148ea-3f5d-46cf-9df1-d1b896eedb1f),
    helpstring("IVMRSurfaceAllocator9 Interface"),
    pointer_default(unique)
]
interface IVMRSurfaceAllocator9 : IUnknown
{
    HRESULT InitializeDevice(
        [in] DWORD_PTR dwUserID,
        [in] VMR9AllocationInfo* lpAllocInfo,
        [in, out] DWORD* lpNumBuffers
        );

    HRESULT TerminateDevice(
        [in] DWORD_PTR dwID
        );

    HRESULT GetSurface(
        [in] DWORD_PTR dwUserID,
        [in] DWORD SurfaceIndex,
        [in] DWORD SurfaceFlags,
        [out] IDirect3DSurface9** lplpSurface
        );

    HRESULT AdviseNotify(
        [in] IVMRSurfaceAllocatorNotify9* lpIVMRSurfAllocNotify
        );
};


//=====================================================================
//
// IVMRSurfaceAllocatorNotify9
//
//=====================================================================
[
    local,
    object,
    local,
    uuid(dca3f5df-bb3a-4d03-bd81-84614bfbfa0c),
    helpstring("IVMRSurfaceAllocatorNotify9 Interface"),
    pointer_default(unique)
]
interface IVMRSurfaceAllocatorNotify9 : IUnknown
{
    HRESULT AdviseSurfaceAllocator(
        [in] DWORD_PTR dwUserID,
        [in] IVMRSurfaceAllocator9* lpIVRMSurfaceAllocator
        );

    HRESULT SetD3DDevice(
        [in] IDirect3DDevice9* lpD3DDevice,
        [in] HMONITOR hMonitor
        );

    HRESULT ChangeD3DDevice(
        [in] IDirect3DDevice9* lpD3DDevice,
        [in] HMONITOR hMonitor
        );

    HRESULT AllocateSurfaceHelper(
        [in] VMR9AllocationInfo* lpAllocInfo,
        [in, out] DWORD* lpNumBuffers,
        [out] IDirect3DSurface9** lplpSurface
        );

    HRESULT NotifyEvent(
        [in] LONG EventCode,
        [in] LONG_PTR Param1,
        [in] LONG_PTR Param2
        );
};



///////////////////////////////////////////////////////////////////////////////
//
// Application control and configuration interfaces
//
///////////////////////////////////////////////////////////////////////////////


//=====================================================================
//
// IVMRWindowlessControl9
//
//=====================================================================
typedef enum {
    VMR9ARMode_None,
    VMR9ARMode_LetterBox
} VMR9AspectRatioMode;

[
    local,
    object,
    local,
    uuid(8f537d09-f85e-4414-b23b-502e54c79927),
    helpstring("IVMRWindowlessControl Interface"),
    pointer_default(unique)
]
interface IVMRWindowlessControl9 : IUnknown
{
    //
    //////////////////////////////////////////////////////////
    // Video size and position information
    //////////////////////////////////////////////////////////
    //
    HRESULT GetNativeVideoSize(
        [out] LONG* lpWidth,
        [out] LONG* lpHeight,
        [out] LONG* lpARWidth,
        [out] LONG* lpARHeight
        );

    HRESULT GetMinIdealVideoSize(
        [out] LONG* lpWidth,
        [out] LONG* lpHeight
        );

    HRESULT GetMaxIdealVideoSize(
        [out] LONG* lpWidth,
        [out] LONG* lpHeight
        );

    HRESULT SetVideoPosition(
        [in] const LPRECT lpSRCRect,
        [in] const LPRECT lpDSTRect
        );

    HRESULT GetVideoPosition(
        [out] LPRECT lpSRCRect,
        [out] LPRECT lpDSTRect
        );

    HRESULT GetAspectRatioMode(
        [out] DWORD* lpAspectRatioMode
        );

    HRESULT SetAspectRatioMode(
        [in] DWORD AspectRatioMode
        );

    //
    //////////////////////////////////////////////////////////
    // Display and clipping management
    //////////////////////////////////////////////////////////
    //
    HRESULT SetVideoClippingWindow(
        [in] HWND hwnd
        );

    HRESULT RepaintVideo(
        [in] HWND hwnd,
        [in] HDC hdc
        );

    HRESULT DisplayModeChanged();


    //
    //////////////////////////////////////////////////////////
    // GetCurrentImage
    //
    // Returns the current image being displayed.  This images
    // is returned in the form of packed Windows DIB.
    //
    // GetCurrentImage can be called at any time, also
    // the caller is responsible for free the returned memory
    // by calling CoTaskMemFree.
    //
    // Excessive use of this function will degrade video
    // playback performed.
    //////////////////////////////////////////////////////////
    //
    HRESULT GetCurrentImage(
        [out] BYTE** lpDib
        );

    //
    //////////////////////////////////////////////////////////
    // Border Color control
    //
    // The border color is color used to fill any area of the
    // the destination rectangle that does not contain video.
    // It is typically used in two instances.  When the video
    // straddles two monitors and when the VMR is trying
    // to maintain the aspect ratio of the movies by letter
    // boxing the video to fit within the specified destination
    // rectangle. See SetAspectRatioMode above.
    //////////////////////////////////////////////////////////
    //
    HRESULT SetBorderColor(
        [in] COLORREF Clr
        );

    HRESULT GetBorderColor(
        [out] COLORREF* lpClr
        );
};



//=====================================================================
//
// IVMRMixerControl9
//

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
麻豆一区二区三| 精品视频在线免费| 国产精品18久久久久| 蜜桃av一区二区三区电影| 日本欧美久久久久免费播放网| 亚洲自拍另类综合| 亚洲一二三四久久| 亚洲国产精品视频| 日韩专区在线视频| 日本91福利区| 久久国产精品99久久人人澡| 久久91精品久久久久久秒播| 激情五月婷婷综合| 成人永久看片免费视频天堂| 丁香婷婷深情五月亚洲| 国产99精品国产| 91丨九色丨国产丨porny| 91麻豆国产福利精品| 欧美亚洲国产一区二区三区| 欧美日韩成人在线| 日韩欧美久久一区| 日本一区二区电影| 亚洲日本免费电影| 日韩福利电影在线| 国产精品自拍网站| 91在线观看地址| 欧美高清性hdvideosex| 欧美草草影院在线视频| 久久精品在线免费观看| 亚洲欧美影音先锋| 婷婷久久综合九色国产成人| 美国欧美日韩国产在线播放 | www.欧美.com| 在线观看日产精品| 欧美一激情一区二区三区| 国产亚洲一区二区三区四区| 一区在线播放视频| 石原莉奈在线亚洲三区| 国内精品国产三级国产a久久 | 精品欧美久久久| 久久综合资源网| 亚洲色图欧洲色图婷婷| 日韩精品福利网| 成人一级片网址| 欧美蜜桃一区二区三区| 国产日韩三级在线| 亚洲福利视频一区| 国产成人一区二区精品非洲| 欧美性一级生活| 欧美精品一区二区在线播放| **性色生活片久久毛片| 免费观看成人鲁鲁鲁鲁鲁视频| 国产99久久久国产精品免费看| 欧美人牲a欧美精品| 国产片一区二区| 日本一区中文字幕| 91丨porny丨在线| 日韩欧美中文字幕公布| 亚洲欧美日韩小说| 国产一区二区导航在线播放| 欧美三区在线视频| 国产精品国产三级国产a | 欧美视频一二三区| 久久精品一区四区| 青青草97国产精品免费观看 | 亚洲欧美偷拍另类a∨色屁股| 久久国产人妖系列| 欧美亚洲禁片免费| 国产精品传媒视频| 国产一区二区不卡在线| 91精品国模一区二区三区| 亚洲另类春色校园小说| 国产成人亚洲精品狼色在线| 日韩一级二级三级精品视频| 亚洲综合免费观看高清完整版在线| 精油按摩中文字幕久久| 欧美日韩高清一区二区| 亚洲欧美一区二区三区极速播放 | 经典三级在线一区| 欧美裸体bbwbbwbbw| 亚洲欧洲国产日本综合| 国产精品一区不卡| 日韩精品一区二区三区四区视频 | 丁香六月综合激情| 精品少妇一区二区三区日产乱码 | 欧美日韩aaaaaa| 亚洲精品国久久99热| 成人免费视频视频| 久久免费偷拍视频| 国产综合久久久久久鬼色| 日韩女优电影在线观看| 天堂蜜桃91精品| 欧美色视频一区| 一区二区三区免费在线观看| 白白色 亚洲乱淫| 国产精品视频在线看| 国产成人精品免费| 久久久久久久免费视频了| 久久66热偷产精品| 欧美成人一级视频| 美女国产一区二区三区| 日韩美女视频在线| 男人的天堂久久精品| 91精品国产入口| 青青草97国产精品免费观看无弹窗版| 制服丝袜中文字幕亚洲| 日韩国产成人精品| 日韩你懂的在线观看| 久久国产尿小便嘘嘘尿| 26uuu国产一区二区三区| 国产一区不卡在线| 国产日韩欧美高清| 97久久久精品综合88久久| 中文字幕一区视频| 91麻豆高清视频| 亚洲成人av在线电影| 日韩一二三四区| 国产成人av电影免费在线观看| 国产视频视频一区| caoporen国产精品视频| 亚洲免费看黄网站| 欧美日韩精品一区二区三区蜜桃| 日日夜夜精品视频免费| 欧美va日韩va| 成人少妇影院yyyy| 亚洲综合久久久久| 欧美成人乱码一区二区三区| 国产麻豆精品theporn| 一区在线播放视频| 欧美色大人视频| 激情综合一区二区三区| 欧美国产成人在线| 欧美午夜理伦三级在线观看| 青草av.久久免费一区| 欧美国产日本视频| 欧美日韩日日骚| 国产一区二区三区在线观看免费 | 欧美精品一级二级三级| 久久99精品视频| 国产精品国产三级国产a | 亚洲欧美一区二区三区极速播放 | 中文字幕欧美一| 欧美精品一卡二卡| 国产成人免费av在线| 亚洲愉拍自拍另类高清精品| 欧美zozozo| 一本一道久久a久久精品综合蜜臀| 丝袜国产日韩另类美女| 国产调教视频一区| 欧美另类videos死尸| 岛国一区二区三区| 日本sm残虐另类| 亚洲欧美视频在线观看视频| 日韩精品一区二区三区中文精品| 99久久婷婷国产综合精品| 日本成人中文字幕| 亚洲欧美一区二区视频| 日韩免费看的电影| 一本大道av伊人久久综合| 精品亚洲成av人在线观看| 亚洲一区二区在线播放相泽| 国产亚洲一二三区| 91麻豆精品国产91久久久使用方法 | 午夜国产不卡在线观看视频| 国产女人aaa级久久久级 | 天天色综合天天| 国产精品理论片| 欧美一区二区福利视频| 99久久精品情趣| 韩国成人在线视频| 日日夜夜免费精品视频| 中文字幕亚洲精品在线观看| 精品久久久久一区| 欧美老女人第四色| 色8久久人人97超碰香蕉987| 国产高清精品网站| 免费xxxx性欧美18vr| 亚洲综合久久久| 亚洲免费观看在线视频| 国产精品午夜久久| 久久你懂得1024| 日韩欧美激情一区| 91精品国产91热久久久做人人| 在线观看视频一区| 91网站在线观看视频| 国产福利一区在线观看| 精油按摩中文字幕久久| 天堂成人国产精品一区| 一区二区三区高清不卡| 中文字幕在线不卡国产视频| 国产亚洲综合性久久久影院| 日韩一本二本av| 欧美一级片在线| 911精品国产一区二区在线| 欧美少妇一区二区| 91豆麻精品91久久久久久| 94-欧美-setu| 91亚洲精品久久久蜜桃| 99久久精品国产导航| 97se亚洲国产综合自在线观|