안녕하세요..
어디서 소스를 하나 받았는데.. 보고 있거든요?
UDP 로 받은 PChar 형 버퍼(음성)를 아래 함수로 플레이 시키는것인데요..
PlayBack 으로 넘겨받은 Data:pinter 랑 memblock 이랑 뭐가 다른거죠?
답변 주시면 감사하겠습니다..
procedure TACMWaveOut.PlayBack(data:pointer;size:longint);
var
Header:PWaveHdr;
memblock:pointer;
i:integer;
begin
if HWaveOut1<>nil then
begin
header:=new(PWaveHdr);
memblock:=new(pointer);
getmem(memblock,size);
move(data^,memBlock^,size);
header.lpdata:=memBlock;
header.dwbufferlength:=size;
header.dwbytesrecorded:=size;
header.dwUser:=0;
header.dwflags:=0;
header.dwloops:=0;
i:=WaveOutPrepareHeader(HWaveOut1^,header,sizeof(TWaveHdr));
if i<> 0 then showmessage('WaveOutPrepareHeader error');
i:=WaveOutWrite(HWaveOut1^,header,sizeof(TWaveHdr));
if i<> 0 then showmessage('WaveOutWrite error');
end;