How can I record live gameplay and play it back late from a diff. angle?

See also https://answers.unrealengine.com/questions/65172/how-to-record-some-real-time-action-and-replay-it.html