Skip to content

Albedolizer v1.7.6-beta

Choose a tag to compare

@invisiblelevel invisiblelevel released this 28 Sep 16:14
· 7 commits to main since this release
7cba2c7

Chinese localization + critical batch fix + memory optimization.


🇨🇳 Chinese Localization

  • Full Simplified Chinese UI (中文) — every button, tab, header, dialog, and log message translated
  • Segmented language switcher in header — RU | EN | 中文 chips, active one highlighted with accent
  • Auto-detect system language on first launch — ru / zh / en picked from Windows UI locale
  • Fallback to English if the saved language is unknown or invalid
  • Chinese manual — manual.html now has three languages with segmented switcher
  • NotoSansSC font bundled for correct CJK rendering, with system fallback

🔴 Critical Batch Fix

Double-click on Batch / PBR Batch / Compress Batch was spawning parallel runs and corrupting output files. If you clicked "Run" twice before the first batch finished — two processes wrote to the same _corrected / _compressed / _pbr_output folder, overwriting each other.

Fixed with batch_running, compress_batch_running, pbr_batch_running flags. Second click is now ignored until the current batch finishes.


⚡ Memory Optimization

Batch processing was leaking memory on large folders:

  • asyncio.gather → worker pool — only N coroutines alive at once, not len(files). On a 500-file folder this used to create 500 idle coroutines waiting for the semaphore.
  • LUTwithBGridModel singleton — was recreated and re-loaded on every file (~500 MB per instance). Now loaded once per session.
  • Explicit del + gc.collect() after each file in a finally block — big 8K arrays are freed before the next file starts.
  • Log panel — no longer rebuilds the whole ListView on every line. Only appends/removes one ft.Text.
  • Thread pool capped at 4 + cv2.setNumThreads(1) — keeps CPU and RAM stable on big batches.

Result: stable memory usage during batch processing, no more growing RAM.


🛠 Other Changes

  • config.py cleaned up — dead "emoji" field removed from all 50 presets and 7 categories
  • All 50 presets + 7 categories now have Chinese translations
  • System requirements updated — 16 GB RAM minimum, 32 GB recommended. 8 GB noted as not recommended.

📦 Download

Albedolizer_Setup_v1.7.6-beta.exe — installer, Windows 10/11 64-bit.

System Requirements:

  • Windows 10/11 (64-bit)
  • RAM: 16 GB minimum, 32 GB recommended
  • 4+ CPU cores
  • 2 GB free disk space

See README for details.


🔗 Links


Full changelog: CHANGELOG.md

MIT License — free to use, including in commercial projects.