run in backgroud; add upload job for recording