Kanatran has been discontinued and is no longer being developed. Please read our announcement post here.
An automatic livestream caption/translation system for Japanese Vtubers [WORK IN PROGRESS]
LiveTL is building an automatic livestream caption/translation system for Japanese Vtubers, and we need your support.
I'll get straight to the point: we developed a system called Kanatran to generate machine translations for Japanese Vtuber streams in realtime, and we need some funding to deploy it. Below are the things we want to achieve:
- Run Kantran on Japanese Hololive and Holostars streams, as well as selected agencies / independents
- Provide Kanatran translations to users of LiveTL
- Make our automated translations accessible to other 3rd party apps and websites for watching Vtubers
To do this, we need some financial support to kickstart our efforts. Our team accepts donations through Open Collective, a platform that makes our spendings completely transparent to donators. We will use funding from supporters to run our servers and translation software. We currently have about $750, which would only last a few short months. Please consider chipping in here: https://opencollective.com/livetl
Our system is extremely low cost compared to previous attempts at machine translations, and we will make our entire transcription/translation technology completely free and open source here on GitHub. Additionally, we will make our machine translations as accessible as possible -- if you are developer that wants to access our translations, please reach out to us (preferably through our Discord server). Our goal is not to monopolize this technology, but to use it to improve the Vtuber-watching experience for everyone in this community.
-
Pull the latest images
docker pull ghcr.io/livetl/watcher:latest docker pull ghcr.io/livetl/runner:latest
-
Create a bridge network
docker network create -d bridge kanatran
-
Configure a
.env
fileLIVETL_API_KEY= INTERCOM_NETWORK=kanatran MAX_CPU=50% MAX_MEM=4GB
-
Run the pre-built image
docker run -v /var/run/docker.sock:/var/run/docker.sock --env-file .env ghcr.io/livetl/runner
Variable | Description | Required | Values | Default |
---|---|---|---|---|
LIVETL_API_KEY |
LiveTL API Key | ✅ | String | |
WATCHER_IMAGE |
Watcher Image Name | ❌ | String | ghcr.io/livetl/watcher |
API_URL |
API URL | ❌ | String | https://api.livetl.app |
INTERCOM_NETWORK |
Inter-container Bridge Network Name | ❌ | String | kanatran |
CONTROLLER_URL |
Controller Address | ❌ | String | wss://api.livetl.app/kanatran/controller |
INTERCOM_PORT |
Inter-container Bridge Port | ❌ | Integer | 6969 |
MAX_CPU |
Max CPU Usage | ❌ | Percentage (__% ) |
100% |
MAX_MEM |
Max Memory Usage | ❌ | Bytes (__GB , __MB , etc.), Percentage (__% ) |
100% |
docker
docker-compose
make
npm
node
python
git clone https://github.com/LiveTL/Kanatran
make init
: Initialize the controller servermake build image={runner or watcher}
: Build imagesmake start
: Start the controller servermake run
: Run the local runnermake spawn video={video id}
: Start a translation container
MODE
:production
ordevelopment
for the controller