The standard way to sync pyPhotometry data with other systems is using sync pulses sent to one of the pyPhotometry digital inputs. We typically do this by using our pyControl behavioural hardware to send sync pulse trains to all the systems that need to be synchronised with each other (e.g. photometry and video) and use the pulse times recorded on each system to align the data, see the pyControl
synchronisation docs for details. For this approach to work your video recording system would need to be able to record the state of a digital input on each frame of the video. We use FLIR (formerly PointGrey)
Chameleon 3 cameras which have a GPIO port that can recieve a digital input, and use Bonsai to record the video and pin-state data from the camera (using the workflow
here).