Koushik Dutta
e66ea8e794
rebroadcast: publish
2026-02-26 08:42:31 -08:00
Alexis Rouillard
6fd84af50f
rebroadcast: Use optional chaining for allowBatteryPrebuffer ( #1986 )
2026-02-18 10:19:15 -08:00
JoshADC
7112e049cb
rebroadcast: fix RTMP acknowledgement uint32 overflow ( #1980 )
...
The RTMP client's totalBytesReceived counter grows unbounded as a
JavaScript number. When it exceeds 2^31 (~2.15 GB received), the
writeUInt32BE call in sendAcknowledgementIfNeeded throws a RangeError
because JavaScript bitwise operations produce signed 32-bit integers.
This crashes the RTMP session and drops the video stream.
For a high-bitrate camera like the Reolink D340P (~4 Mbps main stream),
this overflow occurs after approximately 90 minutes of continuous
streaming, causing periodic stream drops at a consistent interval.
Fix by using the unsigned right shift operator (>>> 0) to keep
totalBytesReceived and bytesToAck in the unsigned uint32 range [0,
4294967295], matching the RTMP spec's sequence number wrapping behavior.
Co-authored-by: Josh Casada <joshcasada@Joshs-Mac-mini.ts.net lan>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com >
2026-02-08 18:53:46 -08:00
Koushik Dutta
f415e4f2e1
rebroadcast: publish beta with native rtmp support
2026-01-18 12:59:31 -08:00
Koushik Dutta
af8abb6072
rebroadcast: publish rtmp support beta
2026-01-09 12:45:48 -08:00
Koushik Dutta
7ef868e42d
rebroadcast: rtmp window acks
2026-01-09 12:35:11 -08:00
Koushik Dutta
0185680791
rebroadcast: remove some bit shifting in favor of read/write uintbe
2026-01-08 21:35:04 -08:00
Koushik Dutta
1349bb7433
rebroadcast: slop rtmp implementation
2026-01-08 21:29:05 -08:00
Koushik Dutta
aa85e7ec19
rebroadcast: avoid mjpeg codecs and warn
2025-12-06 12:38:22 -08:00
Koushik Dutta
923dff378c
snapshot/rebroadcast: publish new privacy mode
2025-11-13 09:43:18 -08:00
Koushik Dutta
6356702ba3
rebroadcast: privacy mode
2025-11-13 09:40:28 -08:00
Koushik Dutta
8099df4a2a
rebroadcast: prevent buffering from buggy RTSP clients like frigate from causing memory leaks in scrypted
2025-10-01 09:16:30 -07:00
Koushik Dutta
a4a3731b94
rebroadcast: always use scrypted rtsp parser for consistency
2025-09-23 20:01:29 -07:00
Koushik Dutta
f4a55ee76b
rebroadcast: always use scrypted rtsp parser for consistency
2025-09-23 12:47:16 -07:00
Koushik Dutta
cdf42fc1a2
rebroadcast: fix url escaping for basic auth
2025-04-24 19:23:23 -07:00
Koushik Dutta
66455c8f01
rebroadcast: fix bug where stream may be started on fragmented key frame
2025-04-05 09:57:21 -07:00
Koushik Dutta
2d93a69c91
homekit/rebroadcast: fix prebuffer calculation, remove prebuffer warning
2025-04-02 22:12:12 -07:00
Koushik Dutta
553678ed1a
rebroadcast: Fix cluster addresses not being used
2025-04-02 12:33:45 -07:00
Koushik Dutta
b3b7265263
rebroadcast: wipe acodec arguments if encoder arguments are explicitly provided
2025-04-01 20:51:07 -07:00
Koushik Dutta
301213fc5f
rebroadcast: remove dead code
2025-03-31 11:07:28 -07:00
Koushik Dutta
da393ae4e0
rebroadcast: ensure audio mute/no audio is in sync
2025-03-31 10:57:09 -07:00
Koushik Dutta
3872cb391a
rebroadcast: publish with h265 parsing fixes
2025-03-16 23:22:39 -07:00
Koushik Dutta
cef8482b93
sdk: partial revert of ffmpeg input changes
2025-03-16 19:52:47 -07:00
Koushik Dutta
f729c76346
various: remove defunct ffmpeg args
2025-03-16 19:09:40 -07:00
Koushik Dutta
771d90ea73
rebroadcast: publish
2025-03-15 08:11:39 -07:00
Koushik Dutta
ba28899dc3
rebroadcast: beta
2025-03-15 00:52:44 -07:00
Koushik Dutta
3e57c90208
rebroadcast: fix mixin order
2025-03-15 00:52:07 -07:00
Koushik Dutta
83a9ad2250
rebroadcast: reorder mixin order for regular (ie, non webrtc) cameras to be first to prevent stream flapping due to mixin change noise
2025-03-11 15:24:40 -07:00
Koushik Dutta
cd3e2340b8
rebroadcast: most camera plugins depend on this, so ensure snapshot and webrtc are downloaded as well
2025-02-19 14:55:32 -08:00
Koushik Dutta
1a2aadfb52
rebroadcast: fix audio soft mute with adaptive bitrate and other downstream clients
2025-01-29 08:48:55 -08:00
Koushik Dutta
6e6898ce33
common/rebroadcast: change rtp packet size to 32000 since that is what is supported on darwin for some reason
2025-01-21 13:48:38 -08:00
Koushik Dutta
611674af46
rebroadcast: publish
2025-01-16 08:24:01 -08:00
Koushik Dutta
55a76a86dc
rebroadcast: fixup output args example
2025-01-14 12:51:34 -08:00
Koushik Dutta
d272a4b86f
rebroadcast: fix basic auth
2025-01-07 18:52:36 -08:00
Koushik Dutta
b033d24451
rebroadcast: implement synthetic streams
2025-01-03 23:15:45 -08:00
Koushik Dutta
427139e8df
rebroadcast: wip remove transcode extension
2025-01-03 21:55:20 -08:00
Koushik Dutta
6ce538bb23
rebroadcast: setting for default parser
2025-01-02 11:06:24 -08:00
Koushik Dutta
29ab0e79de
rebroadcast: use large rtp packets with ffmpeg for efficient processing
2025-01-02 08:58:15 -08:00
Koushik Dutta
8ec6a25833
rebroadcast: add support for rtsp url using cluster address in case scrypted server address is not set
2024-12-23 11:16:36 -08:00
Koushik Dutta
ff903fa891
rebroadcast: fix external urls with ipv6
2024-11-15 10:02:13 -08:00
Koushik Dutta
12be06adad
rebroadcast: cleanup
2024-11-15 10:02:13 -08:00
Koushik Dutta
ec2e4d64fd
rebroadcast: set online/offline state without prebuffer requirement
2024-10-29 12:21:40 -07:00
Koushik Dutta
89e6e50b12
rebroadcast: reduce logging
2024-08-26 23:04:51 -07:00
Koushik Dutta
2da762dfc2
server: working transferible buffers
2024-08-19 13:20:21 -07:00
Koushik Dutta
bfbc6ba6ce
rebroadcast: fix build
2024-08-19 12:02:45 -07:00
Koushik Dutta
6d9cd45936
rebroadcast: add global audio soft mute
2024-08-13 20:13:03 -07:00
Koushik Dutta
b43a002650
rebroadcast: fix content base handling when it is a relative path
2024-08-11 11:40:07 -07:00
Koushik Dutta
70d6813938
rebroadcast/webrtc: fix mp3 handling
2024-08-10 14:17:07 -07:00
Koushik Dutta
3ae6079615
rebroadcast: publish
2024-07-31 20:29:31 -07:00
Koushik Dutta
946d88236c
rebroadcast: beta
2024-07-29 14:25:30 -07:00