From 705d471fc533390dae1aae3d39ff599eb9989e52 Mon Sep 17 00:00:00 2001 From: yamat0jp Date: Thu, 17 May 2018 22:06:01 +0900 Subject: [PATCH] =?utf8?q?=E3=83=AA=E3=83=B3=E3=82=B0=E5=A4=89=E8=AA=BF=20?= =?utf8?q?=E4=B8=AD=E9=80=94=E5=8D=8A=E7=AB=AF=E3=81=AB=E5=AE=9F=E8=A3=85?= MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit --- effect.pas | 28 +++++++++++----------------- wav_proj.dpr | 2 -- wav_proj.identcache | Bin 436 -> 301 bytes 3 files changed, 11 insertions(+), 19 deletions(-) diff --git a/effect.pas b/effect.pas index 14b6b32..b44b6e2 100644 --- a/effect.pas +++ b/effect.pas @@ -38,8 +38,8 @@ begin inc(R, DuetR); L := max(-128, min(127, L)); R := max(-128, min(127, R)); - pMem[i + 0] := L+128; - pMem[i + 1] := R+128; + pMem[i + 0] := L + 128; + pMem[i + 1] := R + 128; inc(i, 2); end; except @@ -48,12 +48,14 @@ begin end; function effect16BitWav(const sp: SpParam): integer; +const + depth = 1.0; + rate = 150.0; var - i, delayStart: integer; - k: Single; + i: integer; + k, m: Single; pMem, pCpy: array of SmallInt; s: TMemoryStream; - L, R, DuetL, DuetR: integer; begin result := 0; s := TMemoryStream.Create; @@ -63,21 +65,13 @@ begin s.Position := 0; s.Read(Pointer(pCpy)^, sp.sizeOfData); pMem := sp.pWav; - delayStart := sp.posOfData + sp.samplePerSec * sp.cyclicSec; - i := delayStart + sp.posOfData; + i := sp.posOfData; k := 8 * sp.sizeOfData / sp.bitsPerSample; while i < k do begin - L := pMem[i + 0]; - R := pMem[i + 1]; - DuetL := pCpy[i + 0 - delayStart]; - DuetR := pCpy[i + 1 - delayStart]; - inc(L, DuetL); - inc(R, DuetR); - L := max(-32768, min(32767, L)); - R := max(-32768, min(32767, R)); - pMem[i + 0] := L; - pMem[i + 1] := R; + m := sin(depth * rate * pi * i / sp.samplePerSec); + pMem[i + 0] := trunc(m * pMem[i + 0]); + pMem[i + 1] := trunc(m * pMem[i + 1]); inc(i, 2); end; except diff --git a/wav_proj.dpr b/wav_proj.dpr index 1d8052d..a59ce19 100644 --- a/wav_proj.dpr +++ b/wav_proj.dpr @@ -22,8 +22,6 @@ var i: integer; begin sp.pWav:=pMem.Memory; - Writeln('‚Qd¥‚ÌŽžŠÔ·'); - Readln(i); sp.cyclicSec:=i; result:=0; end; diff --git a/wav_proj.identcache b/wav_proj.identcache index 4d0a59c170390295ba949715ad0d1dd81599e3b5..499358585407bd6f5950451a80647a6d74c7db59 100644 GIT binary patch literal 301 zcmZQ&U|`U8wu%WYPAw{qsZ7jGEQxW+PcF?(%_}L6anCIAC{2nfPb>pry@JGIpmI3S zBSv3pT3Tvy3A$DTVzdISj4vq4&(cdND1uuGWEc^nxi~ckXs=slPAam= E07EBR%m4rY literal 436 zcmbu*!3x4K3;@tx{GEM(S9Lf<5JbELBx^I6tTrUwWPfkG?9giifsnup$<8@ZUu^9ruo$;RSLxC)*rtY2 fH`0o8rK