Voice Recognition - MFCC
Regarding your existing steps:


Do you have some overlap between adjacent blocks? It is common in feature extraction systems to have some overlap between adjacent blocks, so that a short transient event can be correctly captured (if it is right at the end of a block, it will be right in the middle of the next one).
Your idea of discarding blocks is dangerous. You can do this to roughly identify the beginning and end of a speech segment; but silence recognition can also be built into the recognition model.


Regarding the data size:

Your signal is split into frames. For each frame, you compute a 1-D MFCC vector. So in the end, you have a sequence of 1-D MFCC vectors. This is the data on which you train your HMMs.