mirror of
https://github.com/rgaufman/live555.git
synced 2026-01-12 00:04:30 +08:00
## Key Changes ### 1. Inter-packet Gap Monitoring for Proxy Server - Added -D option with 10-second default timeout for dead stream detection - Implemented ProxyRTSPClient::checkInterPacketGaps_() functionality - Automatic stream reset when no packets received within timeout period - Enhanced proxy server reliability for network interruptions and camera reboots - Updated method signatures across ProxyServerMediaSession components ### 2. RTCP CPU Spinning Fix - Fixed infinite loop in RTCPInstance::incomingReportHandler1() - Added buffer state reset and graceful return instead of break - Enhanced logging for troubleshooting malformed RTCP packets - Prevents 100% CPU usage with buggy RTP/RTCP-over-TCP implementations ### 3. Enhanced Documentation - Updated README.md with comprehensive feature documentation - Added usage examples for new -D option with different timeout values - Documented all production reliability improvements - Updated modifications.patch with proper file exclusions ### 4. Minor Improvements - Updated copyright years to 2025 across multiple files - Enhanced TLS state management with setupContinue() method - Fixed SRTP initialization and ROC handling - Improved BufferedPacket destructor to prevent stack overflow - Updated task scheduler for better event loop handling ## Technical Details - Added fTotNumPacketsReceived and fInterPacketGapMaxTime tracking - Implemented packet counting across all media subsessions - Enhanced ProxyRTSPClient constructor with interPacketGapMaxTime parameter - Added proper task cleanup and delayed task scheduling - Fixed method signature propagation throughout proxy subsystem These changes significantly improve live555's production reliability, particularly for deployment with buggy IP cameras and unstable networks, while maintaining complete backward compatibility. 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>