Maybe we should have an helper method for setting up these recording callbacks since we do it three times already?