I realise this question isn't entirely objective (it presumably depends on load, server capacity, etc) but caveat aside:
In our application we send an RTMP (H264/SPEEX) stream to a Wowza endpoint set up to transcode to MP4/H264 (passthrough on the H264, SPEEX transcoded to AAC) and save the content to disk. When the stream has terminated, we wait for the <streamname>_aac.mp4.tmp file to be removed (if present) then pull the <streamname>_aac.mp4 file into our app.
We've been working under the assumption that whilst there may be some delay between stream termination and the transcoder completing writing the MP4 (as indicated by the presence of the .tmp file), but this would be small (a second or so) so it wouldn't present a problem for a customer to wait on this.
Is this assumption valid, or do you know of situations whereby the transcoder could take a long time to complete writing the file? If we were streaming for a long time, for instance, or the source bitrate were very high, could these lead to long delays in the transcoder completing?