Releases: bluecherrydvr/bluecherry-apps
Bluecherry 3.1.14
Bluecherry is now completely free, no more licensing.
Dear Bluecherry community,
After many years of development, support, and running Bluecherry as a small business, the time has come to close the commercial side of the project. This was not an easy decision, but it’s one I feel is best for ensuring that Bluecherry continues in a way that is sustainable and accessible to everyone.
What’s changing:
- Bluecherry is no longer offered as a paid product (donations are accepted!)
- All features are now free and open source under the GPL license.
- There will be no more licensing fees, no purchase requirements, and no restrictions on camera counts.
What’s staying the same:
- The software itself lives on through the community and improvements as time allows.
- Clients for Linux, Windows, macOS, iOS, and Android remain available from our downloads page and client releases.
- Our community is still active — join us on the forums or in Discord.
👉Donate links:
More release notes about v3.1.14
Install 'rrdtool' (apt install rrdtool) to use the new monitoring system in the Bluecherry admin
This release contains critical fixes for segmentation faults, database stability, and performance issues affecting large installations.
🔧 Critical Fixes
- Segmentation Fault Prevention: Comprehensive null pointer protection in recording and streaming systems
- Database Stability: Fix critical PHP mysqli connection bugs causing fatal errors
- HLS Cleanup: Prevent race conditions and resource leaks during service destruction
- Thread Safety: Add mutex timeout protection and safe thread cleanup to prevent server lockups
- Database Timeouts: Implement proper timeout handling to avoid endless loops and hangs
🎯 Key Improvements
- Audio Stream Validation: Robust validation for TP-Link and other cameras with problematic audio streams
- Database Sync: Automatic database/filesystem synchronization to prevent disk fill issues
- Missing Recordings: Script to scan and add missing recordings after VM restores
- Modern Stats API: Replace fragile XML-based stats with robust JSON API
- Monitoring: Enhanced system monitoring with real-time charts and metrics
📦 Package Dependencies
- rrdtool: Added to Debian package dependencies for system monitoring
- bluecherry: Updated package with all critical fixes
⚠️ Important Installation Notes
Users must install rrdtool and update bluecherry package:
# Debian/Ubuntu
sudo apt update
sudo apt install rrdtool
sudo apt install bluecherry
🔄 Migration Notes
- License system has been removed - this is now a free and open source release
- Database schema updated for better performance and stability
- All existing configurations and recordings are preserved
📋 Full Changelog
See the detailed commit history for complete technical details of all fixes and improvements.
🆘 Support
For issues or questions, please check the documentation or open an issue on GitHub."
🆕 What’s New in 3.1.13
Resolved Startup Log Spam:
Fixed the "E(): Invalid media file path format: /" error messages that appeared when starting the service. Your logs will now be much cleaner!
Significant Media Cleanup Performance Boost:
Added new MySQL indexes to optimize media cleanup operations.This dramatically reduces CPU usage during media cleanup, especially on systems with large databases.
Expanded Audio Codec Support. Bluecherry now supports a wider range of audio codecs, including:
G.711 (μ-law and A-law)
AAC
PCM
G.726
Opus
This ensures better compatibility with a variety of IP cameras and audio sources.
Smarter Handling of Audio Codec Issues:
Instead of showing "error writing to recording" when an audio codec problem is detected, Bluecherry will now automatically ignore problematic audio codecs and continue recording video. This results in fewer interruptions and cleaner logs.
Cleanup System Optimization:
Major optimization of the media cleanup system for large installations, resulting in much better performance and lower CPU usage during cleanup operations.
General Stability Improvements:
Various bug fixes and under-the-hood enhancements for a smoother experience.
🔄 How to Upgrade
Update your system using your package manager, or download the latest packages from our official repository.
As always, we recommend backing up your database before upgrading.
📢 Need Help?
If you encounter any issues or have questions, please reach out via our Discord, our support portal or community forums.
v3.1.11
This release focuses on stability improvements over v3.1.9, reverting the RTSP server to the proven v3.1.9 behavior for enhanced reliability. The cleanup process has been optimized to run every 5 minutes instead of every minute to reduce system noise, while improving VBR stream DTS timestamp handling for more stable recordings. Additional fixes include media file path parsing improvements and reduced log spam from frame rate and timestamp gap warnings.
This also adds better support for RTSP streams that use VBR (CBR is still recommended).
Fixes:
- FIX: Reduce log spam for frame rate and timestamp gap warnings
- FIX: VBR stream DTS timestamp handling for improved recording stability
- Improve storage management security and validation
- Improve storage estimation accuracy and add data sufficiency checks
- Make cleanup process more I/O friendly: reduce batch sizes, add delays between deletions, improve logging
- DVR storage page is blank (Ubuntu 24.04 / php 8.2) (#729)
- Unable to delete license key from web UI if license ports == 0 (#743)
- Do not crash if MAX_STORAGE_AGE is empty (#731)
Features:
- Remove 'There are no supported video capture cards detected on this system.' when no analog cards installed (#741)
- Add PHP-FPM timezone fix script and update Certbot install logic for Ubuntu 24.04+ and Linux Mint 22.1+ in postinstall.sh
- Add path validation and disk space checks to check_dir_permission.sh
- Add transaction support and better error handling to storage.php
v3.1.2
What's Changed
- Add support of Ubuntu 23+, Debian 12 by @andrey-utkin in #683
- Prepare release v3.1.2 by @andrey-utkin in #684
Full Changelog: v3.1.1...v3.1.2
Version 3.1.1
What's Changed
FEATURE: Add button on device page to test access to video stream (#673)
FEATURE: More reliable ONVIF-based RTSP URLs discovery (#666)
FIX: More reliable media storage cleanup (#677)
FIX: Previously added DB upgrade (#661)
FIX: Bug causing redirect to stats.php (#672)
FIX: Bug in installer script failing mysql server installation on Debian 10 (#670)
Full Changelog: v3.1.0...v3.1.1
v3.1.0-rc10
What's Changed
- Enable live camera lookups by default by @curtishall in #619
- mysql-upgrade: make all the migration scripts executable by @andrey-utkin in #626
- Add aac_adtstoasc bitstream filter to bundled ffmpeg configuration by @andrey-utkin in #625
- Setup CI builds and push to docker hub by @curtishall in #623
- Rename install-unstable to v3.sh by @curtishall in #630
- Make sure pip-installed certbot gets upgraded on bluecherry package update by @andrey-utkin in #633
- Fix recordings dir reported not writable (#620) by @andrey-utkin in #627
- Sudo-bash-packages script improvements by @andrey-utkin in #636
- Fix installer on debian by @andrey-utkin in #651
- Allow adding storage locations and setup permissions by @curtishall in #642
- Update docker-publish.yml by @curtishall in #643
- Grow Devices.model DB field from 30 to 64 chars by @andrey-utkin in #649
- ONVIF: combine findings of different discovery tools by @andrey-utkin in #652
- Grow Devices.model DB field to 64 chars (fixup) by @andrey-utkin in #657
- Update mailer.php by @curtishall in #640
- Prefer TCP again by @andrey-utkin in #658
- mysql-upgrade: fix 3000011 by @andrey-utkin in #661
Full Changelog: v3.1.0-rc9...v3.1.0-rc10
v3.1.0-rc9
- FEATURE: Update video streaming APIs -- Enabling much better support for H.265, H.264 and audio streams (#613)
- FEATURE: Enable auto transport of RTSP streams (allow the device to select streaming method...default to UDP) (#599)
- FEATURE: Setup heath check endpoints for docker installs (WIP) (#608)
- FEATURE: Return XML and JSON for events (needed by Bluecherry Version 3 Client) (#611)
- FIX: Remove directories when they are empty (#579)
- FIX: Delete old motion event debugging snapshots (aefd31f)
- FIX: Allow devices to be removed (#612)
- FIX: Web: Layouts are not saved across sessions
- FIX: Storage check permission errors (04ede6f)
Full Changelog: v3.1.0-rc8...v3.1.0-rc9
v3.1.0-rc8
What's Changed
- Migrate to systemd by @curtishall in #561
- Fix socket descriptors leak. by @antonsviridenko in #570
- Prep for RC8 release by @curtishall in #575
- Jammy support by @curtishall in #576
- Full support for systemd by @curtishall in #573
Full Changelog: v3.1.0-rc6...v3.1.0-rc8
v3.1.0-rc6
- FIX: Thumbnails return 404 during web UI call #551
- FIX: Thumbnails are blank (or not included) during email notifications #549
- FIX: Web UI freezes, won't allow logins #550
- FIX: ONVIF scan does not return available paths #548
- FIX: ONVIF motion detection triggering fails #547
- FIX: onvif_tool is blank on RC5 #541
Full Changelog: v3.1.0-rc5...v3.1.0-rc6
3.1.0-rc5
- FIX: Frame based motion randomly stops in the middle of a motion event #(500)
- FIX: Constant recordings stop after several seconds (#523)
- FIX: Add cronscripts for domain and SSL renewal
- FIX: Only send webhook trigger on motion, not constant video (#515) -- Thanks to @mcnelson for this fix
- FIX: Increase Media.size limit to fix SQL errors with 1hr+ record segments (0294eef) -- Thanks to @mcnelson for this fix
- FIX: Web UI fix: can't delete webhooks when there are multiple webhooks configured (b384096) -- Thanks to @enp6s0 for this fix