File MistServer.changes of Package MistServer
------------------------------------------------------------------- Sat Nov 8 12:51:54 UTC 2025 - Yoshio Sato <vasua.ukraine@gmail.com> - Update to the new upstream release 3.9 * Behaviour change: Stream processes now default to masking output tracks for other stream processes * Feature: Added MistUtilHealth, a utility intended for (Docker container) health checking * Feature: Very basic SCTE35 support for TS-based outputs (more support to follow later) * Feature: RTMP push output can now override the host/app/stream with precision using URL parameters * Feature: Added ability to have RTMP push outputs close gracefully or gracelessly on request * Feature: Added effective FPS statistic (contains actually measured FPS, rather than metadata-signalled FPS) * Feature: Live streams can now configure max track idle time separately from the DVR window size * Feature: Push stats now also list "latency", a measurement of how close to the live point the push is * Feature: Added PLAY_REWRITE trigger, which lets you change which stream is actually loaded for any request * Feature: Added waitkey URL parameters, which makes the output wait for a new key frame to minimize latency * Feature: Added ability to override external port for WebRTC SDP generation * Feature: Added /whip/ and /whep/ WebRTC URLs that only permit input/output respectively * Feature: Added keepts flag to RTMP output, to not rewrite timestamps to zero * Feature: Support for every feature in the entire Enhanced RTMP 2.0 specification * Feature: Unknown (manual or secondary) pushes can now be auto-detected and will show up in API responses and the web interface * Feature: Added native support for JWT authentication/authorization for input and output (JWT support for admin login to follow at a later date!) * Feature: Added WHEP-based WebRTC player to the built-in player, updated WebSocket-based WebRTC player to use more modern code * Feature: Added keyboard controls to the built-in player * Feature: HTTPS and RTMPS now support TLS SNI, with multiple certificates * Improvement: System statistics are now collected in a more consistent manner * Improvement: Better generic handling of output sockets * Improvement: Robustified and added unit tests for process spawning/handling functions * Improvement: Converted WebSockets to blocking sockets for better efficiency * Improvement: Lowered WebSocket/MP4 client-side buffer for Chrome-based browsers * Improvement: nuke command (and MistUtilNuke) now is much less likely to leave the system in a bad state * Improvement: Massive performance improvement to the RTMP input and output protocols * Improvement: Added AMF library unit tests * Improvement: Triggers now send the X-PID header containing the calling process ID (MIST_PID environment variable for local executable handlers) * Improvement: Stream info JSON now contains H264 level and profile information * Improvement: Improved MP4 progressive startup time and latency * Improvement: Added a 60s idle timeout in HTTP(S) connections * Improvement: Support compiling against the newest libav versions * Improvement: Better subtitle positioning and sizing in the built-in player * Improvement: Updated mbedtls subproject to 3.6.5 * Improvement: AAC, Opus and FLAC tracks now read their metadata from the codec private data on ingest automatically (all protocols) * Improvement: HTTPS and RTMPS now print mbedtls log messages at various logging levels * Improvement: Starting a track selector with an exclamation point now expands to 'all,!' since that is almost certainly what a user actually means to do * Improvement: Jitter calculation was made more aggressive, allowing for tighter latency tolerances * Improvement: Updated librist subproject to 0.2.11 * Bugfix: Dozens of small bug/crash fixes * Bugfix: Fixed MacOS interrupt signal handling (ctrl+c / sigint works for shutdown again) * Bugfix: Fixed dynamic track switching in WebSocket-based protocols and WebRTC * Bugfix: Added support for negative extended relative timestamps in RTMP * Bugfix: Wait timeout for new data at the end of a track is 25 seconds again instead of the accidental 2.5 seconds it was * Bugfix: Fixed compiling without SSL enabled * Bugfix: Fixed Windows builds file permission issues * Bugfix: Sanitize SRT streamid before using as stream name * Bugfix: Fixed SRT options being ignored for listening SRT inputs * Bugfix: Fixed MP4 files inside playlists not working anymore * Bugfix: Fixed muted autoplay on Safari when using the built-in player * Bugfix: Parse init data for most codecs to find true track properties, rather than blindly believing stream metadata * Bugfix: Fixed push statistics to actually be the things their descriptions suggest them to be * Bugfix: Fixed RIST push output ignoring URL arguments unless a second question mark was appended ------------------------------------------------------------------- Thu Aug 7 10:41:52 UTC 2025 - Yoshio Sato <vasua.ukraine@gmail.com> - Update to new upstream release 3.8 * Feature: Auto-pushes can now be disabled based on specific tags (or stream names) being present on the stream * Feature: Live stream processes can now be disabled based on specific tags (or stream names) being present on the stream * Feature: Triggers can now be disabled based on specific tags (or stream names) being present on the stream * Feature: DTSC-pulled streams are now automatically tagged with the "#replicated" tag * Feature: Support for VP8/VP9/Opus codecs in MP4 input and output * Feature: Support for AV1 input and output in RTP-based protocols (WebRTC, RTSP, SDP) * Feature: Support for AV1 input in TS-based protocols (and partial support for AV1 output) * Improvement: Improved usability of the "edit stream" page in the web interface * Improvement: Updated mbedtls subproject to upstream 3.6.4 rather than the ancient fork used until now * Improvement: The controller has been rewritten to use an event loop rather than threads * Improvement: Custom variables API updated to be object-based rather than array-based, API calls now actually documented too * Improvement: Updated more of the internal code to use more readable/modern (C++11 rather than C++98) syntax * Improvement: Logs in the web interface now update in real time and contain more information * Bugfix: SRT protocol remote addresses reported correctly again * Bugfix: SRT input "acceptable streamid" setting works again * Bugfix: ulibc-based compiles now function * Bugfix: Fixed WebRTC datachannels not working if there were no metadata tracks in the stream * Bugfix: Blank stream names no longer get auto-rejected before the PUSH_REWRITE trigger could rewrite them * Bugfix: Fixed case-sensitivity in stream keys used with WebRTC or RTSP push input * Bugfix: Fixed the built-in updater and update check code * Bugfix: Fixed internal version number for libsrt subproject being incorrect * Bugfix: Load balancer integration now more quickly and more correctly determines the current stream ingest status * Bugfix: Fixed VP9 support input and output in RTP-based protocols (WebRTC, RTSP, SDP) * Bugfix: Fixed some minor JSON parser edgecase bugs, specifically around empty arrays and objects * Bugfix: HTTP-based URLs in triggers no longer contain "?stream=STREAMNAME" unless that was actually in the request URL - Provide MistServer reported version via DRELEASE flag ------------------------------------------------------------------- Mon Jul 21 14:46:07 UTC 2025 - Yoshio Sato <vasua.ukraine@gmail.com> - Suppress strict aliasing violations warnings to make build log readable. - Add build flag to default char to unsigned type. - Further correct descriptions to make them more clear. ------------------------------------------------------------------- Thu Jul 17 07:14:43 UTC 2025 - Jan Engelhardt <jengelh@inai.de> - Add forced symbol versions to ensure lockstep RPM updates, since the shared library is otherwise completely unversioned. - Trim redundancies from descriptions. ------------------------------------------------------------------- Tue Jul 15 12:21:24 UTC 2025 - Yoshio Sato <vasua.ukraine@gmail.com> - Update to new upstream release 3.7 * Feature: DTSC push/pull now can function in either async (allow tracks to have their own timing) or sync (keep tracks synced) mode * Feature: Support for HTTP PUT push output with all container formats * Feature: Support for HLS push to Youtube specifically (automatic URL format recognition) * Feature: Support for shell-style string quoting and escaping wherever Mist supports running commands * Feature: Implemented native support for "stream keys" (no longer needs a custom trigger now) * Feature: Support for WHIP push output * Improvement: Cleaner implementation of TS SRT initial seek behaviour (also supports all options now) * Improvement: Rewrote Mist's internal STUN library * Improvement: The local-only UDP API (used for some internal communications) now auto-retries booting up later if networking was not yet available during MistServer's start, rather than aborting immediately * Improvement: MistProcLivepeer was updated to match the version in the Catalyst branch (including support for locally running broadcaster nodes) * Improvement: All MistProc processes are now unable to select their own outputs as inputs * Bugfix: Fixed timing of outputs that would get spurious wakeups in the event handler (no longer goes ahead of real time) * Bugfix: Fixed password-based push input for RTMPS * Bugfix: Fixed listening RTMPS port * Bugfix: Fixed incoming RTMP pushes with non-zero start times * Bugfix: Fixed track pages not always reloading when they needed to * Bugfix: Fixed non-configured streams causing a reconnect loop (was especially noticable with SRT) * Bugfix: Fixed compatibility with Naver CHZZK * Bugfix: Fixed a small memory leak in the MPEG2-TS parser * Bugfix: Fixed raw-mode TS-based inputs not shutting down automatically with zero viewers - Switch to mbedtls 3 ------------------------------------------------------------------- Sun May 11 19:10:14 UTC 2025 - Yoshio Sato <vasua.ukraine@gmail.com> - Make it final ------------------------------------------------------------------- Sat May 10 20:42:56 UTC 2025 - Yoshio Sato <vasua.ukraine@gmail.com> - Debug dependancy unresolvability ------------------------------------------------------------------- Fri May 9 22:07:21 UTC 2025 - Yoshio Sato <vasua.ukraine@gmail.com> - Fix user config install X2 ------------------------------------------------------------------- Fri May 9 22:03:16 UTC 2025 - Yoshio Sato <vasua.ukraine@gmail.com> - Fix user config install ------------------------------------------------------------------- Wed May 7 22:32:14 UTC 2025 - Yoshio Sato <vasua.ukraine@gmail.com> - Finilize project for the first Factory release. ------------------------------------------------------------------- Mon May 5 13:14:45 UTC 2025 - Yoshio Sato <vasua.ukraine@gmail.com> - Remove unneeded and dangerous /dev/shm cleanup from the systemd service file. ------------------------------------------------------------------- Mon May 5 12:40:29 UTC 2025 - Yoshio Sato <vasua.ukraine@gmail.com> - Remove unneeded build dependencies. ------------------------------------------------------------------- Sun May 4 14:29:59 UTC 2025 - Yoshio Sato <vasua.ukraine@gmail.com> - Temporarily switch to home selfbuilt libraries to produce complete working builds. ------------------------------------------------------------------- Fri May 2 21:33:16 UTC 2025 - Yoshio Sato <vasua.ukraine@gmail.com> - Initial packaging, thanks to Georg, Richard, Gertjan and my imaginary friends.