Цитата:
Сообщение от Dmitry_DM
Пока что у меня проблемы с записью данных в memo1. Можете посмотреть на код и сказать что сделать, что бы данные шли в своем порядке. А то ни как не могу сделать красиво и ровно. должно быть так:
Код:
RIFF
chunkSize 2194
WAVE
fmt
subchunk1Size 16
audioFormat 1
numChannels 1
sampleRate 22050
byteRate 44100
blockAlign 2
bitsPerSample 16
data
subchunk2Size 2158
А оно все так:
Код:
RIFF
WAVE
fmt
16
data
2158
audioFormat 0001
numChannels 1
sampleRate 22050
byteRate 44100
blockAlign 2
bitsPerSample 16
|
В приведённом коде я вообще не вижу где идёт вывод в Memo1 кроме этих двух строчек:
Код:
Form1.memo1.Lines.Add(RiffChunk.RiffSign);
Form1.memo1.Lines.Add(RiffChunk.WaveSign);
И кроме того этим двум строчкам не место в процедуре ReadWavInfo, так как эта процедура абстрагирована от элементов управления. Выводить нужно в методе формы, например в ButtonClick. И Form1 в нём указывать не нужно.
Цитата:
Сообщение от Dmitry_DM
Так же отмечу, что не могу найти 2 значение chunkSize. Не вывести, не мне даже понять, в каком месте оно читается.
|
А зачем его выводить? В информационных целях чтоли?
Размер чанка 'RIFF' читается здесь:
Код:
fs.ReadBuffer(RiffChunk, SizeOf(RiffChunk));
А размер внутренних чанков ('fmt ', 'data' и остальных если есть) читаются здесь:
Код:
fs.ReadBuffer(Chunk, SizeOf(Chunk));