CENL: VideoRecord and VideoAnalyze


Two VIs to acquire and analyze (rat) behavioral data from any webcam and sound source. VideoRecord records a movie (.AVI) with time stamps and user annotations. This VI synchronizes with the Cheetah data acquisition system and also captures two audio channels at up to 192k Samples/sec. VideoAnalyze reads an AVI movie and lets the user annotate further and export the time stamped anotations to an excel spreadsheet. These VIs are used to record and analyze behavioral data such as grooming, sleeping, rearing, interactions with an objects and so on. All events and annotations are user-definable and time stamped. A third program utility ExtractVideoMetadata extract all metadata from the AVI movie and saves them (frame-stamped) to an excel spreadsheet.

The software is composed of two components: VideoRecord acquires the data from a web-cam and audio source, and VideoAnalyze allows further event editing and output to excel. You need to install labview 2012 RunTime Engine (free from National Instruments) and the vision run time engine (may or may not be free for you) to run this software. An older version of the software for LabView2009 can be found here.

Sponsored by NSF grant: CRCNS 1010172.


VideoRecord.exe is the acquisition module. It captures a live video stream from a USB webcam attached to the computer. It saves the video and the data (timestamped events) in a compressed AVI file (you choose the compressor) that can be read by any movie player. VideoRecord can also capture an audio file from two channels at 22050, 44100 or 192000 samples per seconds. This .wav file can be played by any player. One of the channels contains synchronization information that can be used to sync frame by frame with the video. Users can define their own events (edit the 'Standardevents.txt' file). Frame rate is dynamically adjusted to a user-defined value (i.e. is insensitive to computer usage/load). VideoRecord can be synchronized with Neuralynx's Cheetah system, or with our LabBook software (to share time stamps). There can be multiple instances of VideoRecord (i.e. you can record from multiple webcam simultaneously, sharing the time stamps). You can record 'free running' or for a specified amount of time (countdown).


VideoAnalyze.exe takes an AVI movie (whether created by VideoRecord or not) and allows the user to attach events to relevant frames. The events are stamped by the frame number and exported to an excel spreadsheet. Users can define their own events (edit the 'Standardevents.txt' file), and can create a start-stop event types (edit the BehavioralEvents.txt' file). These events can be triggered while the movie is playing (e.g. 'grooming') and the word start_ and stop_ will be appended depending on the position of the switches. The program will generate a new movie with the events, as well as a separate spreadsheet containing the stamped events for off-line analysis.

Brought to you by the Computational and Experimental Neuroscience Laboratory