Zixi Product Updates
Zixi Broadcaster Release Notes
Release Notes: Zixi Broadcaster Version 16
32 min
v16 13 45476 (20 june 2024) improvements agentz is now automatically installed by the broadcaster installer, similar to v17 v16 12 45243 (15 feb 2024) improvements the transcoder (and re multiplex) now supports up to 10 audio streams added discontinuity tag when there is a gap in hls segments made duration calculation more accurate for audio streams in adaptive groups allow, with a warning message, sending zixi push input with rtp headers as rtp/rist output stream with rtp in the payload, or with non transport stream keep the original payload clear 'low target bitrate' error after 5 seconds of no error on demuxed streams v16 11 45011 (12 nov 2023) improvements exposed "decompression errors" network receive statistics counter, instead of having a permanent "compression error" state that can be caused by a single packet added error message when transcoding a source with crop setting enabled when also keeping original video stream v16 10 44940 (21 sep 2023) improvements added "updates" field to inputs/outputs network statistics the counter indicates how many times the statistics were updated reduced tr101 warnings on a cbr padded stream v16 9 44823 (7 aug 2023) improvements allow sending multiple srt push outputs to the same port for applications that can accept multiple streams on one port, stream is identified by ip+port+stream v16 8 44765 (26 june 2023) improvements added support for non public s3 file sources with pre signed url v16 7 44709 (14 may 2023) improvements added all audio pids and channels to ndi outputs added active/active failover support for zixi inputs on zec added option to reconnect on low bitrate on pull inputs from multiple hosts when enabled, it behaves like the standalone zixi receiver the default behavior, which is reconnect on disconnected stream, has not changed added monitoring for inputs to the multiplexer if all inputs are offline, it will report an error if one or more inputs are offline, but at least one is still active, the multiplexer will pad the generated mpts stream with null packets in order to meet the requested bitrate added listing of spts configured components of multiplexed streams in the inputs listing api endpoint improved performance of dtls by using aes 128 on both intel and graviton by default instead of aes 256 on intel and chacha on graviton v16 6 44654 (29 march 2023) improvements ecm/emm pids are now passed through when de multiplexing an mpts source improved timing of webvtt captions converted from 708 added support for failover groups with zixi pull inputs to zixi edge compute (zec) added validation for segment duration and segment count on adaptive groups exposed “keep rtp headers” setting on rtp, rist, and failover inputs reduced memory utilization of rtp inputs to enable higher density v16 5 44584 (27 feb 2023) improvements added ability to convert 608 closed captions to webvtt; previously only supported 708 to webvtt updated ndi library to v5 5 v16 4 44543 (3 jan 2023) improvements added support for mpeg2 video and mpeg1 layer2 audio to software transcoding added cqa tests on individual pid in mpts for failover group switching added custom header configuration to aws s3/mediastore outputs added url encoding for streamid and password for srt inputs/outputs so non http compatible characters can be used added suppression of pcr accuracy reporting if the stream is vbr and gray it out in the tr 101 p1/p2 dialog added pid map, http file and mpts sources to broadcaster's "new output" dialog improved handling when switching from cbr to vbr in transcoding improved mpts multiplexor to provide indication if streams are not "ready" improved reliability of startup process for transcoder channels updated to use tr101 mgb2 profile for bitrate calculation, previously used mgb1 updated to allow any pid to be specified during pid mapping even when pid not found by pat/pmt parsing updated zixi pull output latency to be static instead of dynamic, which reduces output jitter when doing zixi push in + zixi pull out when the push input is jittery eliminated unnecessary re connection of push sink or any other sink when switching its source seamlessly exposed vbr/cbr in the tr 101 pid under status increased default de jitter buffer of transcoded sources to reduce audio/video drops v16 3 44466 (9 nov 2022) improvements added support for software based transcoding on arm processors added support for nvidia gpu transcoding on machines with arm processors and nvidia gpus testing and validation was performed on aws g5g ec2 instances added "minimize latency" feature on push/pull zixi inputs in this mode the latency target will be adjusted down from the user setting to automatically find the lowest error free latency added support for access control by stream id on srt streams added support for editing inputs/outputs/adaptive parameters without restarting the broadcaster this feature is only available via api only using 'no restart' parameter added support for locking on a particular input in failover group the locked input will be used even if it is offline this feature is only available via api added support for adjusting freeze & blank detection timeout values this feature is only available via api added support for chunked http transfer for predefined ts http inputs the pid map type input now uses its original input max bitrate instead of a hard coded value of 10mbps for its max bitrate setting v16 2 44358 (6 sep 2022) improvements improved stability of tr 101 analyzer improved stability of file inputs and smoothing on arm platforms v16 1 44331 (4 aug 2022) arm architecture support the zixi broadcaster/zec is now being built for armv8 64 bit in addition to the existing x86 64 bit architecture on linux; windows builds are still only available for x86 64 bit currently, two unique arm builds are being created the first is compiled with the “ mcpu=neoverse n1” flag, as recommended by aws for graviton2/3 vms, and the second is compiled with no flags for raspberry pi 4 these builds can be used on aws graviton2/3 vms, ampere vms on gcp, azure, and oci, raspberry pi 4 devices, and other armv8 64 bit devices tr 101 analyzer the zixi broadcaster/zec now includes an internally developed tr 101 analyzer that replaces the 3rd party tr 101 analyzer used previously the new analyzer has better performance and stability while producing equivalent results to the previous analyzer and can be compiled for necessary architectures, currently x86 64 bit and armv8 transport stream multiplexer the zixi broadcaster now includes a transport stream multiplexer which combines multiple single program transport streams (spts) into one constant bitrate multi program transport stream (mpts) the multiplexer supports automatic sequential pid renaming to ensure unique pids in the resulting mpts pid mapping can also be used to create user defined pid numbering multiplexing is a licensed feature in the zixi broadcaster/zec and may be subject to additional commercial terms when configured in the broadcaster ui, automatic pid renumbering will be used use of the broadcaster api is required to perform multiplexing combined with pid mapping scte 35 injection the zixi broadcaster/zec now includes the ability to inject scte 35 messages into transport streams created from any input type all transport stream outputs connected to those inputs will include the scte 35 messages when scte 35 injection is enabled, a scte 35 pid will be added to the transport stream scte 35 injection is available via the broadcaster api and uses the base64 binary form of scte 35 messages http file input the zixi broadcaster now supports file input from an http/https url, such as an s3 bucket previously, file input only supported files on the local file system when the input is started, the file will be copied from the remote server to a temporary location on the local file system and then ingested into the broadcaster as with local file input, the container of the remote file must be transport stream ( ts) a typical use case for file inputs is to use it as a backup in a failover group such that if the primary and secondary streams disconnect, there is a backup from the file input webrtc ingest the zixi broadcaster now includes the capability to capture a webrtc stream from a browser that has access to a user’s webcam and microphone zixi provides sample code to be integrated into the customer’s web page that captures the audio and video this is an advanced feature please discuss with your zixi representative to learn more about it zixi edge compute the standalone zixi feeder and zixi receiver software have been replaced by zixi edge compute (zec) software which shares the same codebase as the zixi broadcaster, but functions like the feeder and receiver the zixi feeder allowed you to ingest udp/rtp and asi streams and then outputs zixi streams to a zixi broadcaster similarly, zec allows you to ingest udp/rtp and asi streams but also adds srt, rist, rtmp, and rtsp input streams and then outputs zixi streams to a zixi broadcaster the zixi receiver allowed you to pull zixi streams from a zixi broadcaster and then outputs udp/rtp and asi streams locally similarly, zec allows you to pull zixi streams from a zixi broadcaster and then output udp/rtp and asi streams locally but also adds srt, rist, and rtmp output streams like the zixi feeder and zixi receiver, zec requires a license to be activated but is free to use the zixi broadcaster and zec use the same installed binary in the same installation folder the license activated determines whether the binary operates in broadcaster mode or zec mode prior to licensing, the web ui will have a black banner at the top after being licensed the banner will be green in broadcaster mode and the banner will be red and blue in zec mode installation directory changes with the addition of arm builds on linux, the installation directory name for zixi broadcaster/zec has been updated previously, the linux x86 64 bit broadcaster was extracted to a directory named “zixi broadcaster centos7 transcoder” the new directory for the linux x86 64 bit broadcaster is “zixi broadcaster linux64” the directory for the graviton2 build is “zixi broadcaster graviton2” and the directory for the raspberry pi build is “zixi broadcaster raspberry” when you upgrade a broadcaster from linux x86 64 bit v15 to v16 using the web ui, the new directory will be created and the necessary config files will be copied over to the new directory the previous “zixi broadcaster centos7 transcoder” directory is not removed also, the zixibc service which runs the broadcaster as a service will be updated to point to the v16 broadcaster in the “zixi broadcaster linux64” directory if you need downgrade back to v15, the original “zixi broadcaster centos7 transcoder” directory will be used again and the zixibc service needs to be updated to point to the v15 broadcaster in this directory also, if you made any changes to the broadcaster configuration while using v16, the configuration files need to be copied over to the v15 broadcaster directory if you made any license changes to the broadcaster configuration while using v16, the license file needs to be copied over to the v15 broadcaster directory the following steps will downgrade your installation from the v16 broadcaster to the original v15 broadcaster $ service zixibc stop $ cd zixi broadcaster centos7 transcoder $ cp /zixi broadcaster linux64/ xml $ cp /zixi broadcaster linux64/broadcaster lic $ /installme sh license server update starting with v16 of the zixi broadcaster, a new license server is being used by the broadcaster and needs to be whitelisted in firewalls on networks hosting the zixi broadcaster the new fqdn to whitelist is license2 zixi com the existing fqdn license zixi com is also still in use and needs to be whitelisted protocol updates zixi added fec only mode in the zixi protocol srt updated to v1 4 4 of srt library (libsrt) udp/rtp added selection between "arrival time" or "rtp timestamps" for rtp input dejittering default is 20ms dejitter in rtp/udp inputs " fixed rtp input misfiring high bitrate alerts because of fec bitrate hls fixed missing cc line in main manifest when closed captions are present in the stream added index to hls input name in case there are streams with duplicate bandwidth values dash fixed issue with dash live playlist not recorded when adaptive recording enabled rtsp fixed incorrect counter of disconnections for rtsp inputs transcoder updates the zixi broadcaster now supports encoding audio to dolby digital plus, also known as enhanced ac 3, during transcoding in addition to the existing aac and opus audio encoding performance/memory improvements significantly improved total throughput note, on aws ec2 instances it is now possible to exceed the egress limits on compute optimized vms and you may need to switch to network optimized vms for high throughput workflows improved load time with large configuration files) improve the broadcaster service restart time by about 50% reduced memory allocation of pull inputs and outputs changed authentication queue to lifo to prevent long recovery after broadcaster restart when authentication is slow improved server side connection speed for many simultaneous connections added pagination for broadcaster inputs/outputs listing in the ui and api enabling larger quantity of inputs and outputs additional improvements added ability to customize ciphers on dtls server a new field for dtls ciphers is available in the web ui in advanced mode thumbnail extraction is now portable across different cpu higher quality thumbnails are now created when the input stream is higher quality added pid mapping for mpts sources added ability to output logs to stdout