Having some trouble understanding this concept, really could do with some advice.

I want my STFT to have the following parameters: NFFT = 256 overlap/hop = 128

Now essentially, the algorithm will work as follows:

1) Split the signal into blocks of 256 


This will result in around 72*265:

2) For each of these blocks, calculate against the Hanning Window 

3) Create a "slider" that does an overlap of 128.. So, in theory it would 
   therefore be: `size = 256 + 128` 


Therefore, when I'm computing the DFT for each of the overlapped blocks, will my FFT remain at size 256 or will the size be 256 + 128 If this is the case, does each block in the resulting vector still have to be of size 256?

Thanks  

EDIT: 

This is now my result:



But, compare this to a spectrogram in matplotlib



Where am I actually going wrong? I cannot make any sense of this. 

I've looked bat through all the data, the blocks are correctly overlapping, Hanning window is being applied correctly.

Could it be to do with the fact I'm using a 1D DFT? I.e. 

std::vector&lt;complex&gt; FFT-&gt;transform(complex_vector[0...n], 256);



Question: iOS fetching from managed object context before saved
Answer: I guess you're using UIDocument when you say 'auto-saving'. If you aren't, then there is no 'auto-saving' (except when using Apple template code and the app delegate saves before termination).

When you create the fetch request, you can choose whether it should include unsaved items using the includesPendingChanges property. It defaults to YES so by default you will see unsaved items in the results.