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.0.1.tar.gz (13.9 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.0.1-py3-none-any.whl (8.9 MB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for saitenka-2.0.1.tar.gz
Algorithm Hash digest
SHA256 19de1fb5d72075135866d073198fad3f994f35fa7e4a5aef03e7d3e812d35ed9
MD5 1e3f26c3a559c085690dce7afb168a10
BLAKE2b-256 b807b8f823cd20d35e190066685b1a8a3ff489e8805d3b265a90bc89139fd34e

See more details on using hashes here.

Provenance

The following attestation bundles were made for saitenka-2.0.1.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.0.1-py3-none-any.whl.

File metadata

  • Download URL: saitenka-2.0.1-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.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4c1e1e2931c01675605d6b29764b15ed117822b9b88660cb49bcc75d183e1823
MD5 e07046dad2a0e6dac77b958d14eca6f2
BLAKE2b-256 6a76e893972a5c14f83cd54edefaa82e226b065e580480e518c1074776756179

See more details on using hashes here.

Provenance

The following attestation bundles were made for saitenka-2.0.1-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