{相關結構:}TDSFXParamEq = packed record fCenter: Single; // 80 .. 16000 : 8000.0 (Hz) fBandwidth: Single; // 1 .. 36 : 12.0 fGain: Single; //-15 .. 15 : 0.0end;//該結構相關常量:DSFXPARAMEQ_CENTER_MIN = 80.0;DSFXPARAMEQ_CENTER_MAX = 16000
通過 IDirectSoundBuffer 的 SetVolume、SetPan、SetFrequency、SetCurrentPosition 方法可以簡單進行這些設定.同時 IDirectSoundBuffer 也有對應的 GetVolume、GetPan、GetFrequency、GetCurrentPosition 方法.關鍵的一點是如果能讓緩衝區接受音量、相位和頻率的設定, 必須在建立緩衝區時指定相應的標誌.下面的常量說明了它們的取值範圍:DSBVOLUME_MAX = 0;
{相關結構:}TDSFXCompressor = = packed record fGain: Single; // -60 .. 60 : 0 (dB) fAttack: Single; //0.01 .. 500 : 10 (ms) fRelease: Single; // 50 .. 3000 : 200(ms) fThreshold: Single; // -60 .. 0 : -20(dB) fRatio: Single; //
安裝包中的 NativeXmlObjectStorage.pas 是 NativeXml 的擴充應用,可以把組件、對象和表單序列化為 Xml
{相關方法} TDirect2DCanvas.RenderTarget.SetTransform();TDirect2DCanvas.RenderTarget.GetTransform();{相關結構}TD2DMatrix3x2F (或D2D_MATRIX_3X2_F) //因第三列的值在這裡是固定的(0,0,1),所以這裡用的是 3*2 的矩陣;該結構重載了 * 運算子{TD2DMatrix3x2FHelper 為 TD2DMatrix3x2F 提供的方法(多為 class
{相關結構:}TDSFXFlanger = packed record fWetDryMix: Single; // 0 .. 100 : 50 (%) fDepth: Single; // 0 .. 100 : 100 (%) fFeedback: Single; //-99 .. 99 : -50 (%) fFrequency: Single; // 0 .. 10 : 0.25 lWaveform: Longint; // 0 .. 1 :
TDirect2DCanvas.Brush 的類型是 TDirect2DBrush,它和 GDI 的 TBrush 的區別主要有兩點:1、只保留了 TBrush.Style 中的 bsSolid、bsClear 選項,棄用了:bsHorizontal、bsVertical、bsFDiagonal、bsBDiagonal、bsCross、bsDiagCross。2、其 Handle 屬性是 Direct2D 中的 ID2D1Brush。Direct2D
{相關結構:}TDSFXWavesReverb = packed record fInGain: Single; // -96 .. 0 : 0.0 (dB) fReverbMix: Single; // -96 .. 0 : 0.0 (db) fReverbTime: Single; //0.001 .. 3000 : 1000.0 (ms) fHighFreqRTRatio: Single; //0.001 .
問題來源: http://www.cnblogs.com/del/archive/2011/01/16/1936942.html#2012707var {類比三種位元組數組} staticArr: array[0..6] of Byte = (65, 66, 67, 68, 69, 70, 71); dyanmicArr1: TBytes; dyanmicArr2: array of Byte;procedure TForm1.Button1Click(Sender:
uses Direct2D, D2D1;procedure TForm1.FormPaint(Sender: TObject);var cvs: TDirect2DCanvas; R: TRect;begin cvs := TDirect2DCanvas.Create(Canvas, ClientRect); cvs.BeginDraw; cvs.Pen.Color := Color; cvs.Brush.Color := clGreen; R := Rect(30, 30, 20
問題來源: http://www.cnblogs.com/del/archive/2009/02/16/1392049.html#2011187程式運行後, F8 可儲存 bmp, F9 可儲存 png; 測試儲存目錄在 C:\tempunit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1
{相關結構:}TDSFXDistortion = packed record fGain: Sinle; //-60 .. 0 : -18 (dB) //好像預設值不是 -18 fEdge: Single; // 0 .. 100 : 15 (%) fPostEQCenterFrequency: Single; //100 .. 8000 : 2400 (Hz) fPostEQBandwidth:
uses Direct2D, D2D1;procedure TForm1.FormPaint(Sender: TObject);var cvs: TDirect2DCanvas; iBrush: ID2D1RadialGradientBrush; R: TRect; rRGBP: TD2D1RadialGradientBrushProperties; //結構包含:中心點、位移點、橫向半徑、縱向半徑 arrGradientStop: array[0..1] of
IDirectSoundFXI3DL2Reverb8 效果器除了擁有 GetAllParameters()、SetAllParameters() 外, 還比其它效果器多出了四個方法:GetQuality()、SetQuality()、GetPreset()、SetPreset().{相關結構:}TDSFXI3DL2Reverb = packed record lRoom: Longint; //-10000 : 0 : -1000 (mB) lRoomHF:
這必須手動建立主要緩衝區.unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Button1: TButton; procedure FormCreate(Sender: TObject); procedure
uses NativeXml; procedure TForm1.Button1Click(Sender: TObject); var xml: TNativeXml; node: TXmlNode; begin xml := TNativeXml.CreateName('List'); xml.XmlFormat := xfReadable; node := xml.Root.NodeNew('item'); node.AttributeAdd('ID', '1')
建立 IDirectSound8 對象後, 首先要通過其 SetCooperativeLevel() 方法設定協作優先順序;因為其它應用程式有可能同時使用該裝置(音效卡), 這是必需的步驟.function SetCooperativeLevel( hwnd: HWND; //視窗控制代碼 dwLevel: DWORD //協作優先順序): HResult; stdcall;//協作優先順序選項DSSCL_NORMAL = 1; //普通; 使用次緩衝區, 不能修改、壓縮、
次緩衝區(或叫輔助緩衝區)儘管使用了波形檔案自己的 TWaveFormatEx, 但最終播放的卻只是 22050HZ 的 8 位立體聲.因為次緩衝區最終要混入主要緩衝區才播放, 可主要緩衝區的預設格式是 22050HZ 的 8 位立體聲(這利於在不同應用程式之間的平滑切換).次緩衝區一旦建立, 其格式就無法修改了(無法使用緩衝區對象的 SetFormat() 方法); 好在主要緩衝區可以重設格式.也就是說, 播放 44100HZ、16 位的 Wave 時,
{相關結構}TDSFXChorus = packed record //最大值 .. 最大值 : 預設值 fWetDryMix: Single; // 0 .. 100 : 50 (%) fDepth: Single; // 0 .. 100 : 10 (%) fFeedback: Single; //-99 .. 99 : 25 (%) fFrequency: Single; // 0 .. 10 : 1.1 lWaveform: Longint; // 0 .
{相關結構:}TDSFXEcho = packed record fWetDryMix: Single; //0 .. 100 : 50 (%) fFeedback: Single; //0 .. 100 : 50 (%) fLeftDelay: Single; //1 .. 2000 : 500(ms) fRightDelay: Single; //1 .. 2000 : 500(ms) lPanDelay: Longint; //0 .. 1 : 0