A pyGTK and vlc based application to hand-annotate audio and video files for classification tasks
Project description
pyMediaAnnotator
A GTK+ and vlc based application for annotating video and audio files for classification tasks
Features:
- Add text annotations time-locked to content in media file
- Annotate time accurate to the millisecond
- Jump to annotation start time to verify correctness
- Standard media playback features (play/pause, stop, seek)
- Change annotation task mid-video
- Edit annotation label for particular time segment
- Delete annotation entry
- Undo annotation segment (in the order of most recent)
- Sort annotations by starttime by clicking on column header so that you can go back and re-annotate a particular segment of media
Changelog:
v0.1.9:
- Implement loading an existing annotation file at the start
Planned features and bugfixes for future releases:
- Save, exit, and resume: be able to load existing annotation file
- The YAML format was chosen because it is convenient and human-readable. However, in the future, the user should be able to choose output format (
json
,pickle
,txt
, Numpy array, etc.) - Fix seek bar synchronization with playback
- Multiple button support for rapid multiclass annotation
Installation:
From pyPI using pip
:
python3 -m pip install --upgrade [--user] pyMediaAnnotator
The --user
flag installs it locally
without needing root
(optional).
If you are able to ensure the availability of GTK bindings from some other source, you could skip installing pyGTK:
python3 -m pip install --upgrade [--user] --no-deps pyMediaAnnotator
From source
-
Clone the repository
git clone https://gitlab.com/aalok-sathe/pyMediaAnnotator.git
cd pyMediaAnnotator
-
Make sure to have the necessary prerequisites:
pyGTK/pyGObject
: Python GTK bindingsvlc
,python-vlc
: the VLC media player and Python bindings forlibvlc
$ python3 -m pip install --upgrade -r requirements.txt
-
Create Python package and install:
make build
python3 setup.py install
Usage:
$ pyMediaAnnotator
Screenshot (v0.1.2): example usage to annotate the laugh track in an episode of Friends ![example usage](scrsht-friends.png?raw=true Screenshot")
Compatibility:
- GNU/Linux, *NIX [recommended]:
- Expected to run smoothly with proper prerequisites
- Tested on Ubuntu 16.04
- Any other system:
- Not tested, however, should theoretically work long as you are able to provide pyGTK and libvlc support
Bugs?
- Get in touch. Please try to see debug output in terminal and save it if you notice a bug.
- Contribute! PRs are welcome and will be reviewed.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for pyMediaAnnotator-0.1.9.post1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | b9410adb999a15654353e461113e2358bf2db7447c94f12b0e731591d9b51636 |
|
MD5 | 26c368ea160cf41c1ccddd0aa972996c |
|
BLAKE2b-256 | 9efdcb0df64f7662de9986518b69274100d92c7c3f9aea4287c3198610c0b0a5 |
Close
Hashes for pyMediaAnnotator-0.1.9.post1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 131d0e29c785df50ae5edfd6ee308abe1ecad2c4c6262ca2be86831ff90870e0 |
|
MD5 | 62bcf67739d43c4cab7774d2d52a29f2 |
|
BLAKE2b-256 | bcc73a70ffe61e9e327a83d36a516a493e42cb1d441b44feffe2cbf9fef24f3c |