mirror of
https://gitlab.com/freepascal.org/fpc/source.git
synced 2025-09-03 20:30:55 +02:00
+ also check the actual PCM wave data in the fcl-sound wavreader test
git-svn-id: trunk@47452 -
This commit is contained in:
parent
1d34f0f139
commit
188054d9b4
5
.gitattributes
vendored
5
.gitattributes
vendored
@ -4319,14 +4319,19 @@ packages/fcl-sound/src/fpwavreader.pas svneol=native#text/plain
|
||||
packages/fcl-sound/src/fpwavwriter.pas svneol=native#text/plain
|
||||
packages/fcl-sound/tests/data/wav/reader/valid/44k_mono_16.wav -text svneol=unset#audio/x-wav
|
||||
packages/fcl-sound/tests/data/wav/reader/valid/44k_mono_16.wav.info.txt svneol=native#text/plain
|
||||
packages/fcl-sound/tests/data/wav/reader/valid/44k_mono_16.wav.raw -text
|
||||
packages/fcl-sound/tests/data/wav/reader/valid/44k_mono_16_tag.wav -text svneol=unset#audio/x-wav
|
||||
packages/fcl-sound/tests/data/wav/reader/valid/44k_mono_16_tag.wav.info.txt svneol=native#text/plain
|
||||
packages/fcl-sound/tests/data/wav/reader/valid/44k_mono_16_tag.wav.raw -text
|
||||
packages/fcl-sound/tests/data/wav/reader/valid/44k_mono_24.wav -text svneol=unset#audio/x-wav
|
||||
packages/fcl-sound/tests/data/wav/reader/valid/44k_mono_24.wav.info.txt svneol=native#text/plain
|
||||
packages/fcl-sound/tests/data/wav/reader/valid/44k_mono_24.wav.raw -text
|
||||
packages/fcl-sound/tests/data/wav/reader/valid/44k_mono_32.wav -text svneol=unset#audio/x-wav
|
||||
packages/fcl-sound/tests/data/wav/reader/valid/44k_mono_32.wav.info.txt svneol=native#text/plain
|
||||
packages/fcl-sound/tests/data/wav/reader/valid/44k_mono_32.wav.raw -text
|
||||
packages/fcl-sound/tests/data/wav/reader/valid/44k_mono_8.wav -text svneol=unset#audio/x-wav
|
||||
packages/fcl-sound/tests/data/wav/reader/valid/44k_mono_8.wav.info.txt svneol=native#text/plain
|
||||
packages/fcl-sound/tests/data/wav/reader/valid/44k_mono_8.wav.raw -text svneol=unset#application/octet-stream
|
||||
packages/fcl-sound/tests/tcwavreader.pas svneol=native#text/plain
|
||||
packages/fcl-sound/tests/testfclsound.lpi svneol=native#text/plain
|
||||
packages/fcl-sound/tests/testfclsound.lpr svneol=native#text/plain
|
||||
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@ -0,0 +1 @@
|
||||
唽摍煡<EFBFBD>祷棵撬涡矣栽右型势陆繁<EFBFBD>潟巻wpic\WRNKHGFFGILOTY^djqx~厠憱殲。ゥぃ<E382A5>殩拲垉~zvromlkklmoqsvy|
|
@ -27,7 +27,12 @@ const
|
||||
var
|
||||
WavReader: TWavReader;
|
||||
InfoFile: TextFile;
|
||||
ExpectedSampleRate, ExpectedChannels, ExpectedBitsPerSample : Integer;
|
||||
RawDataFile: File;
|
||||
ExpectedSampleRate, ExpectedChannels, ExpectedBitsPerSample: Integer;
|
||||
ExpectedData: array of Byte;
|
||||
ActualData: array of Byte;
|
||||
ActualDataLen: Integer;
|
||||
SaveFileMode: Byte;
|
||||
begin
|
||||
AssignFile(InfoFile, CorrectFileDir + FileName + '.info.txt');
|
||||
Reset(InfoFile);
|
||||
@ -37,6 +42,21 @@ begin
|
||||
CloseFile(InfoFile);
|
||||
end;
|
||||
|
||||
SaveFileMode := FileMode;
|
||||
try
|
||||
FileMode := 0;
|
||||
AssignFile(RawDataFile, CorrectFileDir + FileName + '.raw');
|
||||
Reset(RawDataFile, 1);
|
||||
try
|
||||
SetLength(ExpectedData, FileSize(RawDataFile));
|
||||
BlockRead(RawDataFile, ExpectedData[0], Length(ExpectedData));
|
||||
finally
|
||||
CloseFile(RawDataFile);
|
||||
end;
|
||||
finally
|
||||
FileMode := SaveFileMode;
|
||||
end;
|
||||
|
||||
WavReader := TWavReader.Create;
|
||||
try
|
||||
if not WavReader.LoadFromFile(CorrectFileDir + FileName) then
|
||||
@ -44,6 +64,10 @@ begin
|
||||
AssertEquals('Incorrect sample rate', ExpectedSampleRate, WavReader.fmt.SampleRate);
|
||||
AssertEquals('Incorrect number of channels', ExpectedChannels, WavReader.fmt.Channels);
|
||||
AssertEquals('Incorrect number of bits per sample', ExpectedBitsPerSample, WavReader.fmt.BitsPerSample);
|
||||
SetLength(ActualData, Length(ExpectedData));
|
||||
ActualDataLen := WavReader.ReadBuf(ActualData[0], Length(ActualData));
|
||||
AssertEquals('Data length', Length(ExpectedData), ActualDataLen);
|
||||
AssertTrue('Data differs', CompareMem(@ExpectedData[0], @ActualData[0], ActualDataLen));
|
||||
finally
|
||||
FreeAndNil(WavReader);
|
||||
end;
|
||||
|
Loading…
Reference in New Issue
Block a user