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.1.0.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.1.0-py3-none-any.whl (8.9 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: saitenka-2.1.0.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.1.0.tar.gz
Algorithm Hash digest
SHA256 75815e54bd520bb0c820ab13fe00d7bec7419980f6cd3165f6fc56674da06933
MD5 09f8ab2ba0e5565d7151bd60c77f4b44
BLAKE2b-256 df36c899a640553d9148313183f2d7ea94bab7707dd1564813f74c60bf5eba38

See more details on using hashes here.

Provenance

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

File metadata

  • Download URL: saitenka-2.1.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.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 67a9f1086346d944fb77ca05bb9d4762fb52975a25ff6081ef44a870fd18237c
MD5 614f1ae3b9ffc1cb7e4d31d2fbbc7b72
BLAKE2b-256 f09e5a1170d46b8cb1557d535ff7ac72b98a34afa105bc52701d13209946447a

See more details on using hashes here.

Provenance

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