vLabeler is an open-sourced voice labeling application, aiming:

  • Modern and fluent UI/UX
  • Customizable labeling/import/export, to be used by different types of voice editor apps
  • High performance with multiplatforms

The project is now in Alpha stage. For helps, suggestions, issue reports etc. please join our Discord.


See Releases.

The following platforms are provided in the releases.

  • Windows (.exe)
  • Mac (Apple Silicon) (.dmg)
  • Mac (Intel) (.dmg)
  • Ubuntu (.deb)

For other linux os you may have to build it by yourself.


vLabeler is built by Compose Multiplatforms. You can use Gradle to build the application. See more

Currently cross-platform building is not supported. Only packages for your OS are built.

Please ensure you have JDK 15+ for building.

// Package by installer
./gradlew package

// Or, build executable app
./gradlew createDistributable


Many behaviors of vLabeler depend on customizable labelers. Currenty built-in labelers include UTAU oto labeler and Sinsy (NNSVS/ENUNU) lab labeler.

  • oto labeler (Basic mode, SetParam style)

  • lab labeler (Continuous mode)

Get started

  1. Click Create project
  2. Select a folder containing your sample files
  3. If you don’t want to save vLabeler files (project file, processed wav files etc.) in the sample folder, change the Working directory
  4. Change Project name if you would like
  5. Select a labeler
  6. Select a label file template and its encoding
  7. Click OK and start editing
  8. Click Export in the menu to get the edited label file

Available keyboard/mouse actions

Note that following Ctrl means Command if you are using macOS.

Move parameter lines

  • Mouse drag on normal parameters: move itself
  • Mouse drag on primary parameters: move all the lines together
  • Shift: revert the primary settings

Audio playback

  • Space: play from the beginning / Stop
  • Ctrl + mouse click: play the clicked section


  • Shift + mouse wheel scroll: horizontal scroll
  • F: Scroll to center the current entry in the screen

Zoom in/out

  • = or numpad + or + button in the bottom bar: zoom in
  • - or numpad - or - button in the bottom bar: zoom out
  • Resolution button in the bottom bar: open dialog for resolution input

Switch entry/sample

  • Mouse wheel scroll: go to previous/next entry
  • Up/Down: go to previous/next entry
  • Ctrl + mouse wheel scroll: go to previous/next sample
  • Ctrl + Up/Down: go to previous/next sample
  • Ctrl + G or entry number button in the bottom bar: show Go to entry... dialog


After the first run, you can find app.conf.json and labelers/*.labeler.json under .../<user>/vLabeler directory. (For macOS it’s ~/Library/vLabeler) Check LabelerConf.kt and AppConf.kt and make sure you understand the content before you edit them.

You can reset configurations by removing the files.

Built-in configuration UI is not available yet. (Please wait!)

Known issues

  1. Audio files with a higher bit depth than 16-bit cannot be played normally. Please convert them priorly.
  2. When the audio file gets very long, the editor may get errors while painting. Please zoom out the editor or split the files. You may find this tool helpful on Windows.
  3. File chooser may not be able to select an empty folder. Please creating something inside, or copy + paste its path.


View Github