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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? capmain.h

?? 一個視頻采集驅動程序的源代碼
?? H
?? 第 1 頁 / 共 2 頁
字號:
//==========================================================================;
//
//  THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
//  KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
//  IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR
//  PURPOSE.
//
//  Copyright (c) 1992 - 1999  Microsoft Corporation.  All Rights Reserved.
//
//==========================================================================;

#ifndef __CAPMAIN_H__
#define __CAPMAIN_H__

#ifdef __cplusplus
extern "C" {
#endif // __cplusplus

// ------------------------------------------------------------------------
// The master list of all streams supported by this driver
// ------------------------------------------------------------------------

// Warning:  The stream numbers below MUST be the same as its position
//           in the Streams[] array in the capstrm.h file.
typedef enum {
    STREAM_Capture = 0,
    STREAM_Preview,
    STREAM_VBI,
    STREAM_CC,
    STREAM_NABTS,
    STREAM_AnalogVideoInput,
    MAX_TESTCAP_STREAMS         // This entry MUST be last; it's the size
}; 

// ------------------------------------------------------------------------
//  Other misc stuff
// ------------------------------------------------------------------------

#ifndef FIELDOFFSET
#define FIELDOFFSET(type, field)        ((LONG_PTR)(&((type *)1)->field)-1)
#endif

#ifndef mmioFOURCC    
#define mmioFOURCC( ch0, ch1, ch2, ch3 )                \
        ( (DWORD)(BYTE)(ch0) | ( (DWORD)(BYTE)(ch1) << 8 ) |    \
        ( (DWORD)(BYTE)(ch2) << 16 ) | ( (DWORD)(BYTE)(ch3) << 24 ) )
#endif
  
#define FOURCC_YUV422       mmioFOURCC('U', 'Y', 'V', 'Y')

typedef struct _STREAMX;
typedef struct _STREAMX *PSTREAMX;

typedef struct _COMPRESSION_SETTINGS {
    LONG                     CompressionKeyFrameRate;
    LONG                     CompressionPFramesPerKeyFrame;
    LONG                     CompressionQuality;
} COMPRESSION_SETTINGS, *PCOMPRESSION_SETTINGS;

//
// definition of the full HW device extension structure This is the structure
// that will be allocated in HW_INITIALIZATION by the stream class driver
// Any information that is used in processing a device request (as opposed to
// a STREAM based request) should be in this structure.  A pointer to this
// structure will be passed in all requests to the minidriver. (See
// HW_STREAM_REQUEST_BLOCK in STRMINI.H)
//

typedef struct _HW_DEVICE_EXTENSION {
    PULONG                   ioBaseLocal;                           // board base address
    USHORT                   Irq;                                   // IRQ level
    BOOLEAN                  IRQExpected;                           // IRQ expected
    PSTREAMX                 pStrmEx [MAX_TESTCAP_STREAMS];         // Pointers to each stream
    UINT                     ActualInstances [MAX_TESTCAP_STREAMS]; // Counter of instances per stream
    PDEVICE_OBJECT           PDO;                                   // Physical Device Object
    DEVICE_POWER_STATE       DeviceState;                           // D0 ... D3

    // Spinlock and Queue for the Adapter
    BOOL                     AdapterQueueInitialized;               // Stays TRUE after first init
    KSPIN_LOCK               AdapterSpinLock;                       // Multiprocessor safe access to AdapterSRBList
    LIST_ENTRY               AdapterSRBList;                        // List of pending adapter commands
    BOOL                     ProcessingAdapterSRB;                  // Master flag which prevents reentry

    // Spinlocks and Queues for each data stream
    LIST_ENTRY               StreamSRBList[MAX_TESTCAP_STREAMS];    // List of pending read requests
    KSPIN_LOCK               StreamSRBSpinLock[MAX_TESTCAP_STREAMS];// Multiprocessor safe access to StreamSRBList
    int                      StreamSRBListSize[MAX_TESTCAP_STREAMS];// Number of entries in the list

    // Control Queues for each data stream
    LIST_ENTRY               StreamControlSRBList[MAX_TESTCAP_STREAMS];
    BOOL                     ProcessingControlSRB[MAX_TESTCAP_STREAMS];

    // Unique identifier for the analog video input pin
    KSPIN_MEDIUM             AnalogVideoInputMedium;
    UINT                     DriverMediumInstanceCount;             // Unique Medium.Id for multiple cards

    // Crossbar settings
    LONG                     VideoInputConnected;                   // which input is the video out connected to?
    LONG                     AudioInputConnected;                   // which input is the audio out connected to?

    // TV Tuner settings
    ULONG                    TunerMode;                 // TV, FM, AM, ATSC
    ULONG                    Frequency;
    ULONG                    VideoStandard;
    ULONG                    TuningQuality;
    ULONG                    TunerInput;
    ULONG                    Country;
    ULONG                    Channel;
    ULONG                    Busy;

    // TV Audio settings
    ULONG                    TVAudioMode;

    // VideoProcAmp settings
    LONG                     Brightness;
    LONG                     BrightnessFlags;
    LONG                     Contrast;
    LONG                     ContrastFlags;
    LONG                     ColorEnable;
    LONG                     ColorEnableFlags;
    
    // CameraControl settings
    LONG                     Focus;
    LONG                     FocusFlags;
    LONG                     Zoom;
    LONG                     ZoomFlags;
    
    // AnalogVideoDecoder settings
    LONG                     VideoDecoderVideoStandard;
    LONG                     VideoDecoderOutputEnable;
    LONG                     VideoDecoderVCRTiming;

    // VideoControl settings (these are set if a pin is not opened,
    // otherwise, the STREAMEX values are used.
    LONG                     VideoControlMode;

    // Compressor settings (these are set if a pin is not opened,
    // otherwise, the STREAMEX values are used.
    COMPRESSION_SETTINGS     CompressionSettings;

    // Channel Change information
    KS_TVTUNER_CHANGE_INFO   TVTunerChangeInfo;

    // Bits indicating protection status; eg, has Macrovision been detected?
    ULONG                    ProtectionStatus;

} HW_DEVICE_EXTENSION, *PHW_DEVICE_EXTENSION;

//
// this structure is our per stream extension structure.  This stores
// information that is relevant on a per stream basis.  Whenever a new stream
// is opened, the stream class driver will allocate whatever extension size
// is specified in the HwInitData.PerStreamExtensionSize.
//
 
typedef struct _STREAMEX {
    PHW_DEVICE_EXTENSION        pHwDevExt;          // For timer use
    PHW_STREAM_OBJECT           pStreamObject;      // For timer use
    KS_VIDEOINFOHEADER         *pVideoInfoHeader;   // format (variable size!)
    KS_DATARANGE_VIDEO_VBI     *pVBIStreamFormat;
    KS_FRAME_INFO               FrameInfo;          // PictureNumber, etc.
    KS_VBI_FRAME_INFO           VBIFrameInfo;       // PictureNumber, etc.
    ULONG                       fDiscontinuity;     // Discontinuity since last valid
    KSSTATE                     KSState;            // Run, Stop, Pause
    UCHAR                       LineBuffer[720 * 3];// working buffer (RGB24)

    // Clock 
    HANDLE                      hMasterClock;       // Master clock to use
    REFERENCE_TIME              QST_Now;            // KeQuerySystemTime currently
    REFERENCE_TIME              QST_NextFrame;      // When to capture the next frame
    REFERENCE_TIME              QST_StreamTime;     // Stream time reported by master clock

    REFERENCE_TIME              AvgTimePerFrame;    // Extracted from pVideoInfoHeader

    // Compressor settings (note these are duplicated in the 
    // HW_DEVICE_EXTENSION to allow setting these before a pin is created)
    COMPRESSION_SETTINGS        CompressionSettings;

    // VideoControl settings (note these are duplicated in the 
    // HW_DEVICE_EXTENSION to allow setting these before a pin is created)
    LONG                        VideoControlMode;

    // Kernel DDraw interface
    BOOL                        KernelDirectDrawRegistered;
    HANDLE                      UserDirectDrawHandle;       // DD itself
    HANDLE                      KernelDirectDrawHandle;
    BOOL                        PreEventOccurred;
    BOOL                        PostEventOccurred;

    BOOL                        SentVBIInfoHeader;
} STREAMEX, *PSTREAMEX;

//
// this structure defines the per request extension.  It defines any storage
// space that the mini driver may need in each request packet.
//

typedef struct _SRB_EXTENSION {
    LIST_ENTRY                  ListEntry;
    PHW_STREAM_REQUEST_BLOCK    pSrb;
    HANDLE                      UserSurfaceHandle;      // DDraw
    HANDLE                      KernelSurfaceHandle;    // DDraw
} SRB_EXTENSION, * PSRB_EXTENSION;

// -------------------------------------------------------------------
//
// Adapter level prototypes
//
// These functions affect the device as a whole, as opposed to 
// affecting individual streams.
//
// -------------------------------------------------------------------

//
// DriverEntry:
//
// This routine is called when the mini driver is first loaded.  The driver
// should then call the StreamClassRegisterAdapter function to register with
// the stream class driver
//

ULONG DriverEntry (PVOID Context1, PVOID Context2);

//
// This routine is called by the stream class driver with configuration
// information for an adapter that the mini driver should load on.  The mini
// driver should still perform a small verification to determine that the
// adapter is present at the specified addresses, but should not attempt to
// find an adapter as it would have with previous NT miniports.
//
// All initialization of the adapter should also be performed at this time.
//

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
色综合久久久久综合体桃花网| 免费欧美高清视频| 久久久蜜臀国产一区二区| 91精品国产综合久久久久久漫画 | 91视频观看视频| 国产91丝袜在线播放| 国产一区美女在线| 国产91在线|亚洲| 粉嫩高潮美女一区二区三区| 99热在这里有精品免费| 91在线精品秘密一区二区| 91在线免费视频观看| 91成人免费在线视频| 欧美日韩一区二区三区四区| 69av一区二区三区| 精品国产1区二区| 国产精品视频第一区| 亚洲伦理在线精品| 日韩精品乱码av一区二区| 蜜桃在线一区二区三区| 国产91精品精华液一区二区三区| 不卡一区中文字幕| 欧美亚洲日本国产| 精品国产一区二区三区四区四| 国产午夜精品一区二区三区四区| 国产精品不卡在线| 石原莉奈一区二区三区在线观看 | 久久久久综合网| 国产精品美女久久福利网站| 亚洲线精品一区二区三区八戒| 日韩激情一二三区| 福利视频网站一区二区三区| 欧洲色大大久久| 久久精品一区二区三区四区| 有码一区二区三区| 国内精品视频666| 在线视频你懂得一区二区三区| 欧美变态tickle挠乳网站| 日韩美女视频一区| 老鸭窝一区二区久久精品| 99久久国产综合精品色伊| 日韩精品一区二区三区中文不卡 | 亚洲综合一区二区三区| 国产在线视频一区二区| 欧美性感一区二区三区| 国产欧美日韩精品在线| 免费一区二区视频| 欧美色图免费看| 国产精品视频免费看| 精品综合免费视频观看| 欧美三级日韩在线| 日韩一区在线播放| 国内不卡的二区三区中文字幕| 欧美综合一区二区三区| 国产精品久久夜| 国产一区999| 欧美不卡一区二区三区| 国产成人免费视频| 日韩午夜在线影院| 午夜影视日本亚洲欧洲精品| 9色porny自拍视频一区二区| 久久久久亚洲蜜桃| 蜜臀久久久久久久| 在线电影欧美成精品| 亚洲一区在线播放| 欧美这里有精品| 亚洲综合久久av| 一本久道久久综合中文字幕| 亚洲国产成人一区二区三区| 精品一区二区久久久| 欧美一区二区三区啪啪| 日本不卡高清视频| 欧美一区二区在线免费播放| 无码av免费一区二区三区试看| 欧美日韩综合色| 性做久久久久久久久| 欧美一区午夜视频在线观看| 香蕉乱码成人久久天堂爱免费| 欧美日韩国产不卡| 亚洲国产精品久久艾草纯爱| 欧美视频一区二| 亚洲国产精品久久久男人的天堂| 欧美日韩久久不卡| 日日摸夜夜添夜夜添国产精品| 欧美久久一区二区| 精品一区二区在线视频| 欧美大白屁股肥臀xxxxxx| 精品在线免费观看| 久久免费偷拍视频| av电影一区二区| 亚洲图片一区二区| 欧美一区二区视频在线观看2022 | 91久久线看在观草草青青| 亚洲精品国产a久久久久久| 中文字幕亚洲视频| 色综合久久久久综合| 亚洲第一成年网| 精品国产精品一区二区夜夜嗨| 国产成人免费视频一区| 一区二区三区日韩欧美精品| 欧美日韩国产综合视频在线观看 | 久久久777精品电影网影网| 成人毛片视频在线观看| 亚洲激情一二三区| 欧美成人福利视频| caoporn国产一区二区| 舔着乳尖日韩一区| 国产午夜精品久久久久久久 | 99久久久国产精品免费蜜臀| 亚洲一二三四在线| 精品精品欲导航| 91蝌蚪porny| 久久 天天综合| 亚洲激情网站免费观看| 欧美精品一区二区三区四区 | 久久人人爽爽爽人久久久| 99国产精品国产精品久久| 日韩在线a电影| 国产精品久久久久7777按摩| 在线不卡中文字幕播放| 不卡一二三区首页| 精品在线观看视频| 一区二区高清视频在线观看| 久久久久久久精| 制服.丝袜.亚洲.中文.综合| av日韩在线网站| 国产在线视频不卡二| 亚洲一区二区中文在线| 日韩一区在线看| 久久免费的精品国产v∧| 欧美老人xxxx18| 日本高清视频一区二区| 国产ts人妖一区二区| 九色综合国产一区二区三区| 亚洲地区一二三色| 亚洲色图.com| 亚洲欧洲国产日韩| 国产精品美女一区二区| 久久久蜜桃精品| 久久综合色播五月| 日韩久久久久久| 日韩欧美一区二区三区在线| 欧美人动与zoxxxx乱| 91久久精品国产91性色tv| 91免费观看国产| av爱爱亚洲一区| 高清国产一区二区| 国产91精品一区二区麻豆网站| 国产成人亚洲综合a∨婷婷| 韩国精品一区二区| 激情综合色播激情啊| 麻豆久久一区二区| 极品美女销魂一区二区三区| 蜜臀av一区二区在线免费观看| 蜜桃视频免费观看一区| 免费观看成人av| 九一九一国产精品| 国产一区二区三区久久久| 国产一区二区三区免费播放| 国产精品一区二区三区四区| 国产乱子伦一区二区三区国色天香| 韩国三级在线一区| 国产成人综合自拍| 丁香桃色午夜亚洲一区二区三区| 不卡一卡二卡三乱码免费网站| av午夜一区麻豆| 在线观看日韩高清av| 欧美日韩黄色影视| 欧美变态口味重另类| 日本一区二区视频在线| 国产精品国产馆在线真实露脸| 亚洲精品福利视频网站| 丝袜国产日韩另类美女| 国内一区二区在线| 东方欧美亚洲色图在线| 欧美吻胸吃奶大尺度电影| 欧美一级欧美一级在线播放| 久久免费偷拍视频| 亚洲免费观看视频| 日本一区中文字幕| 国产精品自产自拍| 一本到不卡精品视频在线观看| 91精品综合久久久久久| 国产欧美一区二区三区网站| 成人性视频网站| 欧美在线|欧美| 久久久国产精品午夜一区ai换脸| 亚洲男同1069视频| 久久99精品国产.久久久久| 91麻豆免费看片| 欧美一区二区精品| 精品一区二区三区的国产在线播放| 4438成人网| 国产精品天天摸av网| 亚洲第一狼人社区| 成人在线综合网| 欧美精品丝袜中出| 亚洲人成网站精品片在线观看| 久久电影网电视剧免费观看| 91丨九色丨蝌蚪富婆spa|