4 #include "drivesync.inc"
7 #include "recordaudio.inc"
8 #include "recordvideo.inc"
12 // Synchronously handle recording and monitoring
14 class RecordThread
: public Thread
17 RecordThread(MWindow
*mwindow
, Record
*record
);
21 int start_recording(int monitor
, int context
);
22 int stop_recording(int resume_monitor
);
23 int pause_recording();
24 int resume_recording();
25 int64_t sync_position();
30 int quit_when_completed
;
31 RecordAudio
*record_audio
;
32 RecordVideo
*record_video
;
33 // Whether to write data to disk
35 // Whether to open audio device or record single frame
37 // CONTEXT_INTERACTIVE, CONTEXT_BATCH, CONTEXT_SINGLEFRAME
50 Mutex pause_lock
, startup_lock
, completion_lock
, loop_lock
;
51 // Lock termination variables to positions where batches aren't being started.
53 // Override the operating system