⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 directsound.pas

📁 delphi编的不错的贪吃蛇
💻 PAS
📖 第 1 页 / 共 5 页
字号:
    function SetConeOutsideVolume
        (lConeOutsideVolume: LongInt; dwApply: DWORD) : HResult; stdcall;
    function SetMaxDistance(flMaxDistance: TD3DValue; dwApply: DWORD) : HResult; stdcall;
    function SetMinDistance(flMinDistance: TD3DValue; dwApply: DWORD) : HResult; stdcall;
    function SetMode(dwMode: DWORD; dwApply: DWORD) : HResult; stdcall;
    function SetPosition(x, y, z: TD3DValue; dwApply: DWORD) : HResult; stdcall;
    function SetVelocity(x, y, z: TD3DValue; dwApply: DWORD) : HResult; stdcall;
  end;

//
// IDirectSound3DBuffer8
//
  IDirectSound3DBuffer8 = IDirectSound3DBuffer;

//
// IDirectSoundCapture
//
  IDirectSoundCapture = interface (IUnknown)
    ['{b0210781-89cd-11d0-af08-00a0c925cd16}']
    // IDirectSoundCapture methods
    function CreateCaptureBuffer(const lpDSCBufferDesc: TDSCBufferDesc;
        var lplpDirectSoundCaptureBuffer: IDirectSoundCaptureBuffer;
        pUnkOuter: IUnknown) : HResult; stdcall;
    function GetCaps(var lpdwCaps: TDSCCaps) : HResult; stdcall;
    function Initialize(lpGuid: PGUID) : HResult; stdcall;
  end;

//
// IDirectSoundCapture8
//
  IDirectSoundCapture8 = IDirectSoundCapture;

//
// IDirectSoundCaptureBuffer
//
  IDirectSoundCaptureBuffer = interface (IUnknown)
    ['{b0210782-89cd-11d0-af08-00a0c925cd16}']
    // IDirectSoundCaptureBuffer methods
    function GetCaps(var lpdwCaps: TDSCBCaps) : HResult; stdcall;
    function GetCurrentPosition
        (lpdwCapturePosition, lpdwReadPosition: PDWORD) : HResult; stdcall;
    function GetFormat(lpwfxFormat: PWaveFormatEx; dwSizeAllocated: DWORD;
        lpdwSizeWritten : PDWORD) : HResult; stdcall;
    function GetStatus(var lpdwStatus: DWORD) : HResult; stdcall;
    function Initialize(lpDirectSoundCapture: IDirectSoundCapture;
        const lpcDSBufferDesc: TDSCBufferDesc) : HResult; stdcall;
    function Lock(dwReadCursor, dwReadBytes: DWORD;
        var lplpvAudioPtr1: Pointer; var lpdwAudioBytes1: DWORD;
        var lplpvAudioPtr2: Pointer; var lpdwAudioBytes2: DWORD;
        dwFlags: DWORD) : HResult; stdcall;
    function Start(dwFlags: DWORD) : HResult; stdcall;
    function Stop: HResult; stdcall;
    function Unlock(lpvAudioPtr1: Pointer; dwAudioBytes1: DWORD;
        lpvAudioPtr2: Pointer; dwAudioBytes2: DWORD) : HResult; stdcall;
  end;

//
// IDirectSoundCaptureBuffer8
//
  IDirectSoundCaptureBuffer8 = interface (IDirectSoundCaptureBuffer)
    ['{00990df4-0dbb-4872-833e-6d303e80aeb6}']
    // IDirectSoundCaptureBuffer8 methods
    function GetObjectInPath(const rguidObject: TGUID; dwIndex: DWORD;
        const rguidInterface: TGUID; out ppObject): HResult; stdcall;
    function GetFXStatus(dwFXCount: DWORD; pdwFXStatus: PDWORD): HResult; stdcall;
  end;

//
// IDirectSoundCaptureFXAec8
//
{$IFNDEF DX81}
  IDirectSoundCaptureFXAec8 = interface (IUnknown)
    ['{174D3EB9-6696-4FAC-A46C-A0AC7BC9E20F}']
    // IDirectSoundCaptureFXAec8 methods
    function SetAllParameters(const pDscFxAec: TDSCFXAec): HResult; stdcall;
    function GetAllParameters(out pDscFxAec: TDSCFXAec): HResult; stdcall;
  end;
{$ELSE}
  IDirectSoundCaptureFXAec8 = interface (IUnknown)
    ['{AD74143D-903D-4AB7-8066-28D363036D65}']
    // IDirectSoundCaptureFXAec8 methods
    function SetAllParameters(const pDscFxAec : TDSCFXAec): HResult; stdcall;
    function GetAllParameters(out pDscFxAec : TDSCFXAec) : HResult; stdcall;
    function GetStatus(out pdwStatus : LongWord) : HResult; stdcall;
    function Reset : HResult; stdcall;
  end;
{$ENDIF}
//
// IDirectSoundCaptureFXNoiseSuppress8
//
  IDirectSoundCaptureFXNoiseSuppress8 = interface (IUnknown)
    ['{ED311E41-FBAE-4175-9625-CD0854F693CA}']
    // IDirectSoundCaptureFXNoiseSuppress8 methods
    function SetAllParameters(const pcDscFxNoiseSuppress : TDSCFXNoiseSuppress) : HResult; stdcall;
    function GetAllParameters(out pDscFxNoiseSuppress : TDSCFXNoiseSuppress) : HResult; stdcall;
{$IFDEF DX81}
    function Reset : HResult; stdcall;
{$ENDIF}
  end;

//
// IDirectSoundFullDuplex8
//
  IDirectSoundFullDuplex8 = interface (IUnknown)
    ['{edcb4c7a-daab-4216-a42e-6c50596ddc1d}']
    // IDirectSoundFullDuplex methods
    function Initialize(pCaptureGuid, pRenderGuid: PGUID; lpDscBufferDesc: PCDSCBufferDesc;
        lpDsBufferDesc: PCDSBufferDesc; hWnd: hWnd; dwLevel: DWORD;
        out lplpDirectSoundCaptureBuffer8: IDirectSoundCaptureBuffer8;
        out lplpDirectSoundBuffer8: IDirectSoundBuffer8): HResult; stdcall;
  end;

//
// IDirectSoundFXGargle8
//
  IDirectSoundFXGargle8 = interface (IUnknown)
    ['{d616f352-d622-11ce-aac5-0020af0b99a3}']
    function SetAllParameters(const pcDsFxGargle: TDSFXGargle): HResult; stdcall;
    function GetAllParameters(out pDsFxGargle: TDSFXGargle): HResult; stdcall;
  end;

//
// IDirectSoundFXChorus8
//
  IDirectSoundFXChorus8 = interface (IUnknown)
    ['{880842e3-145f-43e6-a934-a71806e50547}']
    function SetAllParameters(const pcDsFxChorus: TDSFXChorus): HResult; stdcall;
    function GetAllParameters(out pDsFxChorus: TDSFXChorus): HResult; stdcall;
  end;

//
// IDirectSoundFXFlanger8
//
  IDirectSoundFXFlanger8 = interface (IUnknown)
    ['{903e9878-2c92-4072-9b2c-ea68f5396783}']
    function SetAllParameters(const pcDsFxFlanger: TDSFXFlanger): HResult; stdcall;
    function GetAllParameters(out pDsFxFlanger: TDSFXFlanger): HResult; stdcall;
  end;

//
// IDirectSoundFXEcho8
//
  IDirectSoundFXEcho8 = interface (IUnknown)
    ['{8bd28edf-50db-4e92-a2bd-445488d1ed42}']
    function SetAllParameters(const pcDsFxEcho: TDSFXEcho): HResult; stdcall;
    function GetAllParameters(out pDsFxEcho: TDSFXEcho): HResult; stdcall;
  end;

//
// IDirectSoundFXDistortion8
//
  IDirectSoundFXDistortion8 = interface (IUnknown)
    ['{8ecf4326-455f-4d8b-bda9-8d5d3e9e3e0b}']
    function SetAllParameters(const pcDsFxDistortion: TDSFXDistortion): HResult; stdcall;
    function GetAllParameters(out pDsFxDistortion: TDSFXDistortion): HResult; stdcall;
  end;

//
// IDirectSoundFXCompressor8
//
  IDirectSoundFXCompressor8 = interface (IUnknown)
    ['{4bbd1154-62f6-4e2c-a15c-d3b6c417f7a0}']
    function SetAllParameters(const pcDsFxCompressor: TDSFXCompressor): HResult; stdcall;
    function GetAllParameters(out pDsFxCompressor: TDSFXCompressor): HResult; stdcall;
  end;

//
// IDirectSoundFXParamEq8
//
  IDirectSoundFXParamEq8 = interface (IUnknown)
    ['{c03ca9fe-fe90-4204-8078-82334cd177da}']
    function SetAllParameters(const pcDsFxParamEq: TDSFXParamEq): HResult; stdcall;
    function GetAllParameters(out pDsFxParamEq: TDSFXParamEq): HResult; stdcall;
  end;

//
// IDirectSoundFXI3DL2Reverb8
//
  IDirectSoundFXI3DL2Reverb8 = interface (IUnknown)
    ['{4b166a6a-0d66-43f3-80e3-ee6280dee1a4}']
    function SetAllParameters(const pcDsFxI3DL2Reverb: TDSFXI3DL2Reverb): HResult; stdcall;
    function GetAllParameters(out pDsFxI3DL2Reverb: TDSFXI3DL2Reverb): HResult; stdcall;
    function SetPreset(dwPreset: DWORD): HResult; stdcall;
    function GetPreset(out dwPreset: DWORD): HResult; stdcall;
    function SetQuality(lQuality: Longint): HResult; stdcall;
    function GetQuality(out plQuality: Longint): HResult; stdcall;
  end;

//
// IDirectSoundFXWavesReverb8
//
  IDirectSoundFXWavesReverb8 = interface (IUnknown)
    ['{46858c3a-0dc6-45e3-b760-d4eef16cb325}']
    function SetAllParameters(const pcDsFxWavesReverb: TDSFXWavesReverb): HResult; stdcall;
    function GetAllParameters(out pDsFxWavesReverb: TDSFXWavesReverb): HResult; stdcall;
  end;

//
// IDirectSoundNotify
//
  IDirectSoundNotify = interface (IUnknown)
    ['{b0210783-89cd-11d0-af08-00a0c925cd16}']
    // IDirectSoundNotify methods
    function SetNotificationPositions(cPositionNotifies: DWORD;
        lpcPositionNotifies: PDSBPositionNotify) : HResult; stdcall;
  end;

//
// IDirectSoundNotify8
//
  IDirectSoundNotify8 = IDirectSoundNotify;

//
// IKsPropertySet
//
  IKsPropertySet = interface (IUnknown)
    ['{31efac30-515c-11d0-a9aa-00aa0061be93}']
    // IKsPropertySet methods
    function Get(const rguidPropSet: TGUID; ulId: DWORD; pInstanceData: pointer;
        ulInstanceLength: DWORD; pPropertyData: pointer; ulDataLength: DWORD;
        var pulBytesReturned: DWORD) : HResult; stdcall;
    // Warning: The following method is defined as Set() in DirectX
    //          which is a reserved word in Delphi!
    function SetProperty(const rguidPropSet: TGUID; ulId: DWORD;
        pInstanceData: pointer; ulInstanceLength: DWORD;
        pPropertyData: pointer; pulDataLength: DWORD) : HResult; stdcall;
    function QuerySupport(const rguidPropSet: TGUID; ulId: DWORD;
        var pulTypeSupport: DWORD) : HResult; stdcall;
  end;


const
  KSPROPERTY_SUPPORT_GET                      = $00000001;
  KSPROPERTY_SUPPORT_SET                      = $00000002;

  DSFXR_PRESENT                               = 0;
  DSFXR_LOCHARDWARE                           = 1;
  DSFXR_LOCSOFTWARE                           = 2;
  DSFXR_UNALLOCATED                           = 3;
  DSFXR_FAILED                                = 4;
  DSFXR_UNKNOWN                               = 5;
  DSFXR_SENDLOOP                              = 6;

  DSFXGARGLE_WAVE_TRIANGLE                    = 0;
  DSFXGARGLE_WAVE_SQUARE                      = 1;
  DSFXGARGLE_RATEHZ_MIN                       = 1;
  DSFXGARGLE_RATEHZ_MAX                       = 1000;

  DSFXCHORUS_WAVE_TRIANGLE                    = 0;
  DSFXCHORUS_WAVE_SIN                         = 1;

  DSFXCHORUS_WETDRYMIX_MIN                    = 0.0;
  DSFXCHORUS_WETDRYMIX_MAX                    = 100.0;
  DSFXCHORUS_DEPTH_MIN                        = 0.0;
  DSFXCHORUS_DEPTH_MAX                        = 100.0;
  DSFXCHORUS_FEEDBACK_MIN                     = -99.0;
  DSFXCHORUS_FEEDBACK_MAX                     = 99.0;
  DSFXCHORUS_FREQUENCY_MIN                    = 0.0;
  DSFXCHORUS_FREQUENCY_MAX                    = 10.0;
  DSFXCHORUS_DELAY_MIN                        = 0.0;
  DSFXCHORUS_DELAY_MAX                        = 20.0;
  DSFXCHORUS_PHASE_MIN                        = 0;
  DSFXCHORUS_PHASE_MAX                        = 4;

  DSFXCHORUS_PHASE_NEG_180                    = 0;
  DSFXCHORUS_PHASE_NEG_90                     = 1;
  DSFXCHORUS_PHASE_ZERO                       = 2;
  DSFXCHORUS_PHASE_90                         = 3;
  DSFXCHORUS_PHASE_180                        = 4;

  DSFXFLANGER_WAVE_TRIANGLE                   = 0;
  DSFXFLANGER_WAVE_SIN                        = 1;

  DSFXFLANGER_WETDRYMIX_MIN                   = 0.0;
  DSFXFLANGER_WETDRYMIX_MAX                   = 100.0;
  DSFXFLANGER_FREQUENCY_MIN                   = 0.0;
  DSFXFLANGER_FREQUENCY_MAX                   = 10.0;
  DSFXFLANGER_DEPTH_MIN                       = 0.0;
  DSFXFLANGER_DEPTH_MAX                       = 100.0;
  DSFXFLANGER_PHASE_MIN                       = 0;
  DSFXFLANGER_PHASE_MAX                       = 4;
  DSFXFLANGER_FEEDBACK_MIN                    = -99.0;
  DSFXFLANGER_FEEDBACK_MAX                    = 99.0;
  DSFXFLANGER_DELAY_MIN                       = 0.0;
  DSFXFLANGER_DELAY_MAX                       = 4.0;

  DSFXFLANGER_PHASE_NEG_180                   = 0;
  DSFXFLANGER_PHASE_NEG_90                    = 1;
  DSFXFLANGER_PHASE_ZERO                      = 2;
  DSFXFLANGER_PHASE_90                        = 3;
  DSFXFLANGER_PHASE_180                       = 4;

  DSFXECHO_WETDRYMIX_MIN                      = 0.0;
  DSFXECHO_WETDRYMIX_MAX                      = 100.0;
  DSFXECHO_FEEDBACK_MIN                       = 0.0;
  DSFXECHO_FEEDBACK_MAX                       = 100.0;
  DSFXECHO_LEFTDELAY_MIN                      = 1.0;
  DSFXECHO_LEFTDELAY_MAX                      = 2000.0;
  DSFXECHO_RIGHTDELAY_MIN                     = 1.0;
  DSFXECHO_RIGHTDELAY_MAX                     = 2000.0;
  DSFXECHO_PANDELAY_MIN                       = 0;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -