Open main menu

DAVE Developer's Wiki β

Changes

Software implementation
[[#fig1|Figure 1]] also shows a simplified block diagram of the application software architecture that was developed to implement this solution. The application is a multi-threaded program. The high-level business logic is coded in a finite state machine (FSM), which interacts with the threads. Each thread takes care of a particular task.
During normal operation, the high-frame-rate stream (indicated by the red flow in the previous picture) generated by the image sensor is acquired by the thread T1. This stream indicated by the red flow in the previous picture. T1 also stores these the frames coming from the sensor into the alarm buffer and passes them to the thread T4 after a down rate conversion (low-frame-rate stream is denoted in green). In parallel, T4 creates a compressed video stream to be transmitted over the local network.
When an alarm is detected by thread T3, T2—which is usually idle—is enabled. Once the alarm buffer is filled, this thread stores it persistently on a solid-state drive (SSD).
===Sizing the alarm buffer===
Alarm buffer's size is related to the size of the time window surrounding the alarm event, as depicted in the previous following image.
TBD[[File:MISC-TN-015-alarm-buffer.png|thumb|center|Fig.2: Time window surrounding an alarm event]]
===Alarm recordings===
 
==Future work==
4,650
edits