1. Why is it that when I push record, sometimes I get this hangup? When it does record, it works fine, usb bandwidth does not seem to be an issue ( <5 frame drops for a 10 minute video ).
1a. Is there something that happens at the very beginning of a recording that does not happen during the recording that causes the hangup?
Of course, there is some initialization of various components necessary for recording process (encoder, disk writer, etc.). Maybe for some reason this takes unexpectedly much time and this situation is wrongly treated as hang up. Other possible reason I can think of is initial synchronization of frames from different cameras, which again takes much more time than expected (usually a couple of frames is sufficient to make cams in sync).
It's hard to say what is the real reason in your case without having your laptop at hands :) We'll work at this code by the next update of iPi Recorder to reduce the probability of false hang up detections.
2. Why do I have to restart the program in order for it to record again?
What do you mean you cannot record after that error? The application hangs and not responding on user actions, or you get another error when trying to start recording again, or something else?