BlackVideo Mini Player v1.1.0 — Audio, Stability & Icon #17
LoneStamp
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
✅ What's in This Release
🔊 Working Audio Playback
Audio now plays correctly for all common video formats. Previous builds were silent or produced scraping and choppy distortion every ~2 seconds.
AV_SAMPLE_FMT_FLTP/fmt=8) — AAC and MP3 audio tracks in MP4 files now decode cleanly. The old code only passeddata[0](left channel plane) toswr_convert; all planes are now forwarded correctly viabv_swr_convert_frame()in C, which passesframe->datadirectly to libswresample.SDL_MixAudioFormatself-mix bug — the callback was passing the output stream as both source and destination, doubling amplitude on every audio callback and causing audible clipping and distortion. Fixed by copying ring buffer data into a temporary buffer first, then mixingTmp → Stream.🎬 Correct Video Playback Speed
Video no longer runs slower than its source FPS.
SDL_GetTicksand sleeps only the remaining budget. PreviouslySDL_Delay(frame_ms)ran after decoding, meaning decode + scale + upload time stacked on top of the frame interval.💾 Fixed Heap Exhaustion Crash
The player no longer crashes with
STORAGE_ERROR: heap exhaustedafter a few seconds.RGB_Bufferat open time and reusing it every frame. Zero heap allocation per frame.🪲 Fixed Wrong Stream Routing (NAL Unit Spam)
Hundreds of
[h264] Invalid NAL unit sizeerrors per second are gone.AVPacket.stream_indexoffset (36) was wrong for FFmpeg 8.x. Audio packets were misidentified as video and sent to the H.264 decoder, which tried to parse AAC audio as NAL units.bv_packet_stream_index()— a C helper that readsstream_indexvia the real FFmpeg header so the offset is always correct regardless of FFmpeg version.🔗 GNAT 2021 Windows Archive Linker Fix
Eliminated the persistent
archive has no index; run ranlibbuild failure.ffmpeg_helpers.cis compiled bybuild.batusinggccdirectly and passed as an explicit.oto the linker — no archive, no ranlib.🖼️ Custom Application Icon
The executable now shows the BlackVideo icon in Explorer, the taskbar, and the title bar.
resources/blackvideo.o(compiled fromblackvideo.rcviawindres) is linked in the GPRLinkerpackage under thewindowscase.🛠️ Build Script Hardening (
build.bat).adbbody files that causedspec does not allow a bodyerrors.ffmpeg_helpers.cseparately withgccbefore invokinggprbuild..aimport libraries before building, with clear errors on missing files.build\on success.🎮 Keyboard Controls
SPACE←/→↑/↓MFESCorQ📦 Requirements (Windows)
build\:avcodec-62.dll,avformat-62.dll,avutil-60.dll,swscale-9.dll,swresample-6.dllSDL2.dllinbuild\🚀 Usage
Download
Installer
Built with Ada 2012 · FFmpeg 8.x · SDL2 · GNAT Community 2021
Full Changelog: https://github.com/BlackBlazent/blackvideo-mini-player/commits/1.1.0
This discussion was created from the release BlackVideo Mini Player v1.1.0 — Audio, Stability & Icon.
All reactions