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

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

?? dspack.pas

?? P2P即時通訊源碼(DELPHI編寫)
?? PAS
?? 第 1 頁 / 共 4 頁
字號:

    (*********************************************************************
     *  DSPack 2.3.3                                                     *
     *                                                                   *
     *  home page : http://www.progdigy.com                              *
     *  email     : hgourvest@progdigy.com                               *
     *   Thanks to Michael Andersen. (DSVideoWindowEx)                   *
     *                                                                   *
     *  date      : 2003-09-08                                           *
     *                                                                   *
     *  The contents of this file are used with permission, subject to   *
     *  the Mozilla Public License Version 1.1 (the "License"); you may  *
     *  not use this file except in compliance with the License. You may *
     *  obtain a copy of the License at                                  *
     *  http://www.mozilla.org/MPL/MPL-1.1.html                          *
     *                                                                   *
     *  Software distributed under the License is distributed on an      *
     *  "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or   *
     *  implied. See the License for the specific language governing     *
     *  rights and limitations under the License.                        *
     *                                                                   *
     *  Contributor(s)                                                   *
     *    Peter J. Haas     <DSPack@pjh2.de>                             *
     *    Andriy Nevhasymyy <a.n@email.com>                              *
     *    Milenko Mitrovic  <dcoder@dsp-worx.de>                         *
     *    Michael Andersen  <michael@mechdata.dk>                        *
     *    Martin Offenwanger <coder@dsplayer.de>                         *
     *                                                                   *
     *********************************************************************)

{
  @abstract(DSPack Components.)
  @author(Henri Gourvest: hgourvest@progdigy.com)
  @created(Mar 14, 2002)
  @lastmod(Oct 24, 2003)
}
{$I jedi.inc}
{$IFDEF COMPILER6_UP}
  {$WARN SYMBOL_DEPRECATED OFF}
{$ENDIF}
{$IFDEF COMPILER7_UP}
  {$WARN SYMBOL_DEPRECATED OFF}
  {$WARN UNSAFE_CODE OFF}
  {$WARN UNSAFE_TYPE OFF}
  {$WARN UNSAFE_CAST OFF}
{$ENDIF}
{$ALIGN ON}
{$MINENUMSIZE 4}

unit DSPack;

interface
uses
  Windows, Classes, SysUtils, Messages, Graphics, Forms, Controls, ActiveX, DirectShow9,
  DirectDraw, DSUtil, ComCtrls, MMSystem, Math, Consts, ExtCtrls,
  MultiMon, Dialogs, Registry, SyncObjs, Direct3D9, WMF9;

const
  { Filter Graph message identifier. }
  WM_GRAPHNOTIFY = WM_APP + 1;
  { Sample Grabber message identifier. }
  WM_CAPTURE_BITMAP = WM_APP + 2;

type

  { Video mode to use with @link(TVideoWindow). }
  TVideoMode = (
    vmNormal,
    vmVMR
  );

  { Graph Mode to use with @link(TFilterGraph).}
  TGraphMode = (
    gmNormal,
    gmCapture,
    gmDVD
  );

  { Render device returned by then OnGraphVMRRenderDevice event. }
{$IFDEF VER140}
  TVMRRenderDevice = (
    rdOverlay = 1,
    rdVidMem  = 2,
    rdSysMem  = 4
  );
{$ELSE}
  TVMRRenderDevice = Integer;
  const
    rdOverlay = 1;
    rdVidMem  = 2;
    rdSysMem  = 4;
type
{$ENDIF}

  {@exclude}
  TGraphState = (
    gsUninitialized,
    gsStopped,
    gsPaused,
    gsPlaying
  );

  { Specifies the seeking capabilities of a media stream. }
  TSeekingCap = (
    CanSeekAbsolute,   // The stream can seek to an absolute position.
    CanSeekForwards,   // The stream can seek forward.
    CanSeekBackwards,  // The stream can seek backward.
    CanGetCurrentPos,  // The stream can report its current position.
    CanGetStopPos,     // The stream can report its stop position.
    CanGetDuration,    // The stream can report its duration.
    CanPlayBackwards,  // The stream can play backward.
    CanDoSegments,     // The stream can do seamless looping (see IMediaSeeking.SetPositions).
    Source             // Reserved.
  );
  { Specifies the seeking capabilities of a media stream. }
  TSeekingCaps = set of TSeekingCap;

  { Video Mixer Render Preferences: <br>
    <b>vpForceOffscreen:</b> Indicates that the VMR should use only offscreen surfaces for rendering.<br>
    <b>vpForceOverlays:</b> Indicates that the VMR should fail if no overlay surfaces are available.<br>
    <b>vpForceMixer:</b> Indicates that the VMR must use Mixer when the number of streams is 1.<br>
    <b>vpDoNotRenderColorKeyAndBorder:</b> Indicates that the application is responsible for painting the color keys.<br>
    <b>vpRestrictToInitialMonitor:</b> Indicates that the VMR should output only to the initial monitor.<br>
    <b>vpPreferAGPMemWhenMixing:</b> Indicates that the VMR should attempt to use AGP memory when allocating texture surfaces.}
  TVMRPreference = (
    vpForceOffscreen,
    vpForceOverlays,
    vpForceMixer,
    vpDoNotRenderColorKeyAndBorder,
    vpRestrictToInitialMonitor,
    vpPreferAGPMemWhenMixing
  );

  { Pointer to @link(TVMRPreferences).}
  PVMRPreferences = ^TVMRPreferences;
  { Set of @link(TVMRPreference).}
  TVMRPreferences = set of TVMRPreference;

  TOnDSEvent                   = procedure(sender: TComponent; Event, Param1, Param2: Integer) of object;
                                                                                                                                   {@exclude}
  TOnGraphBufferingData        = procedure(sender: TObject; Buffering: boolean) of object ;                                        {@exclude}
  TOnGraphComplete             = procedure(sender: TObject; Result: HRESULT; Renderer: IBaseFilter) of object ;                    {@exclude}
  TOnGraphDeviceLost           = procedure(sender: TObject; Device: IUnknown; Removed: Boolean) of object ;                        {@exclude}
  TOnGraphEndOfSegment         = procedure(sender: TObject; StreamTime: TReferenceTime; NumSegment: Cardinal) of object ;         {@exclude}
  TOnDSResult                  = procedure(sender: TObject; Result: HRESULT) of object ;                                           {@exclude}
  TOnGraphFullscreenLost       = procedure(sender: TObject; Renderer: IBaseFilter) of object ;                                     {@exclude}
  TOnGraphOleEvent             = procedure(sender: TObject; String1, String2: WideString) of object ;                              {@exclude}
  TOnGraphOpeningFile          = procedure(sender: TObject; opening: boolean) of object ;                                          {@exclude}
  TOnGraphSNDDevError          = procedure(sender: TObject; OccurWhen: TSndDevErr; ErrorCode: LongWord) of object ;               {@exclude}
  TOnGraphStreamControl        = procedure(sender: TObject; PinSender: IPin; Cookie: LongWord) of object ;                         {@exclude}
  TOnGraphStreamError          = procedure(sender: TObject; Operation: HRESULT; Value: LongWord) of object ;                       {@exclude}
  TOnGraphVideoSizeChanged     = procedure(sender: TObject; Width, height: word) of object ;                                       {@exclude}
  TOnGraphTimeCodeAvailable    = procedure(sender: TObject; From: IBaseFilter; DeviceID: LongWord) of object ;                     {@exclude}
  TOnGraphEXTDeviceModeChange  = procedure(sender: TObject; NewMode, DeviceID: LongWord) of object ;                               {@exclude}
  TOnGraphVMRRenderDevice      = procedure(sender: TObject; RenderDevice: TVMRRenderDevice) of object;
                                                                                                                                   {@exclude}
  TOnDVDAudioStreamChange      = procedure(sender: TObject; stream, lcid: Integer; Lang: string) of object;                        {@exclude}
  TOnDVDCurrentTime            = procedure(sender: TObject; Hours, minutes,seconds,frames,frate : Integer) of object;              {@exclude}
  TOnDVDTitleChange            = procedure(sender: TObject; title: Integer) of object;                                             {@exclude}
  TOnDVDChapterStart           = procedure(sender: TObject; chapter: Integer) of object;                                           {@exclude}
  TOnDVDValidUOPSChange        = procedure(sender: TObject; UOPS: Integer) of object;                                              {@exclude}
  TOnDVDChange                 = procedure(sender: TObject; total,current: Integer) of object;                                     {@exclude}
  TOnDVDStillOn                = procedure(sender: TObject; NoButtonAvailable: boolean; seconds: Integer) of object;               {@exclude}
  TOnDVDSubpictureStreamChange = procedure(sender: TObject; SubNum, lcid: Integer; Lang: string) of object;                        {@exclude}
  TOnDVDPlaybackRateChange     = procedure(sender: TObject; rate:  single) of object;                                              {@exclude}
  TOnDVDParentalLevelChange    = procedure(sender: TObject; level: Integer) of object;                                             {@exclude}
  TOnDVDAnglesAvailable        = procedure(sender: TObject; available: boolean) of object;                                         {@exclude}
  TOnDVDButtonAutoActivated    = procedure(sender: TObject; Button: Cardinal) of object;                                           {@exclude}
  TOnDVDCMD                    = procedure(sender: TObject; CmdID: Cardinal) of object;                                            {@exclude}
  TOnDVDCurrentHMSFTime        = procedure(sender: TObject; HMSFTimeCode: TDVDHMSFTimeCode; TimeCode: TDVDTimeCode) of object;  {@exclude}
  TOnDVDKaraokeMode            = procedure(sender: TObject; Played: boolean) of object;
  {@exclude}
  TOnBuffer = procedure(sender: TObject; SampleTime: Double; pBuffer: Pointer; BufferLen: longint) of object ;

  TOnSelectedFilter = function (Moniker: IMoniker; FilterName: WideString; ClassID: TGuid): Boolean of Object;
  TOnCreatedFilter  = function (Filter: IBaseFilter; ClassID: TGuid): Boolean of Object;
  TOnUnableToRender = function (Pin: IPin): Boolean of Object;
// *****************************************************************************
//  IFilter
// *****************************************************************************

  {@exclude}
  TFilterOperation = (
    foAdding,    // Before the filter is added to graph.
    foAdded,     // After the filter is added to graph.
    foRemoving,  // Before the filter is removed from graph.
    foRemoved,   // After the filter is removed from graph.
    foRefresh    // Designer notification to Refresh the filter .
  );


  {@exclude}
  IFilter = interface
  ['{887F94DA-29E9-44C6-B48E-1FBF0FB59878}']
    { Return the IBaseFilter Interface (All DirectShow filters expose this interface). }
    function GetFilter: IBaseFilter;
    { Return the filter name (generally the component name). }
    function GetName: string;
    { Called by the @link(TFilterGraph) component, this method receive notifications
      on what the TFilterGraph is doing. if Operation = foGraphEvent then Param is the
      event code received by the FilterGraph.}
    procedure NotifyFilter(operation: TFilterOperation; Param: integer = 0);
  end;

  {@exclude}
  TControlEvent = (
    cePlay,
    cePause,
    ceStop,

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产精品美女久久久久久久久| 日韩国产一区二| 亚洲精品国产精品乱码不99 | 欧美精选一区二区| 欧美韩国日本不卡| 麻豆免费精品视频| 欧洲生活片亚洲生活在线观看| 亚洲精品一区二区三区蜜桃下载 | 91麻豆福利精品推荐| 亚洲精品一区二区三区影院| 婷婷综合五月天| 日本韩国视频一区二区| 欧美国产一区在线| 精品一区二区免费视频| 欧美美女bb生活片| 一区二区三区日本| 91亚洲资源网| 国产精品福利一区二区三区| 国产乱理伦片在线观看夜一区| 欧美日韩一级片网站| 亚洲精品写真福利| 99视频有精品| 中文字幕一区免费在线观看| 国产成人免费在线视频| 精品欧美久久久| 另类小说一区二区三区| 欧美一级片在线看| 日韩精品一卡二卡三卡四卡无卡| 欧美日韩的一区二区| 午夜精品久久久久久久99水蜜桃 | 亚洲色图在线播放| 91色.com| 一区二区三区蜜桃| 91官网在线免费观看| 一区二区三区视频在线看| 91麻豆.com| 亚洲一区二区三区视频在线 | 亚洲成人动漫在线免费观看| 欧美在线观看视频一区二区| 亚洲一区av在线| 91精品黄色片免费大全| 蜜桃视频免费观看一区| 欧美精品一区二区三区久久久| 精品一区二区在线视频| 久久久久久久久岛国免费| 粉嫩蜜臀av国产精品网站| 国产精品国产自产拍在线| 色婷婷综合久久久中文一区二区| 亚洲一区二区在线视频| 91精品在线观看入口| 久久99精品国产| 中文字幕av免费专区久久| 一本到高清视频免费精品| 亚洲国产精品一区二区www在线| 欧美日韩高清一区二区不卡| 久久精品久久综合| 国产午夜精品一区二区三区四区| 99久久伊人网影院| 亚洲一区二区三区在线看| 日韩女同互慰一区二区| 成人国产精品免费网站| 亚洲一区成人在线| 久久伊99综合婷婷久久伊| 成人网在线播放| 天天综合天天做天天综合| 久久久不卡影院| 欧美在线你懂的| 国产一区二区91| 亚洲小说欧美激情另类| 26uuu国产一区二区三区| 色欧美88888久久久久久影院| 日本成人中文字幕在线视频 | 欧美在线视频你懂得| 亚洲永久精品大片| 精品国产精品一区二区夜夜嗨| 成人激情图片网| 青青草91视频| 亚洲日本中文字幕区| 欧美mv日韩mv国产网站app| 91免费版pro下载短视频| 美腿丝袜亚洲一区| 亚洲日本一区二区| 久久亚洲免费视频| 欧美日韩成人综合天天影院| 成人高清视频在线| 国产一区二区在线观看免费| 亚洲综合精品自拍| 国产精品久久久爽爽爽麻豆色哟哟| 欧美一区二区国产| 欧美视频在线一区| 91亚洲精品久久久蜜桃| 国产福利一区二区三区视频| 日本不卡高清视频| 日本免费在线视频不卡一不卡二| 国产精品美女久久久久av爽李琼| 日韩视频一区二区三区在线播放 | 中文字幕亚洲精品在线观看| 精品国产成人在线影院| 欧美夫妻性生活| 91精品福利在线| 97超碰欧美中文字幕| 国产成人8x视频一区二区 | 欧美成人官网二区| 欧美男同性恋视频网站| 在线观看网站黄不卡| 91蝌蚪porny九色| 成人免费看的视频| 国产成人av一区二区| 国产精品影音先锋| 国产一区二区三区在线观看免费| 蜜臀99久久精品久久久久久软件| 午夜精品久久久久久久99水蜜桃| 亚洲一区二区成人在线观看| 亚洲一区二区三区中文字幕| 亚洲成人自拍网| 亚洲综合一区二区精品导航| 亚洲一区中文日韩| 午夜久久久久久久久| 午夜精品国产更新| 麻豆国产精品一区二区三区| 国模大尺度一区二区三区| 久久99国产精品久久99果冻传媒| 精品一区二区三区在线观看国产| 精品一区二区在线播放| 国产成人免费在线| av电影在线观看完整版一区二区| gogogo免费视频观看亚洲一| 99在线热播精品免费| 欧美亚洲综合一区| 欧美一区2区视频在线观看| 精品国产免费一区二区三区四区| 久久综合九色综合97婷婷| 国产亚洲污的网站| 亚洲欧美激情插| 婷婷久久综合九色国产成人| 狠狠色丁香九九婷婷综合五月| 国产麻豆视频精品| 91色在线porny| 欧美一区二区三区在线观看视频| 精品久久久三级丝袜| 欧美国产成人在线| 亚洲国产aⅴ天堂久久| 久久精品国产一区二区三区免费看| 国产剧情一区二区| 一本一本大道香蕉久在线精品| 欧美日韩视频不卡| 亚洲一区中文日韩| 青青国产91久久久久久| 国产精品456| 欧美伊人久久久久久久久影院 | 99久久国产综合精品色伊| 欧美三级日本三级少妇99| 久久久国际精品| 亚洲综合色丁香婷婷六月图片| 国产在线视视频有精品| 色哟哟欧美精品| 2024国产精品视频| 亚洲午夜免费视频| 国产精品综合在线视频| 欧美色视频一区| 国产精品丝袜黑色高跟| 日本美女一区二区| 色婷婷国产精品| 国产午夜亚洲精品不卡| 午夜不卡av免费| 91色在线porny| 国产视频在线观看一区二区三区 | 亚洲人xxxx| 国产在线播放一区三区四| 欧美日韩中字一区| 国产精品福利影院| 国产精品亚洲午夜一区二区三区| 欧美色国产精品| 一区二区中文视频| 国产一区视频导航| 777久久久精品| 亚洲一区自拍偷拍| 91在线无精精品入口| 久久女同精品一区二区| 免费在线欧美视频| 欧美日韩国产影片| 一区二区在线观看av| av在线播放一区二区三区| 久久久亚洲综合| 麻豆精品国产91久久久久久| 欧美日韩一区三区四区| 亚洲人成网站色在线观看| 成人精品小蝌蚪| 国产日本欧洲亚洲| 国产精品一区二区免费不卡 | 91精品国产综合久久小美女| 另类小说视频一区二区| 欧美一区午夜视频在线观看| 一区二区不卡在线播放| 色婷婷久久久综合中文字幕 | 成人激情开心网| 国产精品视频一二三区| 成人久久久精品乱码一区二区三区| 久久免费国产精品| 国产成人久久精品77777最新版本|