56 Commits

Author SHA1 Message Date
Roman Gaufman
f4a4e8fb05 Add inter-packet gap monitoring and fix RTCP CPU spinning
## 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>
2025-08-13 12:26:14 +10:00
Roman Gaufman
02623f8ed4 Year 2024 -> 2025 2025-08-13 11:28:14 +10:00
Roman Gaufman
a0eb8f918e Version bump to 2024-10-24, remove -D option 2024-10-29 16:47:37 +00:00
Roman Gaufman
2c92a57ca0 Remove old files 2023-06-15 12:02:14 +01:00
Roman Gaufman
31284aa641 Version bump to 2023.06.14 2023-06-14 14:34:41 +01:00
Roman Gaufman
bbee4ed68a Merge branch 'master' of github.com:rgaufman/live555 2020-06-10 13:04:22 +01:00
Roman Gaufman
a05b352d20 Revert "Version bump to 2020.04.24"
This reverts commit 136f0698f6.
2020-06-10 13:04:15 +01:00
Roman Gaufman
57510f608a Revert "Update copyright notice to 2020"
This reverts commit 14fb47e521.
2020-06-10 13:04:13 +01:00
Roman Gaufman
3e9bcd851d Revert "Version bump to 2020.04.24"
This reverts commit 136f0698f6.
2020-05-22 17:11:50 +01:00
Roman Gaufman
9b388bbecd Revert "Update copyright notice to 2020"
This reverts commit 14fb47e521.
2020-05-22 17:11:41 +01:00
Roman Gaufman
136f0698f6 Version bump to 2020.04.24 2020-04-30 11:29:15 +01:00
Roman Gaufman
14fb47e521 Update copyright notice to 2020 2020-04-30 11:19:47 +01:00
Roman Gaufman
ef01f0a7db Bump to version 2019.05.29 2019-06-22 22:03:31 +01:00
Roman Gaufman
ceeb4f4627 Bump to version 2018.08.28 2018-09-02 23:16:00 +01:00
Roman Gaufman
7f998f37f5 Add back -D option 2018-06-19 00:17:15 +01:00
Roman Gaufman
73b3e77017 Bump to 2018.04.25 2018-06-19 00:14:19 +01:00
Roman Gaufman
1e53b79a04 Add back -D option 2017-07-28 13:14:12 +01:00
Roman Gaufman
a81f3d4be8 Bump to 2017.07.18 2017-07-28 13:12:47 +01:00
Roman Gaufman
41f8160323 Add back -D option 2017-06-07 14:49:32 +01:00
Roman Gaufman
0813cc61e7 Bump to 2017.06.04 2017-06-07 12:58:26 +01:00
Roman Gaufman
b760e44d57 Add max-inter-packet-gap-time to proxyServer 2017-01-31 14:27:37 +00:00
Roman Gaufman
41a5ec5f65 Bump to version 2017.01.26 2017-01-28 17:29:20 +00:00
Roman Gaufman
c32916d06d Add max-inter-packet-gap-time to proxyServer 2016-10-12 15:35:57 +01:00
Roman Gaufman
7aaacef814 Bump to 2016.09.12 2016-09-15 16:39:05 +01:00
Roman Gaufman
eda27a2d0f Merge pull request #7 from andyx96/master
Bump to 2016.06.22
2016-06-25 21:54:47 +01:00
Akari Kamigishi
bd01e55562 Bump to 2016.06.22 2016-06-24 14:49:43 -04:00
Roman Gaufman
d9e97d7953 Bump to 2016.01.29 2016-02-02 16:53:01 +00:00
Roman Gaufman
1a265652f4 Bump to 2015.11.09 2015-12-04 17:17:21 +00:00
Roman Gaufman
35c375c6b1 Bump to 2015.08.07 2015-08-21 11:39:23 +01:00
Roman Gaufman
b8cde65b01 Bump to 2015.08.07 2015-08-15 12:33:33 +01:00
Roman Gaufman
8dde202fd3 Bump to 2015.07.31 2015-08-02 10:17:57 +01:00
Roman Gaufman
5a3d054837 Bump to 2015.06.25 2015-07-02 12:27:26 +01:00
Roman Gaufman
5e83972638 Bump to 2015.06.11 2015-06-20 00:30:18 +01:00
Roman Gaufman
66820d5593 Bump to 2015.05.12 2015-05-22 21:48:29 +01:00
Roman Gaufman
0a066bb074 Bump to 2015.05.03 2015-05-06 23:19:20 +01:00
Roman Gaufman
018bc1361e Bump to 2015.04.22 2015-04-30 11:50:58 +01:00
Roman Gaufman
0aad224066 Bump to 2014.03.01 2015-03-04 15:59:35 +00:00
Roman Gaufman
423335c65c Bump to 2015.01.27 and double OutPacketBuffer for Dahua cameras 2015-02-01 12:34:16 +00:00
Roman Gaufman
d15741e748 Add back modifications.patch 2014-09-10 11:52:53 +01:00
Roman Gaufman
6b87f7f368 Bump to 2014-08-26 2014-09-10 11:50:32 +01:00
Roman Gaufman
678b141763 Bump to 2014-07-18 2014-07-18 10:47:10 +01:00
Roman Gaufman
680a15a543 increase buffer to 2000000 like before 2014-04-09 08:16:24 +01:00
Roman Gaufman
3ddcec94d7 Bump to version 2014.03.25 2014-04-09 08:08:53 +01:00
Roman Gaufman
c1dc0f2574 Bump to version 2013.12.05 2013-12-06 16:40:24 +00:00
Roman Gaufman
3057ea9674 Fix inability to specify port 2013-07-29 21:23:46 +01:00
Roman Gaufman
86eae178eb Better readme 2013-07-29 20:31:53 +01:00
Roman Gaufman
eecaa2eff0 Bump to version 2013.07.16 2013-07-29 20:20:19 +01:00
Roman Gaufman
e79ecf9519 Bump to version 2013.04.30 2013-05-22 16:51:55 +01:00
Roman Gaufman
f44a1e0923 Bump to version 2013.04.06 2013-04-09 11:21:38 +01:00
Roman Gaufman
68e0baab7b Bump to version 2013.03.07 2013-03-22 09:41:11 +00:00