Skip to main content

再点火 (Saitenka) — learn Japanese from the video you're already watching

Saitenka turns mpv into an immersion workstation: Japanese subtitles get FSRS-aware word coloring, hovering a word opens a Yomitan-style multi-dictionary tooltip, and one key mines the sentence — audio, screenshot, reading, pitch, frequency — straight into Anki. Everything is drawn into mpv's own video surface, so there's no second window and none of the Windows overlay/fullscreen breakage that plagues external overlays.

Saitenka's in-mpv overlay: the word 読む highlighted in a subtitle line with its multi-definition Yomitan-style tooltip open beside it.

  • 再点火 = "re-ignition" — built to make picking study back up frictionless after a long break.
  • Local-first and grounded: readings and pitch always come from dictionaries, never a language model.

What it does

  • FSRS-aware subtitle coloring — an optional copy of Anki's database distinguishes learning, young, mature-known, and forgotten words (so "known" means actually remembered right now), and N+1 sentences — exactly one unknown word, the ideal thing to mine — are highlighted.
  • Multi-dictionary tooltip on hover — ordered definitions, ruby, frequency pills, pitch-accent, clickable cross-references, in-tooltip word scanning, wildcard search. Imports your Yomitan dictionaries.
  • One-key + bulk Anki mining via AnkiConnect — sentence audio, clean screenshot, reading, glossary, frequency, with dedup and FSRS-aware tagging.
  • No second window — the tooltip, colored subs, and mining UI composite into mpv's OSD over JSON-IPC: one surface, airspace-safe, fullscreen-safe, cross-platform (Linux · macOS · Windows).

Install

The recommended install is the self-bootstrapping release bundle (it also sets up mpv + ffmpeg and the auto-start mpv plugin) — see the Quick start.

For a pip/uv-native install of just the Python package:

uv tool install saitenka          # or: pipx install saitenka
saitenka setup                    # installs mpv/ffmpeg + the auto-start plugin, writes config
saitenka run video.mkv            # hover a word → tooltip; Ctrl+m → mine

The optional inflection-chain display is a GPL-3.0 add-on (derived from Yomitan); the core is Apache-2.0. A [full] install is therefore GPL-3.0 — see LICENSING.md.

Full documentation

Everything — how it works, how it compares, where it fits in a media-server setup, requirements, and the feature tour — lives in the documentation site.

Download files

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

Source Distribution

saitenka-2.4.0.tar.gz (14.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

saitenka-2.4.0-py3-none-any.whl (8.9 MB view details)

Uploaded Python 3

File details

Details for the file saitenka-2.4.0.tar.gz.

File metadata

  • Download URL: saitenka-2.4.0.tar.gz
  • Upload date:
  • Size: 14.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for saitenka-2.4.0.tar.gz
Algorithm Hash digest
SHA256 627c5dbe964d40a75f22a8893f63308b3fe3918c5cdc3efdf8d610f52d9e8668
MD5 93653dc7294d3b380bc9033602c3c1e5
BLAKE2b-256 d8b3e92a89f4d03964e55ee5e5e7ec00a37c2e5e0e4e73a54676cdc04a320be5

See more details on using hashes here.

Provenance

The following attestation bundles were made for saitenka-2.4.0.tar.gz:

Publisher: release.yml on serjflint/saitenka

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file saitenka-2.4.0-py3-none-any.whl.

File metadata

  • Download URL: saitenka-2.4.0-py3-none-any.whl
  • Upload date:
  • Size: 8.9 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.14

File hashes

Hashes for saitenka-2.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ba61e7d4e8f3264589c622859844898b509a8ed29ab4fe8600ab184fb4c4de4b
MD5 b93dda7815f8cb3eb48a95a6646d30f9
BLAKE2b-256 6fb8a402a457f673fb6ff497eb303623ddf34b28d13f4dc299f2a24e0d1c860f

See more details on using hashes here.

Provenance

The following attestation bundles were made for saitenka-2.4.0-py3-none-any.whl:

Publisher: release.yml on serjflint/saitenka

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page