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

📄 directsound.pas

📁 3D GameStudio 的Delphi开发包
💻 PAS
📖 第 1 页 / 共 5 页
字号:
  DSFXDISTORTION_POSTEQCENTERFREQUENCY_MAX    = 8000.0;
  {$EXTERNALSYM DSFXDISTORTION_POSTEQCENTERFREQUENCY_MAX}
  DSFXDISTORTION_POSTEQBANDWIDTH_MIN          = 100.0;
  {$EXTERNALSYM DSFXDISTORTION_POSTEQBANDWIDTH_MIN}
  DSFXDISTORTION_POSTEQBANDWIDTH_MAX          = 8000.0;
  {$EXTERNALSYM DSFXDISTORTION_POSTEQBANDWIDTH_MAX}
  DSFXDISTORTION_PRELOWPASSCUTOFF_MIN         = 100.0;
  {$EXTERNALSYM DSFXDISTORTION_PRELOWPASSCUTOFF_MIN}
  DSFXDISTORTION_PRELOWPASSCUTOFF_MAX         = 8000.0;
  {$EXTERNALSYM DSFXDISTORTION_PRELOWPASSCUTOFF_MAX}

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

  IID_IDirectSoundFXDistortion = IDirectSoundFXDistortion;
  {$EXTERNALSYM IID_IDirectSoundFXDistortion}


  //
  // IDirectSoundFXCompressor
  //

  PDSFXCompressor = ^TDSFXCompressor;
  _DSFXCompressor = packed record
    fGain: Single;
    fAttack: Single;
    fRelease: Single;
    fThreshold: Single;
    fRatio: Single;
    fPredelay: Single;
  end;
  {$EXTERNALSYM _DSFXCompressor}
  DSFXCompressor = _DSFXCompressor;
  {$EXTERNALSYM DSFXCompressor}
  TDSFXCompressor = _DSFXCompressor;

const
  DSFXCOMPRESSOR_GAIN_MIN             = -60.0;
  {$EXTERNALSYM DSFXCOMPRESSOR_GAIN_MIN}
  DSFXCOMPRESSOR_GAIN_MAX             = 60.0;
  {$EXTERNALSYM DSFXCOMPRESSOR_GAIN_MAX}
  DSFXCOMPRESSOR_ATTACK_MIN           = 0.01;
  {$EXTERNALSYM DSFXCOMPRESSOR_ATTACK_MIN}
  DSFXCOMPRESSOR_ATTACK_MAX           = 500.0;
  {$EXTERNALSYM DSFXCOMPRESSOR_ATTACK_MAX}
  DSFXCOMPRESSOR_RELEASE_MIN          = 50.0;
  {$EXTERNALSYM DSFXCOMPRESSOR_RELEASE_MIN}
  DSFXCOMPRESSOR_RELEASE_MAX          = 3000.0;
  {$EXTERNALSYM DSFXCOMPRESSOR_RELEASE_MAX}
  DSFXCOMPRESSOR_THRESHOLD_MIN        = -60.0;
  {$EXTERNALSYM DSFXCOMPRESSOR_THRESHOLD_MIN}
  DSFXCOMPRESSOR_THRESHOLD_MAX        = 0.0;
  {$EXTERNALSYM DSFXCOMPRESSOR_THRESHOLD_MAX}
  DSFXCOMPRESSOR_RATIO_MIN            = 1.0;
  {$EXTERNALSYM DSFXCOMPRESSOR_RATIO_MIN}
  DSFXCOMPRESSOR_RATIO_MAX            = 100.0;
  {$EXTERNALSYM DSFXCOMPRESSOR_RATIO_MAX}
  DSFXCOMPRESSOR_PREDELAY_MIN         = 0.0;
  {$EXTERNALSYM DSFXCOMPRESSOR_PREDELAY_MIN}
  DSFXCOMPRESSOR_PREDELAY_MAX         = 4.0;
  {$EXTERNALSYM DSFXCOMPRESSOR_PREDELAY_MAX}

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

  IID_IDirectSoundFXCompressor = IDirectSoundFXCompressor;
  {$EXTERNALSYM IID_IDirectSoundFXCompressor}


  //
  // IDirectSoundFXParamEq
  //

  PDSFXParamEq = ^TDSFXParamEq;
  _DSFXParamEq = packed record
    fCenter: Single;
    fBandwidth: Single;
    fGain: Single;
  end;
  {$EXTERNALSYM _DSFXParamEq}
  DSFXParamEq = _DSFXParamEq;
  {$EXTERNALSYM DSFXParamEq}
  TDSFXParamEq = _DSFXParamEq;

const
  DSFXPARAMEQ_CENTER_MIN      = 80.0;
  {$EXTERNALSYM DSFXPARAMEQ_CENTER_MIN}
  DSFXPARAMEQ_CENTER_MAX      = 16000.0;
  {$EXTERNALSYM DSFXPARAMEQ_CENTER_MAX}
  DSFXPARAMEQ_BANDWIDTH_MIN   = 1.0;
  {$EXTERNALSYM DSFXPARAMEQ_BANDWIDTH_MIN}
  DSFXPARAMEQ_BANDWIDTH_MAX   = 36.0;
  {$EXTERNALSYM DSFXPARAMEQ_BANDWIDTH_MAX}
  DSFXPARAMEQ_GAIN_MIN        = -15.0;
  {$EXTERNALSYM DSFXPARAMEQ_GAIN_MIN}
  DSFXPARAMEQ_GAIN_MAX        = 15.0;
  {$EXTERNALSYM DSFXPARAMEQ_GAIN_MAX}

type
  {$HPPEMIT 'DECLARE_DINTERFACE_TYPE(IDirectSoundFXParamEq);'}
  {$EXTERNALSYM IDirectSoundFXParamEq}
  IDirectSoundFXParamEq = interface(IUnknown)
    ['{c03ca9fe-fe90-4204-8078-82334cd177da}']
    // IDirectSoundFXParamEq methods
    function SetAllParameters(const pcDsFxParamEq: TDSFXParamEq): HResult; stdcall;
    function GetAllParameters(out pDsFxParamEq: TDSFXParamEq): HResult; stdcall;
  end;

  IID_IDirectSoundFXParamEq = IDirectSoundFXParamEq;
  {$EXTERNALSYM IID_IDirectSoundFXParamEq}


  //
  // IDirectSoundFXI3DL2Reverb
  //

  PDSFXI3DL2Reverb = ^TDSFXI3DL2Reverb;
  _DSFXI3DL2Reverb = packed record
    lRoom: Longint;                  // [-10000, 0]      default: -1000 mB
    lRoomHF: Longint;                // [-10000, 0]      default: 0 mB
    flRoomRolloffFactor: Single;     // [0.0, 10.0]      default: 0.0
    flDecayTime: Single;             // [0.1, 20.0]      default: 1.49s
    flDecayHFRatio: Single;          // [0.1, 2.0]       default: 0.83
    lReflections: Longint;           // [-10000, 1000]   default: -2602 mB
    flReflectionsDelay: Single;      // [0.0, 0.3]       default: 0.007 s
    lReverb: Longint;                // [-10000, 2000]   default: 200 mB
    flReverbDelay: Single;           // [0.0, 0.1]       default: 0.011 s
    flDiffusion: Single;             // [0.0, 100.0]     default: 100.0 %
    flDensity: Single;               // [0.0, 100.0]     default: 100.0 %
    flHFReference: Single;           // [20.0, 20000.0]  default: 5000.0 Hz
  end;
  {$EXTERNALSYM _DSFXI3DL2Reverb}
  DSFXI3DL2Reverb = _DSFXI3DL2Reverb;
  {$EXTERNALSYM DSFXI3DL2Reverb}
  TDSFXI3DL2Reverb = _DSFXI3DL2Reverb;

const
  DSFX_I3DL2REVERB_ROOM_MIN                   = (-10000);
  {$EXTERNALSYM DSFX_I3DL2REVERB_ROOM_MIN}
  DSFX_I3DL2REVERB_ROOM_MAX                   = 0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_ROOM_MAX}
  DSFX_I3DL2REVERB_ROOM_DEFAULT               = (-1000);
  {$EXTERNALSYM DSFX_I3DL2REVERB_ROOM_DEFAULT}

  DSFX_I3DL2REVERB_ROOMHF_MIN                 = (-10000);
  {$EXTERNALSYM DSFX_I3DL2REVERB_ROOMHF_MIN}
  DSFX_I3DL2REVERB_ROOMHF_MAX                 = 0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_ROOMHF_MAX}
  DSFX_I3DL2REVERB_ROOMHF_DEFAULT             = (-100);
  {$EXTERNALSYM DSFX_I3DL2REVERB_ROOMHF_DEFAULT}

  DSFX_I3DL2REVERB_ROOMROLLOFFFACTOR_MIN      = 0.0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_ROOMROLLOFFFACTOR_MIN}
  DSFX_I3DL2REVERB_ROOMROLLOFFFACTOR_MAX      = 10.0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_ROOMROLLOFFFACTOR_MAX}
  DSFX_I3DL2REVERB_ROOMROLLOFFFACTOR_DEFAULT  = 0.0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_ROOMROLLOFFFACTOR_DEFAULT}

  DSFX_I3DL2REVERB_DECAYTIME_MIN              = 0.1;
  {$EXTERNALSYM DSFX_I3DL2REVERB_DECAYTIME_MIN}
  DSFX_I3DL2REVERB_DECAYTIME_MAX              = 20.0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_DECAYTIME_MAX}
  DSFX_I3DL2REVERB_DECAYTIME_DEFAULT          = 1.49;
  {$EXTERNALSYM DSFX_I3DL2REVERB_DECAYTIME_DEFAULT}

  DSFX_I3DL2REVERB_DECAYHFRATIO_MIN           = 0.1;
  {$EXTERNALSYM DSFX_I3DL2REVERB_DECAYHFRATIO_MIN}
  DSFX_I3DL2REVERB_DECAYHFRATIO_MAX           = 2.0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_DECAYHFRATIO_MAX}
  DSFX_I3DL2REVERB_DECAYHFRATIO_DEFAULT       = 0.83;
  {$EXTERNALSYM DSFX_I3DL2REVERB_DECAYHFRATIO_DEFAULT}

  DSFX_I3DL2REVERB_REFLECTIONS_MIN            = (-10000);
  {$EXTERNALSYM DSFX_I3DL2REVERB_REFLECTIONS_MIN}
  DSFX_I3DL2REVERB_REFLECTIONS_MAX            = 1000;
  {$EXTERNALSYM DSFX_I3DL2REVERB_REFLECTIONS_MAX}
  DSFX_I3DL2REVERB_REFLECTIONS_DEFAULT        = (-2602);
  {$EXTERNALSYM DSFX_I3DL2REVERB_REFLECTIONS_DEFAULT}

  DSFX_I3DL2REVERB_REFLECTIONSDELAY_MIN       = 0.0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_REFLECTIONSDELAY_MIN}
  DSFX_I3DL2REVERB_REFLECTIONSDELAY_MAX       = 0.3;
  {$EXTERNALSYM DSFX_I3DL2REVERB_REFLECTIONSDELAY_MAX}
  DSFX_I3DL2REVERB_REFLECTIONSDELAY_DEFAULT   = 0.007;
  {$EXTERNALSYM DSFX_I3DL2REVERB_REFLECTIONSDELAY_DEFAULT}

  DSFX_I3DL2REVERB_REVERB_MIN                 = (-10000);
  {$EXTERNALSYM DSFX_I3DL2REVERB_REVERB_MIN}
  DSFX_I3DL2REVERB_REVERB_MAX                 = 2000;
  {$EXTERNALSYM DSFX_I3DL2REVERB_REVERB_MAX}
  DSFX_I3DL2REVERB_REVERB_DEFAULT             = (200);
  {$EXTERNALSYM DSFX_I3DL2REVERB_REVERB_DEFAULT}

  DSFX_I3DL2REVERB_REVERBDELAY_MIN            = 0.0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_REVERBDELAY_MIN}
  DSFX_I3DL2REVERB_REVERBDELAY_MAX            = 0.1;
  {$EXTERNALSYM DSFX_I3DL2REVERB_REVERBDELAY_MAX}
  DSFX_I3DL2REVERB_REVERBDELAY_DEFAULT        = 0.011;
  {$EXTERNALSYM DSFX_I3DL2REVERB_REVERBDELAY_DEFAULT}

  DSFX_I3DL2REVERB_DIFFUSION_MIN              = 0.0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_DIFFUSION_MIN}
  DSFX_I3DL2REVERB_DIFFUSION_MAX              = 100.0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_DIFFUSION_MAX}
  DSFX_I3DL2REVERB_DIFFUSION_DEFAULT          = 100.0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_DIFFUSION_DEFAULT}

  DSFX_I3DL2REVERB_DENSITY_MIN                = 0.0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_DENSITY_MIN}
  DSFX_I3DL2REVERB_DENSITY_MAX                = 100.0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_DENSITY_MAX}
  DSFX_I3DL2REVERB_DENSITY_DEFAULT            = 100.0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_DENSITY_DEFAULT}

  DSFX_I3DL2REVERB_HFREFERENCE_MIN            = 20.0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_HFREFERENCE_MIN}
  DSFX_I3DL2REVERB_HFREFERENCE_MAX            = 20000.0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_HFREFERENCE_MAX}
  DSFX_I3DL2REVERB_HFREFERENCE_DEFAULT        = 5000.0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_HFREFERENCE_DEFAULT}

  DSFX_I3DL2REVERB_QUALITY_MIN                = 0;
  {$EXTERNALSYM DSFX_I3DL2REVERB_QUALITY_MIN}
  DSFX_I3DL2REVERB_QUALITY_MAX                = 3;
  {$EXTERNALSYM DSFX_I3DL2REVERB_QUALITY_MAX}
  DSFX_I3DL2REVERB_QUALITY_DEFAULT            = 2;
  {$EXTERNALSYM DSFX_I3DL2REVERB_QUALITY_DEFAULT}

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

  IID_IDirectSoundFXI3DL2Reverb = IDirectSoundFXI3DL2Reverb;
  {$EXTERNALSYM IID_IDirectSoundFXI3DL2Reverb}


  //
  // IDirectSoundFXWavesReverb
  //

  PDSFXWavesReverb = ^TDSFXWavesReverb;
  _DSFXWavesReverb = packed record
    fInGain: Single;                // [-96.0,0.0]            default: 0.0 dB
    fReverbMix: Single;             // [-96.0,0.0]            default: 0.0 db
    fReverbTime: Single;            // [0.001,3000.0]         default: 1000.0 ms
    fHighFreqRTRatio: Single;       // [0.001,0.999]          default: 0.001
  end;
  {$EXTERNALSYM _DSFXWavesReverb}
  DSFXWavesReverb = _DSFXWavesReverb;
  {$EXTERNALSYM DSFXWavesReverb}
  TDSFXWavesReverb = _DSFXWavesReverb;

const
  DSFX_WAVESREVERB_INGAIN_MIN                 = -96.0;
  {$EXTERNALSYM DSFX_WAVESREVERB_INGAIN_MIN}
  DSFX_WAVESREVERB_INGAIN_MAX                 = 0.0;
  {$EXTERNALSYM DSFX_WAVESREVERB_INGAIN_MAX}
  DSFX_WAVESREVERB_INGAIN_DEFAULT             = 0.0;
  {$EXTERNALSYM DSFX_WAVESREVERB_INGAIN_DEFAULT}
  DSFX_WAVESREVERB_REVERBMIX_MIN              = -96.0;
  {$EXTERNALSYM DSFX_WAVESREVERB_REVERBMIX_MIN}
  DSFX_WAVESREVERB_REVERBMIX_MAX              = 0.0;
  {$EXTERNALSYM DSFX_WAVESREVERB_REVERBMIX_MAX}
  DSFX_WAVESREVERB_REVERBMIX_DEFAULT          = 0.0;
  {$EXTERNALSYM DSFX_WAVESREVERB_REVERBMIX_DEFAULT}
  DSFX_WAVESREVERB_REVERBTIME_MIN             = 0.001;
  {$EXTERNALSYM DSFX_WAVESREVERB_REVERBTIME_MIN}
  DSFX_WAVESREVERB_REVERBTIME_MAX             = 3000.0;
  {$EXTERNALSYM DSFX_WAVESREVERB_REVERBTIME_MAX}
  DSFX_WAVESREVERB_REVERBTIME_DEFAULT         = 1000.0;
  {$EXTERNALSYM DSFX_WAVESREVERB_REVERBTIME_DEFAULT}
  DSFX_WAVESREVERB_HIGHFREQRTRATIO_MIN        = 0.001;
  {$EXTERNALSYM DSFX_WAVESREVERB_HIGHFREQRTRATIO_MIN}
  DSFX_WAVESREVERB_HIGHFREQRTRATIO_MAX        = 0.999;
  {$EXTERNALSYM DSFX_WAVESREVERB_HIGHFREQRTRATIO_MAX}
  DSFX_WAVESREVERB_HIGHFREQRTRATIO_DEFAULT    = 0.001;
  {$EXTERNALSYM DSFX_WAVESREVERB_HIGHFREQRTRATIO_DEFAULT}

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

  IID_IDirectSoundFXWavesReverb = IDirectSoundFXWavesReverb;
  {$EXTERNALSYM IID_IDirectSoundFXWavesReverb}

  
  //
  // IDirectSoundCaptureFXAec
  //

  PDSCFXAec = ^TDSCFXAec;
  _DSCFXAec = packed record
    fEnable: BOOL;
    fNoiseFill: BOOL;
    dwMode: DWORD;
  end;
  {$EXTERNALSYM _DSCFXAec}
  DSCFXAec = _DSCFXAec;
  {$EXTERNALSYM DSCFXAec}
  TDSCFXAec = _DSCFXAec;

const
  // These match the AEC_MODE_* constants in the DDK's ksmedia.h file
  DSCFX_AEC_MODE_PASS_THROUGH                     = $0;
  {$EXTERNALSYM DSCFX_AEC_MODE_PASS_THROUGH}
  DSCFX_AEC_MODE_HALF_DUPLEX                      = $1;
  {$EXTERNALSYM DSCFX_AEC_MODE_HALF_DUPLEX}

⌨️ 快捷键说明

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