/media-annotator

Web-based annotation tool for media data. The easiest way to create you own media dataset.

Primary LanguageVueMIT LicenseMIT

GitHub Workflow Status Backend size Frontend size Project license GitHub issues

Media-annotator

Web-based annotation tool for media data.

Features

  • Uploading selected audio-files from directory. Currently, only .wav .mp3 files are supported.
  • Manual and auto transcribing for 20+ languages and dialects via Vosk

    ℹ️ Auto annotation will use the first channel of .mp3.

  • Export of the speech regions as zip of wavs and regions.csv or regions.json

How to use

  1. Run app as docker image

    docker-compose up -d

  2. Open app page

How to debug

  1. Install conda/miniconda/micromamba and node+npm

  2. Clone repository, create python environment using conda manager and activate it

    git clone https://github.com/ruslantau/media-annotator
    cd annotator
    conda env create -f backend/environment.yaml
    conda activate annotator
  3. Run FastAPI backend

    python backend/main.py
  4. Install dependencies and run Nuxt frontend

    cd frontend
    npm install
    npm run build 
    npm run start
  5. Open app page

TODO

  • add docker images and setup CI/CD
  • extend the list of supported formats (mp4,flac,avi,etc.)
  • running auto annotation on selected region
  • adding punctuation
  • speaker diarisation