output/recorder: move functions into the struct