Raw speech data into spectrogram
In principle what you describe is reasonable. Here's an example in Python that implements your idea:

Fs = 44100
T = 100
t = np.arange(0, T, 1/Fs)
N = 1024
t = t[:N*int(len(t)/N)]

f = 0.7*t*t+2000

signal = np.sin(2*np.pi*f*t)  # generate some signal for our analysis

chunks = signal.reshape((-1, N))   # create chunks of the signal of length N
C = np.fft.fft(chunks, axis=1)     # perform FFT of each chunk
C = C[:, :N//2] # keep only positive frequencies

Spec = 10*np.log10(abs(C*C))      # draw the spectrum
plt.imshow(Spec.T);




I can only recommend to try out your DSP algorithms not in Delphi but in some scripting language like Python or Matlab, because you are much more flexible in your analysis and can try out new ideas much more quickly. 

To improve the spectrum image, you can use a different window function (i.e. no rectangular window as I use here) and overlap the different chunks. Then, it would be closer to the short-time Fourier transform as noted by MBaz.