{$H2560} program pcmtest2; uses pcmaudio; var filename:string; buf:SndBufPtr; sampleRate:integer; err:integer; done:boolean; c:char; function readAudioFile(fname:string):SndBufPtr; var i,size:integer; c:char; buf:SndBufPtr; f:file; begin open(f, fname, ModeReadOnly); size := FileSize(f); new(buf, size); buf^ := ''; write('Reading ', size, ' bytes...'); for i := 1 to size do begin read(f,c); AppendChar(buf^,c); end; writeln; close(f); readAudioFile := buf; end; begin if ParamCount > 0 then filename := ParamStr(1) else begin write('Filename> '); readln(filename); end; err := 1; if ParamCount > 1 then val(ParamStr(2), sampleRate, err); if err > 0 then sampleRate := 32000; buf := readAudioFile(filename); SampleQStart(buf, sampleRate); write('Press ESC to stop> '); done := false; while not done do begin read(c); if c = #27 then begin done := true; writeln(';'); end else if c = '?' then begin writeln; writeln('Queue: ', SampleQSize); end; end; SampleQStop; dispose(buf); end.