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

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

?? vfw.pas

?? delphi video for windows 實現控件
?? PAS
?? 第 1 頁 / 共 5 頁
字號:
    ): BOOL; stdcall;

{-- DrawDibUpdate() - redraw last image (may only be valid with DDF_BUFFER) --}

function    DrawDibUpdate(hdd: HDRAWDIB; hdc: HDC; x, y: int): BOOL;

{-- DrawDibEnd() -------------------------------------------------------------}

function    DrawDibEnd(hdd: HDRAWDIB): BOOL; stdcall;

{-- DrawDibTime() - for debugging purposes only ------------------------------}

type
    PDRAWDIBTIME        = ^TDRAWDIBTIME;
    TDRAWDIBTIME        = record
        timeCount       : DWORD;
        timeDraw        : DWORD;
        timeDecompress  : DWORD;
        timeDither      : DWORD;
        timeStretch     : DWORD;
        timeBlt         : DWORD;
        timeSetDIBits   : DWORD;
    end;

function    DrawDibTime(hdd: HDRAWDIB; lpddtime: PDRAWDIBTIME): BOOL; stdcall;

{-- Display profiling --------------------------------------------------------}

const
    PD_CAN_DRAW_DIB             = $0001;    // if you can draw at all
    PD_CAN_STRETCHDIB           = $0002;    // basicly RC_STRETCHDIB
    PD_STRETCHDIB_1_1_OK        = $0004;    // is it fast?
    PD_STRETCHDIB_1_2_OK        = $0008;    // ...
    PD_STRETCHDIB_1_N_OK        = $0010;    // ...

function    DrawDibProfileDisplay(lpbi: PBITMAPINFOHEADER): DWORD; stdcall;

{== AVIFMT - AVI file format definitions =====================================}

//
// The following is a short description of the AVI file format.  Please
// see the accompanying documentation for a full explanation.
//
// An AVI file is the following RIFF form:
//
//  RIFF('AVI' 
//        LIST('hdrl'
//          avih(<MainAVIHeader>)
//                  LIST ('strl'
//                      strh(<Stream header>)
//                      strf(<Stream format>)
//                      ... additional header data
//            LIST('movi'    
//            { LIST('rec' 
//                    SubChunk...
//                 )
//                | SubChunk } ....
//            )
//            [ <AVIIndex> ]
//      )
//
//  The main file header specifies how many streams are present.  For
//  each one, there must be a stream header chunk and a stream format
//  chunk, enlosed in a 'strl' LIST chunk.  The 'strf' chunk contains
//  type-specific format information; for a video stream, this should
//  be a BITMAPINFO structure, including palette.  For an audio stream,
//  this should be a WAVEFORMAT (or PCMWAVEFORMAT) structure.
//
//  The actual data is contained in subchunks within the 'movi' LIST 
//  chunk.  The first two characters of each data chunk are the
//  stream number with which that data is associated.
//
//  Some defined chunk types:
//           Video Streams:
//                  ##db:   RGB DIB bits
//                  ##dc:   RLE8 compressed DIB bits
//                  ##pc:   Palette Change
//
//           Audio Streams:
//                  ##wb:   waveform audio bytes
//
// The grouping into LIST 'rec' chunks implies only that the contents of
//   the chunk should be read into memory at the same time.  This
//   grouping is used for files specifically intended to be played from 
//   CD-ROM.
//
// The index chunk at the end of the file should contain one entry for 
//   each data chunk in the file.
//
// Limitations for the current software:
//  Only one video stream and one audio stream are allowed.
//  The streams must start at the beginning of the file.
//
//
// To register codec types please obtain a copy of the Multimedia
// Developer Registration Kit from:
//
//  Microsoft Corporation
//  Multimedia Systems Group
//  Product Marketing
//  One Microsoft Way
//  Redmond, WA 98052-6399
//

{-- form types, list types and chunk types -----------------------------------}

const
    formtypeAVI                 = $20495641; // mmioFOURCC('A', 'V', 'I', ' ')
    listtypeAVIHEADER           = $6C726468; // mmioFOURCC('h', 'd', 'r', 'l')
    ckidAVIMAINHDR              = $68697661; // mmioFOURCC('a', 'v', 'i', 'h')
    listtypeSTREAMHEADER        = $6C727473; // mmioFOURCC('s', 't', 'r', 'l')
    ckidSTREAMHEADER            = $68727473; // mmioFOURCC('s', 't', 'r', 'h')
    ckidSTREAMFORMAT            = $66727473; // mmioFOURCC('s', 't', 'r', 'f')
    ckidSTREAMHANDLERDATA       = $64727473; // mmioFOURCC('s', 't', 'r', 'd')
    ckidSTREAMNAME              = $6E727473; // mmioFOURCC('s', 't', 'r', 'n')

    listtypeAVIMOVIE            = $69766F6D; // mmioFOURCC('m', 'o', 'v', 'i')
    listtypeAVIRECORD           = $20636572; // mmioFOURCC('r', 'e', 'c', ' ')

    ckidAVINEWINDEX             = $31786469; // mmioFOURCC('i', 'd', 'x', '1')

{-- Stream types for the <fccType> field of the stream header ----------------}

    streamtypeVIDEO             = $73646976; // mmioFOURCC('v', 'i', 'd', 's')
    streamtypeAUDIO             = $73647561; // mmioFOURCC('a', 'u', 'd', 's')
    streamtypeMIDI              = $7364696D; // mmioFOURCC('m', 'i', 'd', 's')
    streamtypeTEXT              = $73747874; // mmioFOURCC('t', 'x', 't', 's')

{-- Basic chunk types --------------------------------------------------------}

    cktypeDIBbits               = $6264; // aviTWOCC('d', 'b')
    cktypeDIBcompressed         = $6364; // aviTWOCC('d', 'c')
    cktypePALchange             = $6370; // aviTWOCC('p', 'c')
    cktypeWAVEbytes             = $6277; // aviTWOCC('w', 'b')

{-- Chunk id to use for extra chunks for padding -----------------------------}

    ckidAVIPADDING              = $4B4E554A; // mmioFOURCC('J', 'U', 'N', 'K')

{== Useful macros ============================================================}

{-- Macro to get stream number out of a FOURCC ckid --------------------------}

function    FromHex(n: BYTE): BYTE;
function    StreamFromFOURCC(fcc: DWORD): BYTE;

{-- Macro to get TWOCC chunk type out of a FOURCC ckid -----------------------}

function    TWOCCFromFOURCC(fcc: DWORD): WORD;

{-- Macro to make a ckid for a chunk out of a TWOCC and a stream num (0-255) -}

function    ToHex(n: BYTE): BYTE;
function    MAKEAVICKID(tcc: WORD; stream: BYTE): DWORD;

{-- Main AVI file header -----------------------------------------------------}

{-- flags for use in <dwFlags> in AVIFileHdr ---------------------------------}

const
    AVIF_HASINDEX               = $00000010;    // Index at end of file?
    AVIF_MUSTUSEINDEX           = $00000020;
    AVIF_ISINTERLEAVED          = $00000100;
    AVIF_TRUSTCKTYPE            = $00000800;    // Use CKType to find key frames?
    AVIF_WASCAPTUREFILE         = $00010000;
    AVIF_COPYRIGHTED            = $00020000;

{-- The AVI File Header LIST chunk should be padded to this size -------------}

const
    AVI_HEADERSIZE              = 2048;         // size of AVI header list

type
    PMainAVIHeader              = ^TMainAVIHeader;
    TMainAVIHeader              = record
        dwMicroSecPerFrame      : DWORD;        // frame display rate (or 0L)
        dwMaxBytesPerSec        : DWORD;        // max. transfer rate
        dwPaddingGranularity    : DWORD;        // pad to multiples of this
                                                // size; normally 2K.
        dwFlags                 : DWORD;        // the ever-present flags
        dwTotalFrames           : DWORD;        // # frames in file
        dwInitialFrames         : DWORD;
        dwStreams               : DWORD;
        dwSuggestedBufferSize   : DWORD;

        dwWidth                 : DWORD;
        dwHeight                : DWORD;

        dwReserved              : array[0..3] of DWORD;
    end;

{-- Stream header ------------------------------------------------------------}

const
    AVISF_DISABLED              = $00000001;

    AVISF_VIDEO_PALCHANGES      = $00010000;

type
    PAVIStreamHeader            = ^TAVIStreamHeader;
    TAVIStreamHeader            = record
        fccType                 : FOURCC;
        fccHandler              : FOURCC;
        dwFlags                 : DWORD;        // Contains AVITF_* flags
        wPriority               : WORD;
        wLanguage               : WORD;
        dwInitialFrames         : DWORD;
        dwScale                 : DWORD;
        dwRate                  : DWORD;        // dwRate / dwScale == samples/second
        dwStart                 : DWORD;
        dwLength                : DWORD;        // In units above...
        dwSuggestedBufferSize   : DWORD;
        dwQuality               : DWORD;
        dwSampleSize            : DWORD;
        rcFrame                 : TRECT;
    end;

{-- Flags for index ----------------------------------------------------------}

const
    AVIIF_NOTIME                = $00000100;    // this frame doesn't take any time
    AVIIF_COMPUSE               = $0FFF0000;    // these bits are for compressor use

type
    PAVIINDEXENTRY              = ^TAVIINDEXENTRY;
    TAVIINDEXENTRY              = record
        ckid                    : DWORD;
        dwFlags                 : DWORD;
        dwChunkOffset           : DWORD;        // Position of chunk
        dwChunkLength           : DWORD;        // Length of chunk
    end;

{-- Palette change chunk (used in video streams) -----------------------------}

    PAVIPALCHANGE               = ^TAVIPALCHANGE;
    TAVIPALCHANGE               = record
        bFirstEntry             : BYTE;         // first entry to change
        bNumEntries             : BYTE;         // # entries to change (0 if 256)
        wFlags                  : WORD;         // Mostly to preserve alignment...
        // peNew                : array[0..-1] of PALETTEENTRY ;
                                                // New color specifications
    end;

{== AVIFile - routines for reading/writing standard AVI files ================}

//
// Ansi - Unicode thunking.
//
// Unicode or Ansi-only apps can call the avifile APIs.
// any Win32 app who wants to use
// any of the AVI COM interfaces must be UNICODE - the AVISTREAMINFO and
// AVIFILEINFO structures used in the Info methods of these interfaces are
// the unicode variants, and no thunking to or from ansi takes place
// except in the AVIFILE api entrypoints.
//
// For Ansi/Unicode thunking: for each entrypoint or structure that
// uses chars or strings, two versions are declared in the Win32 version,
// ApiNameW and ApiNameA. The default name ApiName is #defined to one or
// other of these depending on whether UNICODE is defined (during
// compilation of the app that is including this header). The source will
// contain ApiName and ApiNameA (with ApiName being the Win16 implementation,
// and also #defined to ApiNameW, and ApiNameA being the thunk entrypoint).
//

// For GetFrame::SetFormat - use the best format for the display

const
    AVIGETFRAMEF_BESTDISPLAYFMT = 1;

//
// Structures used by AVIStreamInfo & AVIFileInfo.
//
// These are related to, but not identical to, the header chunks
// in an AVI file.
//

{-- AVISTREAMINFO ------------------------------------------------------------}

// for Unicode/Ansi thunking we need to declare three versions of this!

type
    PAVISTREAMINFOW             = ^TAVISTREAMINFOW;
    TAVISTREAMINFOW             = record
        fccType                 : DWORD;
        fccHandler              : DWORD;
        dwFlags                 : DWORD;        // Contains AVITF_* flags
        dwCaps                  : DWORD;
        wPriority               : WORD;
        wLanguage               : WORD;
        dwScale                 : DWORD;
        dwRate                  : DWORD;        // dwRate / dwScale == samples/second
        dwStart                 : DWORD;
        dwLength                : DWORD;        // In units above...
        dwInitialFrames         : DWORD;
        dwSuggestedBufferSize   : DWORD;
        dwQuality               : DWORD;
        dwSampleSize            : DWORD;
        rcFrame                 : TRECT ;
        dwEditCount             : DWORD;
        dwFormatChangeCount     : DWORD;
        szName                  : array[0..63] of WideChar;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品美女在线观看| 在线电影欧美成精品| 久久99精品久久久久婷婷| 一区二区高清视频在线观看| 亚洲日本在线a| 国产精品久久久久久久久果冻传媒 | 欧美日韩亚洲另类| 在线区一区二视频| 色先锋aa成人| 精品视频免费看| 欧美日韩成人综合| 日韩情涩欧美日韩视频| 欧美mv和日韩mv的网站| 久久久一区二区| 国产欧美日韩视频在线观看| 884aa四虎影成人精品一区| 日韩亚洲欧美在线| 欧美成人乱码一区二区三区| 久久先锋影音av| 中文字幕中文字幕一区| 亚洲午夜久久久久久久久电影网 | 亚洲一区二区三区视频在线| 亚洲最大成人综合| 青青草91视频| 成人午夜在线播放| 欧美亚洲日本国产| 久久久亚洲高清| 一区二区三区四区蜜桃| 免费欧美日韩国产三级电影| 国产麻豆视频一区二区| 91成人免费在线| 久久亚洲春色中文字幕久久久| 亚洲女爱视频在线| 久久av老司机精品网站导航| 不卡一区二区三区四区| 欧美日韩1区2区| 久久久久青草大香线综合精品| 亚洲精品欧美专区| 国精产品一区一区三区mba桃花 | 欧美成人vr18sexvr| 亚洲欧美激情一区二区| 国模冰冰炮一区二区| 精品视频1区2区| 久久精品亚洲精品国产欧美kt∨| 亚洲一区二区三区中文字幕在线| 精品一区二区三区影院在线午夜| 91久久精品网| 中文久久乱码一区二区| 精品一区二区免费看| 欧美日韩在线一区二区| 中文字幕免费不卡| 久久国产精品72免费观看| 日本伦理一区二区| 国产精品高潮呻吟| 国产精品影音先锋| 欧美电影免费提供在线观看| 亚洲精品视频一区| av成人免费在线观看| 久久久精品免费观看| 精品制服美女丁香| 日韩一级二级三级精品视频| 性久久久久久久| 欧美亚洲国产一区二区三区va| 亚洲欧洲av在线| 成人av集中营| 国产精品福利影院| 大胆欧美人体老妇| 欧美极品aⅴ影院| 成人精品gif动图一区| 久久你懂得1024| 极品少妇一区二区三区精品视频 | 国产精品欧美一级免费| 国产激情91久久精品导航| 日韩欧美一区在线| 日韩成人免费电影| 制服丝袜av成人在线看| 亚洲成人自拍网| 7777精品伊人久久久大香线蕉的| 天天av天天翘天天综合网| 日本高清不卡一区| 亚洲成人黄色小说| 欧美一区二区三区在线观看| 日本成人在线电影网| 欧美成人一区二区三区| 国产精品自拍毛片| 中文字幕中文字幕中文字幕亚洲无线 | 玖玖九九国产精品| 欧美精品一区二区久久久| 国产麻豆精品视频| 中文字幕在线播放不卡一区| 在线亚洲高清视频| 日韩国产在线一| 久久久精品国产免大香伊| 粉嫩一区二区三区性色av| 亚洲人成网站在线| 欧美精品色综合| 久久精品国产精品亚洲综合| 中文字幕第一区二区| 欧洲精品中文字幕| 老司机一区二区| 国产精品女人毛片| 欧美日韩另类一区| 国产丶欧美丶日本不卡视频| 亚洲激情成人在线| 欧美tickle裸体挠脚心vk| 99久久夜色精品国产网站| 日韩影院在线观看| 欧美国产综合色视频| 8v天堂国产在线一区二区| 国产成人精品免费| 亚洲国产视频a| wwwwxxxxx欧美| 欧美午夜电影在线播放| 国产乱码一区二区三区| 亚洲一区免费在线观看| 久久九九影视网| 欧美老女人第四色| 99久久精品费精品国产一区二区| 日韩国产高清在线| 亚洲男人的天堂网| 久久精品人人做人人综合| 欧美日韩免费在线视频| 丰满少妇在线播放bd日韩电影| 亚洲18色成人| 亚洲欧美日韩一区| 中文字幕乱码日本亚洲一区二区 | 久久综合久久综合久久综合| 91啪九色porn原创视频在线观看| 日本伊人色综合网| 亚洲制服丝袜av| 最新中文字幕一区二区三区| 2017欧美狠狠色| 制服丝袜av成人在线看| 欧美在线免费播放| 91黄视频在线| 99在线精品观看| 成人av在线资源| 国产成人99久久亚洲综合精品| 日本不卡高清视频| 午夜精品免费在线| 一区二区中文视频| 国产精品麻豆99久久久久久| 欧美激情综合五月色丁香小说| 精品国产一区二区精华| 欧美一区二区视频在线观看2020| 欧美午夜免费电影| 欧美日韩国产片| 欧美午夜精品久久久久久孕妇| 欧美亚洲高清一区| 91九色最新地址| 欧美性色欧美a在线播放| 欧美亚洲国产一区在线观看网站| 在线一区二区视频| 欧美色网一区二区| 91麻豆精品国产91久久久使用方法| 欧美日韩aaa| 日韩丝袜美女视频| 久久视频一区二区| 久久精品日韩一区二区三区| 国产精品丝袜在线| 亚洲男帅同性gay1069| 亚洲国产精品一区二区www在线| 一区二区三区日本| 日本欧美韩国一区三区| 激情综合色综合久久| 国产69精品一区二区亚洲孕妇| www.亚洲国产| 欧美日韩中文字幕精品| 欧美一级日韩免费不卡| 久久亚区不卡日本| 国产精品久久精品日日| 亚洲精品五月天| 免费观看日韩av| 国产高清成人在线| 色综合咪咪久久| 7777精品伊人久久久大香线蕉完整版 | 欧美性受xxxx黑人xyx性爽| 日本道精品一区二区三区| 欧美在线影院一区二区| 欧美成人一区二区三区在线观看 | 亚洲在线一区二区三区| 人人爽香蕉精品| 国产高清不卡一区| 欧美怡红院视频| 国产亚洲欧美日韩日本| 亚洲最新视频在线播放| 国产精品综合在线视频| 色综合久久综合| 精品国产一区二区国模嫣然| 亚洲激情五月婷婷| 中文字幕第一页久久| 亚洲国产精品一区二区尤物区| 国产剧情一区二区| 欧美日韩在线播放一区| 久久综合色播五月| 亚洲丶国产丶欧美一区二区三区| 国产成人av自拍| 欧美肥胖老妇做爰| 亚洲欧美日韩人成在线播放| 激情丁香综合五月|