Skip to main content

Video coder for psychological experiments

Project description

ViCodePy – Video coder in Python for Experimental Psychology

PyPI Version License

ViCodePy is an application for doing video coding, written entirely in Python, meant essentially for use in Experimental Psychology. ViCodePy looks like a video editor, but it is not possible to alter the video file loaded into it. Instead, it is possible to add temporal occurrences and save them as CSV (comma-separated value) files.

Installation

The application is available at PyPI and can be installed via:

python -m pip install vicodepy

On Linux, In order to avoid the following warning at startup:

qt.multimedia.ffmpeg.libsymbolsresolver: Couldn't load VAAPI library

please install the libav-dev package (in Debian derivatives).

The application was developed primary on Linux and Windows, but should also work on MacOS.

Usage

Loading the video file

After launching the application (vicodepy.exe on Windows, vicodepy on Linux and MacOS), a video file can be loaded via the menu entry File⇒Open…. Almost all popular video formats are supported. It is also possible to load a “project” file, in the ZIP format. This file contains a video file and the configuration and data files bundled together. Current work can then be saved to this project file and the worked can be resumed later. For the technical details about the project file, see the FORMAT specification file.

Playing/stopping the video and moving around it

Once the video is loaded, it can be played and stopped using the space key. The left and right arrow keys can be used for going backward and forward, respectively, by one frame in the video. Positioning the cursor (a black triangle) with the mouse is also possible by clicking and dragging the cursor on the time pane.

The time pane and its timelines

Events

Event occurrences

Event occurrences can be defined by pressing the enter key. This will mark one of the borders of the occurrence. The other border can be defined by using the arrow keys or by clicking and dragging the cursor. Once the cursor is at the desired position, type enter again. This will open a dialog window for choosing the label and the color of the occurrence. New labels can be defined in the dialog window by simply typing them. The new created labels will appear in the list of proposed labels when new occurrences will be subsequently created.

Once an occurrence is created, it is possible to change its borders by double-clicking on the occurrence. Two handles will appear, one at the left border of the occurrence and the other at the right border. Click on a border handle and move it with the left and right arrow keys.

The creation of an occurrence can be aborted, once it is start by either typing the Escape key or by clicking on the Abort button in the pop-up window.

The timeline can be zoomed in and out by using the scroll wheel of the mouse.

The occurrences can be saved as a CSV file via the menu item File⇒Export CSV….

Configuration

(more to come later)

Contributing

The source code will be available in a public repository at the Gitlab instance of the University of Grenoble Alpes.

Authors

Copyright (C) 2024 Esteban Milleret (esteban.milleret@etu.univ-grenoble-alpes.fr)

Copyright (C) 2024 Rafael Laboissière (rafael.laboissiere@cnrs.fr)

License

This project is licensed under the terms of the GPL 3.0 or later.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vicodepy-0.12.7.tar.gz (61.8 kB view hashes)

Uploaded Source

Built Distribution

vicodepy-0.12.7-py3-none-any.whl (70.2 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page