Skip to content

Miteiru is an open source Electron video player to learn Chinese, Cantonese, and Japanese. It can play all Youtube and HTML 5 supported format (.mkv, .mp4, .mov, and many more) videos, and lots of supports on other subtitle formats (.srt, .ass, .vtt, and many more)

License

hockyy/miteiru

Repository files navigation

Miteiru (見ている) / KànZhe (看着) / tai²gan² (睇緊)

Stargazers repo roster for @hocky/miteiru

License: CC BY-NC-SA 4.0 GitHub release Open Issues Contributors Last Commit GitHub Stars GitHub Forks

Download ૮ ˶ᵔ ᵕ ᵔ˶ ა✩°。 ⋆⸜

Miteiru Logo Miteiru is an open source Electron video player to learn Chinese, Japanese, and Cantonese. It has modular main language dictionary and tokenizer (morphological analyzer), heavily based on External software MeCab, and optinally needs JMDict to give language info box. This software is heavily inspired by Anisubber.

What can 見ている do?

  • Cross-platform! Available in Windows, MacOS, GNU/Linux.
  • Supports all videos that your chromium supports! In some OS's, it supports x265.
  • On-The-Fly Furigana generation! blazing-fast and no severe cache build needed.
  • Instant definition of any terms that uses LevelDB on first start only!
  • Instant definition of any word in the subtitles.
  • Instant definition on Kanji
  • Translation subtitles alongside the Japanese subtitles.
  • Word/Token spacing in the Japanese subtitles
  • Youtube Support

How to start immersing

For Casual Users: Installation Guide

Mac

Windows

  • Being such a good guy I am, I've provided both the portable one and the setup one, you can just pick any, install it.
  • There's this issue where some PC would recognize the setup as a virus... but you can try your own virus total test.

Ubuntu

  • I made the .deb and .AppImage, currently no other build is provided because I'm too lazy

How to integrate with Whisper

As per February 3rd, 2024 MacWhisper is a really good UI for Whisper in mac, anyway if you want to run whisper on other OS or for free:

put this in your ~/.bashrc or ~/.zshrc or any rc your os use

export WHISPERPATH=~/project/whisper.cpp

whisper() {
  local input="$1"
  shift

  # All remaining arguments will be treated as an array
  local -a extra_args=("$@")
  "$WHISPERPATH/main" -f "$input" -of "$input.w" --model "$WHISPERPATH/models/ggml-medium.bin" -l ja "${extra_args[@]}" -osrt
}

prepwhisper() {
  local input="$1"
  local output="${input%.\*}.wav"
  ffmpeg -i "$input" -ar 16000 -ac 1 -c:a pcm_s16le "$output"
}

Then run on your video

prepwhisper video.mp4
whisper video.wav
  • voila

For Developer: (Own Build) Installation Guide

You can run the followings on the cloned repository: (don't forget to download the LFS files as well)

npm install
npm run script:initrepo
npm run dev # This to run dev
npm run build:nsis # This to build for Windows
npm run build:portable # This to build for Windows Portable
npm run build:linux20 # This to build for Linux 20.04
npm run build:linux22 # This to build for Linux 22.04
npm run build # this is for mac

Mecab and Custom Dictionary Setup (Optional)

Mecab can be downloaded through brew by running:

brew install mecab

or in Ubuntu:

sudo apt install mecab

Then, you can run

which mecab

or in Windows, you can directly download the binary file from SourceForge

to show your default mecab binary file. Use it as the path when asked in Miteiru. Then, you can get JMDict Dictionary in https://github.com/scriptin/jmdict-simplified/releases. Use it as the path when asked in Miteiru as well. Miteiru will build a LevelDB cache locally. Then, you can enjoy the app!

MeCab Dictionary Customization

By default, you are using whatever your default Mecab Dictionary offers you, but you can further customize this by modifying the mecabrc file which is located in /opt/homebrew/etc/mecabrc in MacOS, C:\Program Files (x86)\MeCab\etc\mecabrc in Windows, and /etc/mecabrc in Ubuntu. For other OS's you gotta figure it our for yourself right now. Shunou, Miteiru's microlibrary can support Unidic, Jumandic, Ipadic, and it's variations. Specifically, if you check out the dicrc file of each dictionary, Shunou can support the output format chamame, chasen, and the classic Jumandic god knows what output format. You can get UniDic files here

Configuration file in mac:

;
; Configuration file of MeCab
;
; $Id: mecabrc.in,v 1.3 2006/05/29 15:36:08 taku-ku Exp $;
;
; dicdir =  /opt/homebrew/lib/mecab/dic/ipadic
; dicdir =  /opt/homebrew/lib/mecab/dic/jumandic
dicdir =  /opt/homebrew/lib/mecab/dic/unidic
; userdic = /home/foo/bar/user.dic

; output-format-type = wakati
; input-buffer-size = 8192

; node-format = %m\n
; bos-format = %S\n
; eos-format = EOS\n

Windows:

;
; Configuration file of MeCab
;
; $Id: mecabrc.in,v 1.3 2006/05/29 15:36:08 taku-ku Exp $;
;
dicdir =  $(rcpath)\..\dic\unidic

; userdic = /home/foo/bar/user.dic

; output-format-type = wakati
; input-buffer-size = 8192

; node-format = %m\n
; bos-format = %S\n
; eos-format = EOS\n

Future Enhancements

  • Verb inflections
  • Miteiru will be ported to a dedicated media player, like LibVLC or MPV.
  • Kanji explanation in the subtitles with animated diagrams.
  • Pronounciation audio
  • Customizable subtitle style.
  • Online hosted videos.
  • Will support Android.
  • Miteiru will have built-in Tokenizer and Dictionary, and supports French, German, Bahasa Indonesia, and many more.
  • Miteiru will support Korean too!
Miteiru.mp4

About

Miteiru is an open source Electron video player to learn Chinese, Cantonese, and Japanese. It can play all Youtube and HTML 5 supported format (.mkv, .mp4, .mov, and many more) videos, and lots of supports on other subtitle formats (.srt, .ass, .vtt, and many more)

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks