Releases: comosense/nnnvr
Release list
1.1.1
Release v1.1.1: Improved Stability and Atomic File Operations
Summary
This release focuses on improving the overall stability and fault tolerance of nnnvr, ensuring it can recover more gracefully from unexpected system shutdowns or power failures.
Key Changes
-
Atomic File Operations
File writing processes have been upgraded to use atomic operations. This prevents critical configuration or lock files from becoming corrupted if the system crashes or loses power during a write operation. -
Smarter Lock File Management
The application lock filennnvr.lockis now created in the system's temporary directory by default, rather than the working directory. This effectively resolves issues where stale lock files prevent the NVR from starting after a hard reboot. -
Configuration Changes
UpdatedREADME.mdto include the newtempDirparameter in the Configuration section.
You can now optionally specify atempDirin yournnnvr.json:
{
"tempDir": "/dev/shm/nnnvr",
"streams": [ ... ]
}(If omitted, nnnvr will automatically use your OS's default temporary directory.)
1.1.0
Release: v1.1.0
Summary
This release enhances the flexibility of nnnvr by allowing direct customization of FFmpeg options. It also improves overall recording reliability and storage safety by optimizing default configurations.
Key Changes
- FFmpeg Option Customization
- Added support for
gOptions(Global),iOptions(Input), andoOptions(Output) in the configuration file (nnnvr.json). - This allows users to pass custom parameters to FFmpeg for hardware acceleration, network timeout adjustments, or specific stream tweaks.
- Added support for
- Improved Recording Reliability
- The default recording container has been changed to Matroska (mkv).
- This ensures that video files remain recoverable even in the event of an unexpected power failure or stream disconnection.
- Safer Storage Management Threshold
- The default storage cleanup threshold (
removeStart) has been lowered from 99% to 90%. - This provides a safer margin for the OS, preventing system instability due to a full disk.
- Note: You can still customize this value via
removeStartin your configuration file. If you prefer the previous behavior, simply set it back to99.
- The default storage cleanup threshold (
Improvements & Fixes
- Code Cleanup: Fixed minor typos in error logging messages.
- Documentation: Updated
README.mdwith enhanced license information and a professional disclaimer. Fixed a formatting issue in thesystemdservice example.
Migration Note
Existing users upgrading from v1.0.* can continue using their current nnnvr.json. To take advantage of the new FFmpeg customization features, please refer to the "Example 2: Comprehensive nnnvr.json" in the updated README.md.