sp3ctum / jidoujisho

A mobile video player and card creation toolkit tailored for language learners. Allows text selection of subtitles for quick lookups and export to Anki with snapshot and audio for uninterrupted language immersion.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

jidoujisho

A mobile video player and card creation toolkit tailored for language learners.

Latest GitHub Release:
0.20.0-beta πŸ‡―πŸ‡΅ β†’ πŸ‡¬πŸ‡§
0.16.7-beta πŸ‡°πŸ‡· β†’ πŸ‡¬πŸ‡§

Release Archive:
0.3 Β· 0.4 Β· 0.5 Β· 0.6 Β· 0.7 Β· 0.8 Β· 0.9 Β· 0.10 Β· 0.11 Β· 0.12 Β· 0.13 Β· 0.14 Β· 0.15 Β· 0.16 Β· 0.17 Β· 0.18 Β· 0.19 Β· 0.20

πŸ“š Uninterrupted language immersion at your fingertips

jidoujisho is an Android video player and card creation toolkit with features specifically helpful for language learners.

  • Text selection of subtitles allows for quick dictionary lookups within the application
  • Search current clipboard and open browser to Jisho.org, DeepL or Google Translate
  • Export cards to AnkiDroid, complete with a snapshot and audio of the current context
  • Selecting a word allows export to AnkiDroid with the sentence, answer, meaning and reading
  • Morphological analysis of subtitles allows either tap selection or drag selection of subtitles
  • Repeat the current subtitle from the beginning by flicking horizontally
  • Swipe vertically to open the transcript to jump to time and review subtitles
  • Open the app to trending videos in Japan, import and export a channel list and search with suggestions
  • YouTube playback support for videos with Japanese closed captions and automatically generated subtitles
  • Use card creator mode to quickly search images and definitions with imported photos and text
  • Dictionary tab remembers words queried for review between sessions and allows resuming back to context
  • Use monolingual definitions from Goo.ne.jp or imported Yomichan dictionaries
  • View dictionary entries and export cards with pitch accent information from Kanjium Pitch Dictionaries
  • Frictionless sentence mining workflow for readers via share action
  • (Experimental) Korean to English support through the National Institute of Korean Language's KrDict

βš•οΈ Current state of the project

jidoujisho is still in active development. Built for the Japanese language learning community, the application is free and open source software, and is available to download here on GitHub. Current features planned on the roadmap are listed below, but as of now there is no estimate on any updates.

Please note that the development of the app switches between changes being implemented and being left alone for daily use. Update frequency may depend on the gravity of any issues that arise. Hiatuses provide practical insight on usage and where development should go next.

πŸš… Next Up

  • Fixes for slow video loading due to scoped storage and H.265 video playback
  • Use of the AnkiDroid API instead of share intent to streamline card export and Anki output customisation
  • Morphological analysis of subtitles for better text selection
  • Improved monolingual dictionary support
  • Various immersion modes for oral practice
  • Include pitch accent information in dictionary and exported cards
  • Reader enhancements for manga and novel sentence mining
  • HTML summary tags for dual query mode (bilingual and monolingual)
  • Basic support for any languages and offline use via support of a common dictionary format

πŸ›£οΈ Stretch Goals

  • Promote project to stable and Google Play release
  • Extensive language support with text segmentation for other CJK languages
  • Tinker around with releasing the app on other platforms if possible

🎞️ A glimpse of jidoujisho in action

πŸ“– Using the application

🚨 Supported Formats

jidoujisho will take video and audio formats as supported by VLC. Subtitles may be embedded within the video being played and selected during playback.

If you wish to use external subtitles, they may be in SRT, ASS or SSA format and you may import them during playback through the menu. You may switch between different audio and subtitle tracks. Image-based subtitles such as PGS are not currently supported.

YouTube closed captions are taken from TimedText XML, which is only publicly exposed to videos that have user-generated Japanese subtitles. Here are a fair sample of YouTube videos with such subtitles showcasing some very practical application use cases. If unavailable, Japanese automatic captions can be queried from videos. Please be aware that critical inaccuracies are to be expected in such cases.

☝️ Important Links

Below are some links that some users might find useful.

πŸš€ Getting Started

A primer on the basics of the application is as follows.

  • πŸ“² Download and install the latest beta onto your Android device
  • ⏯️ Play a video by selecting from your local media library or picking a YouTube video
  • πŸ“‹ Select text with any of the two modes: tap to select or drag to select
  • πŸ“” When the dictionary definition for the text shows up, the text is the current context
  • πŸ—‘οΈ Closing the dictionary prompt will clear the clipboard
  • 🌐 The current context may be used to open browser links to third-party websites
  • ↕️ You may swipe vertically to open the transcript, and you can pick a time or read subtitles from there
  • ↔️ Swipe horizontally to repeat the current subtitle audio
  • βž• Swipe left or right on the pop-up dictionary to scroll through multiple definition results

πŸ“² Exporting to AnkiDroid

  • πŸ“€ You may also export the current context to an AnkiDroid card, including the current frame and audio
  • πŸ”€ Having a word in the clipboard will include the sentence, word, meaning and reading in the export
  • πŸ“ You may edit the sentence, word, meaning and reading text fields before exporting to AnkiDroid
  • πŸ”— To finalise the export, share the exported text to AnkiDroid
  • πŸƒ The front of the card will include only the sentence
  • 🎴 The back of the card will include the audio, image, reading, word and meaning
  • πŸ“‘ You may apply text formatting to the card with the AnkiDroid editor once exported
  • βš›οΈ Customisation of the Anki export is possible by changing the default template in AnkiDroid
  • πŸ”„ Once in AnkiDroid, cards may be synced to AnkiWeb, use Check Media to include all exported media

πŸ™Œ Advanced User Tips

  • πŸ‡―πŸ‡΅ Can't find Japanese subtitles for your media? Try finding what you need at kitsunekko
  • πŸ“‘ External subtitles with the same name as the selected video file will be loaded by default
  • ⏲️ If your subtitles are off, you can set the delay or pad the exported audio time with an allowance
  • ▢️ A resume button is at the top of the main menu, and returns to the last played video and duration
  • 🀝 Sharing is caring. You can import and export your channel IDs for backup and sharing in the main menu
  • ⛓️ Channels may also be added by pasting a link of any video by the channel in List new channel
  • πŸ”Ž Holding onto a YouTube video in search, history or trending will show the option to list the channel
  • ✊ Export a range of multiple subtitles by holding onto a subtitle aside from the current one in the transcript
  • ⚠️ If AnkiDroid is not running in the background, tap on the export message to open it
  • πŸ—ƒ The AnkiDroid deck you last export to will be remembered for your next export
  • πŸ“Ή The quality closest to the last selected quality will be selected by default for YouTube videos
  • πŸ“’ Automatic captions are more excellent in podcasts and news programs with clear speakers

πŸ‘₯ Contribution and attribution

jidoujisho is written in Dart and powered by Flutter. Bilingual dictionary definitions are queried from Jisho.org and monolingual dictionary definitions are from Goo.ne.jp. Pitch accent patterns are sourced from Kanjium. Video streaming via YouTube. Image search via Bing.

If you like what I've done so far, you can help me out by testing the application on various devices so that I can gauge the compatibility of the application with different versions of Android, making a donation or collaborating with me on further improvements.

The logo of the application is by Aaron Marbella, support his awesome work if you can!

About

A mobile video player and card creation toolkit tailored for language learners. Allows text selection of subtitles for quick lookups and export to Anki with snapshot and audio for uninterrupted language immersion.

License:GNU General Public License v3.0


Languages

Language:Dart 93.1%Language:Java 6.1%Language:Ruby 0.7%Language:Swift 0.1%Language:Objective-C 0.0%