Repository navigation
Releases: NickPittas/KAssetManager
Release list
KAssetManager 2.1
KAssetManager 2.1
This release focuses on stability, packaging reliability, and persistence/error-handling fixes.
Fixed
- Fixed silent database migration failures during startup/schema setup.
- Fixed image-sequence updates being reported as successful even when the database update failed.
- Improved annotated video-frame export by replacing fixed seek sleeps with bounded event-based frame capture.
- Fixed a thread-safety issue in the async database worker open-state check.
- Fixed project import teardown so a still-running worker thread is not destroyed after timeout.
- Improved media conversion FPS probing by validating
ffprobestartup and timeout handling.
AppImage
- Built and verified a new
KAssetManager-2.1-x86_64.AppImage. - AppImage packaging now defaults to the controlled
qtpathsbundling path. linuxdeployis no longer auto-selected fromPATH; it is only used when explicitly configured.- Verified dependency closure: no missing libraries.
- Verified launch behavior: AppImage stays alive under timeout test, no immediate crash.
Validation
- Clean AppImage rebuild completed successfully.
- AppImage launch test passed.
- Dependency check passed with no
not foundentries.
KAssetManager 2.0
KAssetManager 2.0
Linux/Fedora AppImage release validated on the Fedora 43 KDE Wayland baseline.
Highlights
- Final AppImage artifact:
KAssetManager-2.0-x86_64.AppImage - Video playback, timeline scrubbing, hover scrubbing, and thumbnails are working in the AppImage workflow.
- Video thumbnails use external
/usr/bin/ffmpegextraction for robust process isolation in packaged Linux runs. - Wayland/tlRender raster video color now matches VLC/ffmpeg thumbnails by correcting YUV chroma scaling.
- Live Wayland raster playback avoids nearest-neighbor YUV resize so scaled playback is smoother.
Artifact
Download KAssetManager-2.0-x86_64.AppImage, mark it executable, and run it:
chmod +x KAssetManager-2.0-x86_64.AppImage
./KAssetManager-2.0-x86_64.AppImagev1.8.5
Minor update to folder refresh logic in the File Manager tree view
Version 1.8.1
Added
- Color management settings: OCIO config picker plus default input transforms for 8-bit, 16-bit, 32-bit, and log sources
- Searchable OCIO inputs in the preview overlay for faster transform selection
- Video pan/zoom parity with images via middle-mouse panning in the tlRender viewport
Changed
- OCIO configuration persistence: enable state, config path, and input defaults now survive restarts
- OCIO input lists now populate directly from the selected config (including ACEScc/ACEScct/ACEScg) and apply LUTs from that config
- Preview fit behavior: right-click returns videos to fit view; navigation to next/previous resets fit view
Note
This file now includes the 1.8.0 release notes below. Unreleased will contain future work.
Version 1.8.0
KAsset Manager 1.8.0 Release Notes
Release Date: 2026-01-13
Overview
Version 1.8.0 transitions KAsset Manager's playback pipeline to tlRender (mrv2's engine),
bringing OCIO-aware video and image-sequence playback while retiring the legacy GStreamer
preview path. The release also aligns build, portable, and installer metadata with the
1.8.0 version.
Highlights
- tlRender (mrv2) playback engine now powers video and image-sequence previews
- OCIO color management available throughout the playback pipeline
- Legacy GStreamer preview runtime removed from packaging
- Build and installer metadata updated to version 1.8.0
User-Facing Changes
- Video and image-sequence playback now uses tlRender for consistent results across formats.
- GStreamer is no longer bundled or required for preview playback.
- Application versioning in build outputs and installers reflects 1.8.0.
Developer/Technical Notes
- CMake project version is set to
1.8.0and Windows resources/installer metadata match. - tlRender is consumed via its CMake package and provides bundled OpenColorIO/OpenImageIO.
- The build expects a tlRender install at
third_party/tlRender-build/install-Release
(seenative/qt6/CMakeLists.txtfor the candidate search paths).
Upgrade & Build
- Reconfigure CMake (recommended):
cd native/qt6
cmake -S . -B build\ninja -G Ninja
cmake --build build\ninja --target kassetmanagerqtNotes & Known Issues
- If you have a custom tlRender build location, ensure
TLRENDER_ROOTor the expected
install path is available before configuring.
Acknowledgements
Thanks to contributors and testers who helped validate the tlRender playback migration.
Version 1.6.0
KAsset Manager 1.6.0 Release Notes
Release Date: 2025-12-30
Overview
Version 1.6.0 is a focused quality and UX release that completes the dual-pane File Manager experience, fixes preview navigation bugs, and polishes UI consistency. It also includes a compatibility fix for video profile constants with modern FFmpeg headers.
Highlights
- Dual-pane File Manager: persistent state across restarts (enabled/disabled and pane sizes)
- Full-screen preview: navigation now follows the pane that opened the overlay (primary or secondary)
- Folder tree: horizontal auto-scroll suppressed — scrollbar will remain at left edge
- UI consistency: toolbar heights and button sizes standardized
- FFmpeg compatibility updates for video profile constants
User-Facing Changes
- Dual-pane mode remembered: If you enable dual-pane mode and arrange the panes, the app will restore that layout on next launch.
- Preview navigation: If you open the full-screen preview from the second/secondary pane, using arrow keys or scroll will navigate the secondary pane's file list (no longer the primary pane).
- Tree scrolling: Very long folder names will no longer cause the tree view to auto-scroll horizontally. The horizontal scroll position remains at the left edge.
- Toolbar appearance: Tool buttons are smaller and consistent across toolbars; toggle state shows a clear checked appearance.
Developer/Technical Notes
- CMake project version updated to
1.6.0. TheKAM_APP_VERSIONcompile definition and Windows resources have been updated accordingly. - Video metadata parsing (
video_metadata.cpp) now usesAV_PROFILE_*constants for compatibility with newer FFmpeg versions (v61+ headers in vcpkg). mainwindow.cppnow persists dual-pane splitter sizes underFileManager/DualPaneSplitterSizesand restores them on startup.
Notes & Known Issues
- Some third-party bundled libraries may still report their own versions inside
third_party/folders; those are unrelated to the app version. - If you build with different FFmpeg headers than the ones packaged with the repository, ensure the
AV_PROFILE_*constants exist in your FFmpeg headers.
Acknowledgements
Thanks to contributors and testers who helped validate dual-pane workflows and preview navigation across panes.
Version 1.5.2
KAsset Manager 1.5.2 Release Notes
Release Date: December 19, 2025
Overview
Version 1.5.2 is a maintenance release focused on improving video scrubbing performance and stability across all grid views (Asset Manager, File Manager, and Project Manager).
Major Improvements
🎬 Enhanced Video Scrubbing System
In-Place Thumbnail Scrubbing
- Direct Thumbnail Updates: Ctrl+mouse scrubbing now updates thumbnails directly instead of showing intrusive overlays
- Unified Experience: Consistent scrubbing behavior across Asset Manager, File Manager, and Project Manager
- Progress Indicator: Thin progress bar at the bottom of thumbnails shows scrub position
Performance Optimizations
- GStreamer Pipeline Caching: Added
PipelineCacheclass to reuse GStreamer pipelines for faster video frame extraction - KEY_UNIT Seeking: Optimized seeking strategy for better performance with MOV/MP4 files
- Async Frame Filtering: Prevents timeline jumping by filtering out stale frame responses during fast scrubbing
Stability Improvements
- Frame Ordering: Fixed async frame delivery issues that caused frames to jump to previous positions
- Delegate Logic Fixes: Corrected File Manager delegate logic that was overwriting scrub frames
- Registry Pattern: Implemented
ScrubFrameRegistrysingleton for reliable frame storage and retrieval
🛠️ Technical Enhancements
Backend Improvements
- ScrubFrameRegistry: Singleton registry for managing active scrub frames across views
- GridScrubController: Enhanced controller with position tracking and stale frame filtering
- LivePreviewManager: Improved async frame request handling with position validation
Code Quality
- Threading Rules: Maintained proper Qt threading patterns with queued signals
- Memory Management: Efficient frame caching with LRU eviction (512MB limit)
- Error Handling: Robust handling of async frame requests and responses
Bug Fixes
Video Scrubbing Issues
- Fixed timeline jumping during fast scrubbing due to out-of-order async frame delivery
- Resolved File Manager scrub frames being overwritten by file preview code
- Eliminated intrusive overlay behavior in favor of in-place thumbnail updates
Performance Issues
- Improved initial frame pickup speed for MOV/MP4 files
- Reduced GStreamer pipeline creation overhead through caching
- Optimized frame extraction with KEY_UNIT seeking strategy
Version 1.5.1
KAsset Manager 1.5.1 Release Notes
Release Date: December 18, 2025
Overview
Enhance window resize/move handling
Full Changelog: v1.4.5...v1.5.1
Version 1.5.0
KAsset Manager 1.5.0 Release Notes
Release Date: December 11, 2025
Overview
Version 1.5.0 is a major release focused on the Project Manager feature—a complete VFX/post-production project tracking system with version detection, folder watching, and project file support. This release also includes significant File Manager improvements and numerous quality-of-life enhancements.
Major Features
🎬 Project Manager (New!)
A dedicated tab for managing VFX/post-production projects with intelligent version tracking:
Project & Watch Folder System
- Project Creation: Create projects from any folder—automatically imports all assets and watches for changes
- Watch Folder Monitoring: Real-time detection of new, modified, and deleted files across all subdirectories
- Recursive Subdirectory Watching:
QFileSystemWatchernow monitors all subdirectories (not just root), ensuring changes in nested folders are detected - Smart Caching: Directory modification times are cached to avoid unnecessary rescans—only changed directories are processed
- Debounced Updates: 2-second debounce prevents excessive rescans during bulk file operations
Project File Version Detection
- After Effects Support: Detects
.aepand.aepxfiles, extracts version strings (e.g., "v001", "v2", "comp_v03") - Nuke Support: Detects
.nkfiles with version pattern extraction - Version Grouping: Multiple versions of the same project file are grouped together with a clickable version badge
- Version Dropdown: Click the version badge to switch between versions—preview updates immediately
Project Manager UI
- Grid & List Views: Same familiar interface as File Manager and Asset Manager
- Thumbnail Previews: Live thumbnails for all media files with scrubbing support
- Sequence Detection: Image sequences are grouped and displayed as single items with frame range info
- Notification System: Badge shows count of new files detected since last view
- Full Preview Panel: Embedded preview with video playback, image zoom/pan, and metadata display
📁 File Manager Path Bar (New!)
An editable address bar at the top of the File Manager file panel, similar to Windows Explorer:
- Display Current Path: Shows the full path of the current directory
- Selectable/Copyable: Click and select text to copy the path
- Direct Navigation: Type or paste a path and press Enter to navigate
- Path Validation: If the entered path doesn't exist, shows an error and restores the previous path
- File Path Handling: If a file path is entered, navigates to its parent directory
- Native Separators: Displays Windows-style backslashes for familiarity
🪟 Window Title Version Display
- The main window title now shows the application version: "KAsset Manager 1.5.0"
- Version is sourced from CMake's
PROJECT_VERSIONviaQCoreApplication::applicationVersion()
Improvements
Project Manager File Operations
- Delete: Removes files from database immediately, then moves to Recycle Bin
- Rename: Updates database path after successful filesystem rename
- Cut/Paste (Move): Removes from database at source, watcher adds at destination
- Copy/Paste: Watcher detects new files at destination and adds to database
Import System Enhancements
- Throttled UI Updates: Progress dialog updates every 50ms instead of every file, preventing UI freeze during large imports
- Removed processEvents() Calls: Eliminated reentrancy issues in
ImportProgressDialog - Elapsed Timer Pattern: Uses
QElapsedTimerfor throttling instead of per-file event processing - Better Logging: Import operations now log folder counts, file counts, and sequence detection results
Watch Folder Reliability
- Full Subdirectory Watching: Fixed issue where only root directory was watched—now all subdirectories are monitored
- Proper Path Cleanup:
unwatchProject()now removes all watched paths for the project - Dynamic Directory Addition: New subdirectories are automatically added to the watch list
- Throttled Logging: Directory change notifications are logged at most every 5 seconds to prevent spam
Database Operations
- New
removeAssetsByPath(): Efficiently removes multiple assets by file path with folder notification - New
updateAssetPath(): Updates asset file path in database (for rename operations) - Background Resync: "Re-sync Asset Folders" now runs on a background thread using
QtConcurrent::run()
High DPI Support (from 1.4.5)
- Enhanced icon scaling for high-DPI displays
- Improved UI element sizing and spacing
Bug Fixes
- Watch Folder Not Detecting Changes: Fixed
QFileSystemWatcheronly watching root directory—now watches all subdirectories recursively - Resync Freezing UI: Re-sync operation now runs on background thread
- File Operations Not Updating Database: Delete, rename, and move operations now properly update the Project Manager database
- Sequence Frame Path Reconstruction: Fixed pattern-based frame path reconstruction using
filePath(full path) instead of just the pattern filename - Version Badge Click Detection: Moved click handling to
MainWindow::eventFilterfor more reliable detection - Import Progress Dialog Reentrancy: Removed
processEvents()calls that could cause crashes during import
Technical Changes
New Files
project_import_worker.h/.cpp- Background thread worker for project imports with cancellation support
Modified Core Files
mainwindow.cpp/.h- Added path bar, version dropdown handling, file operation database updatesproject_db.cpp/.h- AddedremoveAssetsByPath(),updateAssetPath()methodsproject_manager_watcher.cpp/.h- Complete rewrite for recursive watching and smart cachingproject_item_delegate.cpp/.h- AddedsetSelectedVersions()andisPointOnVersionBadge()methodsimporter.cpp- Added throttled progress updates withQElapsedTimerimport_progress_dialog.cpp- RemovedprocessEvents()calls to fix reentrancy
CMake Changes
- Added
project_import_worker.h/.cppto build - Version bumped to 1.5.0
Migration Notes
- Database: No schema changes—existing databases work without modification
- Settings: All settings are preserved from previous versions
- Project Database: Stored separately from Asset Manager database in
%AppData%/KAsset/KAsset Manager Qt/projects.db
Known Issues
- Version detection works best with standard naming conventions (v001, v1, _v02, etc.)
- Very large projects (100k+ files) may take several seconds for initial import
Acknowledgments
Thanks to everyone who provided feedback and reported issues for this release!
Version 1.4.5
Changelog for PR: Version 1.4.5 Release
🚀 Version 1.4.5 - Performance & High DPI Improvements
Performance Improvements
- File Manager Responsiveness: Eliminated 1-2 second delays after file operations (copy/move/delete) by removing unnecessary auto-refresh triggers. The QFileSystemModel already provides automatic updates via its internal file watcher.
- Optimized Refresh Logic: Streamlined onFmRefresh() to only perform manual refreshes when explicitly requested (F5 key or context menu), avoiding heavy model resets during automatic operations.
- Thumbnail Cache Management: Removed automatic cache clearing on directory refreshes to prevent thumbnail flicker and unnecessary re-decoding.
High DPI Display Support
- Qt High DPI Scaling: Added proper High DPI scale factor rounding policy (PassThrough) to prevent blurry text and UI elements on high-resolution displays.
- DPI-Aware Icons: Updated icon generation to create crisp, high-resolution icons that scale properly on 4K and high-DPI monitors (150%, 200%, etc.).
- Consistent Rendering: All UI elements now render at the correct physical pixel density for optimal clarity.
Technical Changes
- Version Updates: Bumped version from 1.4.0 to 1.4.5 across all build systems:
-- CMake project version
-- Windows resource file (app.rc)
-- NSIS installer script - Build System: Verified successful compilation and packaging with new version numbers.