AetherEngine 3.6.1
·
65 commits
to main
since this release
Patch release. Refines the live no-cut stall handling from 3.6.0.
Fixed
- Live no-cut stall classified by read rate, not packet count. A slow live source that trickles packets (a Wowza SMIL
bouncere-buffering at an SSAI ad splice) could accumulate enough packets over a long stall to be misread as a cutter wedge, tripping the tight wedge timeout and forcing a premature host retune to the server transcode route mid-program. The watchdog now classifies a cutter wedge (streaming at full rate but unable to cut) versus source starvation (a trickle) by the packet read rate over the stall window. A slow source now takes the longer starvation backstop and gets time to resume, so a trickling live feed no longer reloads onto the server route at an ad boundary. Device-verified on a Wowza FAST channel: the ad boundary now plays through without an intermediate reload.
Changed
- The no-cut stall trace reports a per-window breakdown (video / keyframe / audio / foreign-stream packet counts, last foreign stream index, and the video PTS advance across the stall) so an undetected live boundary is diagnosable from one log line. Non-audio/video streams are also named by codec in the demuxer open log.
Full changelog: https://github.com/superuser404notfound/AetherEngine/blob/main/CHANGELOG.md