Y'ALL MP is not just a media player; it is a comprehensive tool designed to bridge the gap between passive listening and active learning. It combines high-performance media playback with advanced tools to edit subtitle text and adjust timing, provides instant dictionary lookups, and seamless Anki flashcards creation.
Whether you are sentence mining, training listening comprehension, or practicing shadowing, Y'ALL MP provides the granular control and automation you need.
Get the latest installer for Windows, Linux, and macOS at the official website: Y'ALL Media Player - Free Language Learning Media Player
Alternatively, view the GitHub release list.
Y'ALL MP is primarily developed and optimized for Windows.
Because this application relies on complex window management (transparent UI overlays stacked on top of a hardware-accelerated mpv window etc.), performance varies significantly across operating systems and window managers.
| Platform | Status | Notes |
|---|---|---|
| Windows | ✅ Stable | Fully supported. Recommended experience. |
| Linux | 🧪 Experimental | Known Issues: Window stacking (Z-order) bugs on certain Window Managers (e.g., Lubuntu/LXQt, some Wayland compositors). The video may obscure the UI or vice-versa. |
| macOS | 🧪 Experimental | Untested: Requires manual terminal commands to run (see installation instructions). Stacking issues may occur. |
Y'ALL MP is developed and tested primarily on Windows. As I do not have access to macOS hardware, specific layout quirks or pathing issues may occur on Mac. Linux support is also experimental; testing has been limited to Lubuntu, where some window management issues were observed. Contributions to improve cross-platform support are greatly appreciated!
- Visual Editing: Your subtitles are not perfect? Not a problem! Adjust subtitle timings instantly by dragging clip edges on the timeline.
- On-the-Fly Corrections: Fix typos or rewrite subtitle text entirely, directly within the player, without leaving the flow.
- Clip Management: Split long sentences, merge broken lines or even add own subtitles.
- Powered by mpv: Plays virtually any media format (MKV, MP4, WEBM, etc.) with hardware acceleration.
- Audio Waveform: Visualize dialogue rhythm and silence with a high-precision timeline generated by audiowaveform.
- Context-aware Speed Control: Automatically speed up silence or slow down difficult dialogue segments independently.
- Study Presets: Switch instantly between Listening Mode and Speaking Mode to target specific skills, depending of your study goals.
- Interactive Rendering: Full support for complex interactive ASS/SSA subtitles with proper font attachment loading.
- Offline Dictionaries: Zero-latency, hover-based dictionary lookups powered by the bundled Yomitan extension.
- Online Lookup: One-click search via built-in browser integration for deeper context (Google, Brave, Forvo, etc.).
- Smart Tokenization: Advanced word boundary detection (using standard
Intl.Segmenteror dictionary-based scanning) allows precise selection of words or phrases. - Multi-Track Support: Seamless switching between multiple parallel subtitle and audio tracks.
🧠 Sentence Mining & Anki
- One-Click Export: Instantly create Anki cards containing the subtitle text, audio clip, and a video snapshot.
- Multiple Templates Support: Configure multiple templates to map media data (text, audio, image, video) to your specific Anki note types, then export them all at once.
- Duplicate Prevention: Automatically tracks export history to show which subtitled clips have already been exported.
Depending on your operating system, you may need to install external dependencies for the Y'ALL MP to work.
No additional actions required. The installer comes pre-packaged with all necessary binaries (mpv, audiowaveform, ffmpeg etc.), enjoy!
- Install mpv: See official instructions: https://mpv.io/installation/
⚠️ Important: Default package managers (likeapton Ubuntu) often ship outdated versions of mpv (e.g., 0.32.x or 0.37.x) that lack required JSON IPC features or may crash the application.Please ensure you install a recent version (0.40+ recommended).
If the default installed version crashes or is too old, use this PPA to get the latest stable version (0.40+):
sudo add-apt-repository ppa:ubuntuhandbook1/mpv
sudo apt update
sudo apt install mpvValidate that everything was installed correctly by running mpv --version, make sure the version is 0.40 or higher.
- Install audiowaveform: https://github.com/bbc/audiowaveform/releases
sudo add-apt-repository ppa:chris-needham/ppa
sudo apt-get update
sudo apt-get install audiowaveform- Ensure you have
libfuse2installed on your system.
sudo apt-get update
sudo apt-get install -y libfontconfig1-dev libarchive-tools- Manage the app permissions
Run the following command on the downloaded AppImage file:
sudo chmod +x ./<filename>.AppImage- Finally run the app in console
./<filename>.AppImage --no-sandbox- Install mpv: See official instructions: https://mpv.io/installation/
brew install mpv- Install audiowaveform: https://github.com/bbc/audiowaveform/releases
brew tap bbc/audiowaveform
brew install audiowaveformVisit the main page or release list to get the Y'ALL MP installer for your platform (.exe, .AppImage, or .dmg).
This application is not code-signed (which requires a paid Apple Developer account). To run it, you must remove the quarantine attribute after dragging the app to your Applications folder:
- Drag
<filename>.dmgto your Applications folder. - Open Terminal.
- Run:
xattr -cr "/Applications/<filename>.dmg" - Launch the app.
- Node.js (v22+ recommended)
- npm
- System Dependencies: Ensure you have installed the requirements listed in the System Requirements section above.
-
Clone the repository:
git clone https://github.com/kgurniak91/yall-mp.git cd yall-mp -
Install dependencies: This will also download Windows-specific binaries via the
postinstallscript.npm install
To run in development mode with hot-reloading (Angular + Electron):
-
Start the build watcher:
npm run electron:watch:build
Wait until the initial build completes.
-
Launch the Electron shell (in a new terminal):
On Windows:
npm run electron:watch:run
On Linux:
npm run electron:watch:run -- --no-sandbox
- Angular Tests (Karma):
npm run test:angular - Electron Tests (Vitest):
npm run test:electron - Run All:
npm run test:all
To create a distributable installer/executable for your current OS:
- Windows:
npm run package:win - Linux:
npm run package:linux - macOS:
npm run package:mac
The output files will be located in the dist_electron folder.
Core Application
- Electron 37: Cross-platform desktop framework.
- Angular 19: Frontend framework with Signals for reactive state management.
- PrimeNG 19: UI Component library.
Media & Processing
- Node-MPV: Node.js wrapper for controlling the MPV player instance via IPC.
- Audiowaveform: C++ program used to generate waveform JSON data from audio streams.
- FFmpeg Static: Bundled FFmpeg binary for extracting audio/video clips for Anki export.
Subtitles & Text
- ASS-Compiler: Parses and compiles ASS subtitle formats.
- ASS.js: Renders interactive ASS subtitles on HTML5 canvas.
- Yomitan: Bundled browser extension for offline dictionary lookups.
- Wavesurfer.js: Renders the audio waveform timeline.
- Franc: Language detection for selecting the correct tokenizer.
- Font-Scanner: Locates system fonts to properly render styled subtitles.
This project is licensed under the GNU General Public License v3.0 (GPLv3).
You are free to use, modify, and distribute this software. If you distribute modified copies, they must also be released under the GPLv3. See the LICENSE file for details.
