blackvideo-mini-player BlackVideo-mini-player Wiki
A standalone lightweight auxiliary CLI video player for BlackVideo.
Brought to you by:
lonestamp99
Welcome to your wiki!
This is the default page, edit it as you see fit. To add a new page simply reference it within brackets, e.g.: [SamplePage].
The wiki uses Markdown syntax.
BlackVideo Mini Player
Lightweight cross-platform video player built in Ada + SDL2 + FFmpeg. Works standalone from the command line or via right-click on any video file. Support player for the BlackVideo Tauri v2 app.
Features
๐ฌ Video Playback
๐ Audio
๐ฅ๏ธ On-Screen Controls (UI Bar)
๐๏ธ Context Menu (Right-click)
.srt,.ass,.ssa, or.vttfile per slot)๐ Subtitles
๐๏ธ Offline Caption Generation โ Whisper.cpp
ggml-base.bin,ggml-small.bin,ggml-medium.bin, orggml-large.binโ no rebuild neededโจ๏ธ Keyboard Shortcuts
SPACEโ/โโ/โMLFESC/Q๐ช Windows Shell Integration
.mp4 .mkv .avi .mov .wmv .webm .flv .m4v .mpg .mpeg .tsUsage
Method 1 โ Command Line
Step 1. Unzip
blackvideo-mini-player-v2.3.0.win.zipStep 2. Open the
build\folder, then typecmddirectly in the address bar and press Enter โ this opens a terminal already in that folder.Alternatively: open Command Prompt anywhere and use
cdwith the copied path:Step 3. Run the player:
Method 2 โ Right-Click (Recommended)
Step 1. Unzip
blackvideo-mini-player-v2.3.0.win.zipStep 2. Right-click
tools\context_menu\install_context_menu.batโ Run as administratorThat's it. Now:
To remove the right-click entry:
Optional: Whisper Captions Setup
To use offline caption generation, place these files in
build\besideblackvideo-player.exe:Also make sure
ffmpeg.exeis on your PATH (or placed inbuild\).Then right-click any video โ Generate Captions (Whisper).
Release History
v2.3.0 โ Offline Captions, Subtitle Rendering & Track Fix
Generate Captions,Translate to English).srtfilessrt_parserโ full SRT parser (BOM, CRLF, multi-line, up to 4 096 cues).envfile support for dev-mode Whisper path overrides (silently skipped in production)srt_parser: renamedDigits(Ada reserved word) toParse_Intwhisper_bridge: renamedsystemimport toC_Systemto avoid shadowing theSystempackageSystem.Addresscomparisons โ addedSystem.Storage_Elementsto expose the=operator in GNAT 2021v2.2.0 โ Playback Controls Fix & Audio Stability
SDL_MouseButtonEvent.buttonwas read from byte offset 13 instead of the correct offset 16SDL_LockAudioDevice/SDL_UnlockAudioDeviceAudio.Flushnow called on all 7 seek paths โ stale pre-seek audio no longer bleeds throughSDL_AUDIO_ALLOW_FREQUENCY_CHANGEremoved โ eliminates pitch drift on long filesui_overlay.cmoved fromsrc/tocsrc/โ was causing duplicate symbol linker errors-lgdi32,-lusp10,-lrpcrt4added for SDL2_ttf HarfBuzz dependenciesbuild.batuses%ROOT%(quoted absolute path) โ fixes silent gcc failures on paths with spaces (e.g.Vilma E. Agripo)v1.1.0 โ Audio, Video Timing, Stability & Icon
AV_SAMPLE_FMT_FLTP/ AAC) was silent; fixed by passing all planes toswr_convertSDL_MixAudioFormatself-mix bug โ stream was mixed into itself, doubling amplitude and causing clipping every callbackSTORAGE_ERROR) โ pre-allocated single RGB frame buffer; was leaking ~6.5 MB per frame (~390 MB/s at 60 fps)AVPacket.stream_indexoffset was hardcoded wrong for FFmpeg 8.x; audio packets were misidentified as videoarchive has no indexerror โ C helpers compiled separately and passed as explicit.oto the linkerv1.0.0 โ Initial Release
Requirements (Windows)
SDL2.dllSDL2_ttf.dlllibfreetype-6.dllzlib1.dllavcodec-62.dllavformat-62.dllavutil-60.dllswscale-9.dllswresample-6.dllOptional (Whisper captions only):
whisper-cli.exewhisper.dllggml.dllggml-base.dllggml-cpu.dllmodels\ggml-base.binBuilt with Ada 2012 ยท FFmpeg 8.x ยท SDL2 ยท SDL2_ttf ยท whisper.cpp ยท GNAT Community 2021
BlackVideo Mini Player v2.4.0
Lightweight video player built with Ada, SDL2, and FFmpeg. Works standalone,
via drag-and-drop, or as a right-click context menu handler on Windows.
Download: https://sourceforge.net/projects/blackvideo-mini-player/files/latest/download
Source: https://github.com/BlackBlazent/blackvideo-mini-player
Changes: https://github.com/BlackBlazent/blackvideo-mini-player/compare/v2.3.0...v2.4.0
What's New in v2.4.0
Welcome / Standalone mode
Launch the player with no argument. Drag and drop a video onto the window
or click anywhere to open a file dialog.
Cloud LLM caption generation
Generate timed SRT subtitles via five cloud AI providers directly from the
right-click menu. API keys are entered once via a secure dialog and saved
locally โ use Ctrl+V to paste your key.
Supported providers and their key sources:
Sprite thumbnail preview
Hover over the seek bar to see a frame popup at that position. Thumbnails
are extracted in the background by ffmpeg and cached between sessions.
Auto-updater
Checks for new releases from the GitHub repository at startup. Shows an
update badge and download link when a newer version is available.
Whisper progress percentage
Live progress bar and percentage shown in the control bar while caption
generation is running.
Hot-load video
Open or drop a new video while another is already playing โ no restart
required, audio re-initialises automatically.
Sample Files
The following SRT files were generated using the offline Whisper caption
feature included in this release (ggml-base model, English).
Test videos and results
Elon Musk's Work Ethics Will Give You Goosebumps.mp4
Language: English โ SRT generated successfully
File: samples/Elon Musk's Work Ethics Will Give You Goosebumps.mp4.srt
AURORA - Cure For Me (1080p).mp4
Language: English โ SRT generated successfully
File: samples/AURORA-Cure-For-Me_Media_K17df81RL9Y_001_1080p.mp4.srt
BTS - Boy With Luv (feat. Halsey) Official MV.mp4
Language: Korean โ SRT not generated
Reason: The ggml-base model does not reliably transcribe Korean or
other non-Latin-script languages. Use ggml-large-v3 for Korean,
Japanese, Arabic, and similar languages. See WHISPER_SETUP.md.
Installation
To add a right-click "Open with BlackVideo Player" entry for video files,
run the following as Administrator:
tools\context_menu\install_context_menu.bat
Supported file types: .mp4 .mkv .avi .mov .wmv .webm .flv .m4v .mpg .mpeg .ts
To remove the context menu entry:
tools\context_menu\uninstall_context_menu.bat
Requirements
audio extraction
For offline captions (Whisper):
Place whisper-cli.exe, ggml.dll, ggml-base.dll, ggml-cpu.dll,
whisper.dll, and ggml-base.bin inside build\ as described in
WHISPER_SETUP.md.
For cloud LLM captions:
An API key from any supported provider. Keys are stored locally in
%APPDATA%\BlackVideo\keys.cfg and sent only to the provider's own
API endpoint.
Files in This Release
blackvideo-mini-player-v2.4.0.win.zip Player binary, DLLs, context menu tools
prerequisites-setup.zip Pre-assembled lib\ and build\ for source builds
RELEASE_NOTES.md This file
WHISPER_SETUP.md Whisper setup and model upgrade guide
samples/ Example SRT files generated by Whisper
Known Limitations
display without styling.
but speed change is not yet applied to the decoder pipeline.
Arabic, and other non-Latin-script languages. Use ggml-large-v3 for
those languages.
License
MIT โ https://github.com/BlackBlazent/blackvideo-mini-player/blob/main/LICENSE