Summary
The Continuous Measurement System (CMS) software allows the user to rate or code behavior continuously in time. The CMS is joystick/mouse operable software for obtaining continuous reactions to videotaped behavior. The CMS coding software can be used for continuous expert coding of videotaped behavior. It can also be used for rating behavior continuously. Upon completion of using the coding or rating software, a read-out is generated summarizing the coded or rated values. As a rating system, the CMS allows efficient, transparent, replicable measurement of social behavior or other stimuli from multiple non-experts whose ratings are typically aggregated to increase their precision and generalizability.
The software is made available courtesy of R21HD052062 with additional support from 1R01GM105004, NSF 0808767, and NSF 1052736. Please reference the following in publications utilizing the software:
Messinger, D. S., Mahoor, M., Chow, S., & Cohn, J. F. (2009). Automated Measurement of Facial Expression in Infant-Mother Interaction: A Pilot Study. Infancy, 14.
Notes
The CMS software is now able to present multiple formats of digital video reliably and at different frame rates. The CMS software works best with video files with extensions including .avi, .mpg, .wmv, and .vob.
Coding is done with a mouse. Rating can be done with a mouse or a joystick. A joystick (Logitech Attack 3) that can be used for rating can be purchased at amazon.com.
Please email [email protected] about scientific issues and technical issues.
Installation
This software has been designed to run on Windows 7. Mac users can run CMS using Boot Camp, which is included with OS X. Detailed instructions for running Boot Camp can be found here. Before installing the CMS software, please install the latest version of Microsoft DirectX and the latest Microsoft DirectX Runtimes.
To install the CMS, select the software (coding or rating) you would like to download below. download the appropiate zip file, extract, and run setup.exe. The program will self-install and contains a help file. The CMS is open source, which means it is a work in progress that you can tailor for your own uses should you wish to. The source code for the CMS is available at the bottom of this page. Please send us any modifications so we can create a better CMS.
CMS Coding softwareCMS Rating software
Usage
Video Codecs
Video codecs (Wikipedia) are software profiles that determine the way that the data in a video file is encoded and decoded. The codecs installed on an given computer will impact whether CMS can access a given video file and the frame count that CMS assigns to that video file. The frame count can be altered within CMS but the user must test for the integrity of the resulting video. Repeated frames have been reported by users using video files recorded at 25 fps. We have not been able to replicate this problem and operate under the assumption that this reflects differences between the codecs used to encode and decode the files. A helpful set of codecs is available at http://www.free-codecs.com/download/k_lite_codec_pack.htm.
CMS Rating Software List File (.exp) Creation
List files, which have a .exp extension, are the ‘instructions’ for CMS to call-up (i.e., play) a given set of video clips. By default, CMS will play videos in sequence, but files can also be randomized for order of presentation each time a list file is called up.
Listfiles end with a .exp suffix. They may be created using Microsoft notepad. If so, you will need to change the .txt suffix to .exp.
It is easiest to store and save list files in the same root directory (folder) where the video clips to be played back are located.
Below is a sample of a list file. Video file names must be delineated EXACTLY as they appear in the root directory. If text is incorrect, the entire list file will not playback. Instructions follow the example:
[Title=MyTitle]
Level1=0 Top5
Level2=50 Top4
Level3=100 Top3
Level4=200 Top2
Level5=300 Top1
Level6=500 Center
Level7=600 Bottom1
Level8=700 Bottom2
Level9=800 Buttom3
Level10=900 Buttom4
Level11=1000 Buttom5
DMG1=MyDMG1
DMG2=MyDMG2
DMG3=MyDMG3
DMG4=MyDMG4
DMG5=MyDMG5
DMG6=MyDMG6
DMG7=MyDMG7
DMG8=MyDMG8
SavePath=C:\TEMP\TEST\
Mode=RANDOM
INPUT=Mouse or INPUT=Joystick
------------------------------------
C:\AACT_Memphis\Friends[1].avi
0
C:\AACT_Memphis\MVI_1903.avi
990
[Title=MyTitle]
Level1=0 Top5
Level2=50 Top4
Level3=100 Top3
Level4=200 Top2
Level5=300 Top1
Level6=500 Center
Level7=600 Bottom1
Level8=700 Bottom2
Level9=800 Buttom3
Level10=900 Buttom4
Level11=1000 Buttom5
DMG1=MyDMG1
DMG2=MyDMG2
DMG3=MyDMG3
DMG4=MyDMG4
DMG5=MyDMG5
DMG6=MyDMG6
DMG7=MyDMG7
DMG8=MyDMG8
SavePath=C:\TEMP\TEST\
Mode=RANDOM
INPUT=Mouse or INPUT=Joystick
------------------------------------
C:\AACT_Memphis\Friends[1].avi
0
C:\AACT_Memphis\MVI_1903.avi
990
Syntax for .exp files
Title specifies what overall label appears above the rating bar
LevelX=A B
Specifies the Xth mark along the rating bar, at the A level of rating (-1000 to 1000) with the label B. You can specify any number of labels. If you do not specify and labels, none will appear.
DMGX=A
Specifies up to 8 demographics variables, the Xth demographic has the label A.
SavePath=X
Specifies that rating data files will be saved by the program to the folder X. This should include the full path, i.e. C:\Directory\
Mode=X
Specifies the order to play videos. Can be set to SEQUENCE or RANDOM. SEQUENCE will present videos in order, RANDOM will present a different order each time the videos are played. If you do not write this line, the software will play videos in SEQUENCE.
INPUT=X
Specifies the method use to rate as X, either Mouse or Joystick.
------------------------------------
This line lets the software know you are now specifying videos.
There are two ways to set which videos to play
Method 1:
C:\Videos\Test.avi
0
This first method has you specify the path of the video, this is followed on the next line with the number 0. When 0 is entered it tells the software to gather measurements for every frame of video in the file. Default to this method if you are not rating your videos in a special way, or if you want data at the most frequent rate allowed by your video.
Method 2:
C:\Videos\Test2.avi
33
This second method has you specify the path of the video, this is followed on the next line with a number greater than 0. This number specifies how many times to gather data in the video file. This is primarily for users familiar with video files and frames/frame rates. Use this method if you want to gather data over a bigger interval such as seconds. For example, if you had a video file that had a frame rate of 30 frames per second that lasted 990 frames and wanted to gather data every second, you would specify 33 here. You can also use this method to match video coding with another measure, just specify the same number of total measurement occasions of the measure you are matching here.
LevelX=A B
Specifies the Xth mark along the rating bar, at the A level of rating (-1000 to 1000) with the label B. You can specify any number of labels. If you do not specify and labels, none will appear.
DMGX=A
Specifies up to 8 demographics variables, the Xth demographic has the label A.
SavePath=X
Specifies that rating data files will be saved by the program to the folder X. This should include the full path, i.e. C:\Directory\
Mode=X
Specifies the order to play videos. Can be set to SEQUENCE or RANDOM. SEQUENCE will present videos in order, RANDOM will present a different order each time the videos are played. If you do not write this line, the software will play videos in SEQUENCE.
INPUT=X
Specifies the method use to rate as X, either Mouse or Joystick.
------------------------------------
This line lets the software know you are now specifying videos.
There are two ways to set which videos to play
Method 1:
C:\Videos\Test.avi
0
This first method has you specify the path of the video, this is followed on the next line with the number 0. When 0 is entered it tells the software to gather measurements for every frame of video in the file. Default to this method if you are not rating your videos in a special way, or if you want data at the most frequent rate allowed by your video.
Method 2:
C:\Videos\Test2.avi
33
This second method has you specify the path of the video, this is followed on the next line with a number greater than 0. This number specifies how many times to gather data in the video file. This is primarily for users familiar with video files and frames/frame rates. Use this method if you want to gather data over a bigger interval such as seconds. For example, if you had a video file that had a frame rate of 30 frames per second that lasted 990 frames and wanted to gather data every second, you would specify 33 here. You can also use this method to match video coding with another measure, just specify the same number of total measurement occasions of the measure you are matching here.
Source Code - recommended for experienced users only
We have provided the source code for use in the development in your own applications or modifiying the application for your purposes. Please share anything you think might be useful.
Click here to download the CMS source code.
Click here to download the CMS source code.