Notes on latest versions are located here.
3.7.0-5 Sep 17 2020
3.5.7-6 Jul 01 2019
4.0.2-1 Jul 26 2023
- support running transcoding scenario in out-of-process mode
- fixed issue with pulling HLS audio-only streams
- support re-starting transcoder "on-the-fly" when color parameters changed
- improved forwarded SCTE-35 markers processing in transcoded streams
4.0.1-9 Jul 04 2023
- fixed 'timeout' parameter processing for Advertizer per-session handler
- fixed sending CORS headers in response to HEAD request during HTTP re-streaming
4.0.1-8 Jun 28 2023
- support setting custom SRT parameters for SRT redundancy pulls
- support sending "raw" MPEG-TS outputs requested with streamid via SRT (requires Addenda license)
- fixed issue with sending AV1 streams via RTMP
4.0.1-7 Jun 21 2023
- support logging SLDP requests to access.log
- support setting logging level for WMSAuth errors
- fixed issue with processing RTSP input on RTP timestamp change
- fixed issue with AVC configuration record generation
- some logging improvements
4.0.1-6 Jun 13 2023
- support sending ETag and processing If-None-Match headers
- fixed sending proper trackId for AV1 streams sent over SLDP
- fixed crash in ID3 tag processing during HLS pull
4.0.1-5 Jun 05 2023
- fixed issue with deleting SLDP session via Nimble API
- fixed reporting bandwidth to the panel after the last client is disconnected
- support recording AV1 video to DVR
4.0.1-4 Jun 01 2023
- AV1 codec support in SLDP streams
- AV1 codec support in streams generated by server playlist
- support keeping SCTE-35 markers in HLS output streams with inserted ads
- support logging RTMP/RTSP/SRT sessions information to sessions.log
4.0.1-3 May 24 2023
- support enhanced RTMP for re-publishing and playing streams with AV1 and HEVC video
- AV1 codec support for live transmuxing to MPEG-DASH
- fixed updating ID3 tags from pulled HLS stream
- fixed sending response for HEAD requests
4.0.1-2 May 12 2023
- support enhanced RTMP spec for publishing AV1 and HEVC video
- support CUE-IN auto insertion into HLS output
4.0.1-1 May 10 2023
- support Dante protocol for Transcoder input/output on Windows
- support passing VUI metadata parameters through Transcoder for HDR image enhancement
- fixed conditional encoding in case of using HEVC stream as an input
- fixed issue with checking VOD-to-RAM cache threshold when VOD-to-RAM cache first is enabled
4.0.0-5 May 01 2023
- fixed issue with processing MPEG-TS streams containing non-program map sections in PMT
- fixed issue with using NDI stream as failover for multiple streams
- fixed OPUS support for MPEG-TS HTTP streams
4.0.0-4 Apr 12 2023
- fixed some MKV transmuxing issues
- some compatibility improvements for input MPEG-TS processing
4.0.0-3 Apr 10 2023
- use Nimble cache directory for tmp GeoDB files to fix issue with updating GeoDB on newer OSes
- skip empty AAC headers to support some RTMP publishers
- fixed allowing/blocking "Unknown" country range in WMSAuth
- ignore UTF-8 BOM in WebVTT subtitles files
4.0.0-2 Apr 04 2023
- performance improvements to reduce CPU usage in ndireader thread
- fixed issue with processing WebVTT subtitles having timestamps in mm:ss.ttt format
- avoid updating AAC sequence header when it is not changed
4.0.0-1 Mar 30 2023
- require WMSPanel registration to operate
- fixed issue with keeping custom request parameters for VOD when SMIL file is used
- fixed rare crash after Icecast ad insertion
3.7.13-3 Mar 23 2023
- fixed issue with reporting correct PIDs list for MPEG-TS Outs after input stream is changed
- fixed issue with Icecast and MPEG-TS playback when HTTP origin is enabled
3.7.13-2 Mar 15 2023
- support applying Transcoder and Addenda licenses via WMSPanel
3.7.13-1 Mar 13 2023
- support RTMP publishing to Vimeo
- fixed rare crash in h264_cuvid decoder
3.7.12-9 Mar 07 2023
- fixed incorrect chunks generation in server playlist after stream pause if MP3 is used as a source
- fixed caching PD content in RAM cache in case of using re-streaming routes
- some logging improvements
3.7.12-8 Feb 27 2023
- support pulling HLS FMP4 streams
3.7.12-7 Feb 06 2023
- support probing and switching to primary RTMP and Icecast pull source (requires Addenda license)
3.7.12-6 Jan 23 2023
- report publisher IP or source URL for streams to WMSPanel
- increase max number of DVR archives info reported to WMSPanel
- fix reporting client IP to publish control handler or via API
3.7.12-5 Jan 16 2023
- support probing and switching to primary SRT pull source (requires Addenda license)
3.7.12-3 Jan 08 2023
- support Sigma DRM platform
- fixed hanging in PAT/PMT processor
3.7.12-2 Dec 26 2022
- support re-transmissions processing for published WebRTC streams
- fixed issue with processing RTSP streams (double encapsulation of FU-A units)
3.7.12-1 Dec 19 2022
- log traffic info to sessions.log
3.7.11-9 Dec 12 2022
- support using multiple threads for pulled streams processing
- some logging cleanup
- removed legacy Icecast settings processing
3.7.11-8 Dec 02 2022
- fixed rare crash in MPEG-TS stream processing
- fixed MP4 thumbnails generation for iOS/macOS compatibility
3.7.11-7 Nov 29 2022
- support CEA-708 CCs indication in live and DVR HLS manifests
- fixed crash when DVR transmuxer fails to open audio segment
- support using multiple threads for RTMP re-publishing
- support transmuxing local MKV files to HLS
3.7.11-6 Nov 18 2022
- support CEA-608 CCs indication in live and DVR HLS playlists
3.7.11-5 Nov 14 2022
- AV1 codec support for VOD transmuxing
- fixed indication of SCTE-35 program type in MPEG-TS streams
- support 10-bit pixel formats in NVENC encoder
- fixed crash in SLDP ad insertion when video-only content is used
3.7.11-4 Oct 31 2022
- support recording DVB subtitles to DVR
3.7.11-3 Oct 20 2022
- added ppv_id field to /manage/sessions output for sessions using PPV signature
- some performance improvements
3.7.11-2 Oct 13 2022
- fixed issue with using MP3 audio stream as an input for server playlist
- support keeping SAR from the input stream using 'keep-sar' encoder parameter
- some performance improvements
3.7.11-1 Oct 06 2022
- support defining server playlist blocks in separate files
- fixed issue with reporting status of pulled streams
3.7.10-9 Sep 28 2022
- support encoding to MP2 audio using FFmpeg 'mp2' encoder (nimble-transcoder package upgrade is required)
- support reporting RTMP/RTSP/Icecast pull status to WMSPanel
3.7.10-8 Sep 21 2022
- support storing ID3 metadata from input streams to DVR
- support passing SCTE-35 markers to MPEG-DASH streams (requires Addenda license)
- support disabling chunk splitting on SCTE-35 marker
- support encoding with yuv422p yuv422p10 pixel format using libx264
- fixed issue with re-streaming scrambled MPEG-TS
- fixed issue with reporting status of pulled HLS audio-only stream
3.7.10-7 Sep 08 2022
- support pulling HLS audio-only streams
3.7.10-6 Sep 04 2022
- fixed processing of some RTMP metadata fields sent as a string
- avoid reporting PD session when self-redirect is used until actual data is requested
3.7.10-5 Aug 29 2022
- support re-streaming MPEG-TS streams over HTTP MPEG-TS without muxing (requires Addenda license)
- fixed processing streams with long SPS
3.7.10-4 Aug 11 2022
- fixed issue with Advertizer hanging when per-session handler is used
- fixed incorrect DVR max bucket size calculation
- fixed issue with OUT-CONT SCTE-35 marker CRC mismatch
3.7.10-3 Aug 07 2022
- support SRT connection bonding for SRT input (requires nimble-srt-1.5 on Ubuntu 20/22)
- fixed issue with pulling SRT from "hanged" source (connected but not sending stream data)
3.7.10-2 Aug 02 2022
- support re-streaming MPEG-TS streams over UDP/SRT/RIST without muxing
- support encoding with yuv420p10 pixel format using libx264
3.7.10-1 Jul 18 2022
- support sending streams requested with streamid via SRT RTMP-style (requires Addenda license)
- support forwarding SEI timecodes from input streams to NDI output
3.7.9-12 Jul 07 2022
- support H.265 codec in published WebRTC streams
3.7.9-11 Jul 04 2022
- fixed crash caused by incorrect UDP/SRT CBR sender destruction sequence
3.7.9-10 Jul 04 2022
- support sending OPUS audio via SLDP
3.7.9-9 Jun 24 2022
- fixed issue with WHIP clients processing for Publish Control
- support setting 'fc', 'sndbuf' and 'rcvbuf' options for SRT senders and listeners
- added 'stream' field to server playlist status API response
3.7.9-8 Jun 20 2022
- support keeping order of custom parameters in stream URLs
- support providing sent/received bytes stats for sessions via Nimble API
- support "on-the-fly" restart of transcoding pipeline when input stream parameters' changed
- support inserting EXT-X-CUE-OUT-CONT markers to DVR streams
- added /manage/server_playlist_status Nimble API
- fixed issue with infinite loop sending content with unsupported codec via MPEG-TS
- fixed issue with setting incorrect PES packet size for HLS & MPEG-TS output
3.7.9-7 Jun 07 2022
- fixed broken SRT stats json generated for WMSPanel and Nimble API
3.7.9-6 Jun 06 2022
- support sending SRT stats to WMSPanel to display for MPEG-TS In and UDP streaming
- support WebVTT and TTML subtitles for VOD MPEG-DASH
- support passing audio language descriptor to outgoing MPEG-TS streams
3.7.9-5 May 26 2022
- support setting Icecast StreamTitle and StreamUrl for streams generated from VOD with server playlist
- added Nimble API to list and deny client playback sessions
- support DVR cleanup triggered with "too old" criteria
- fixed issue with "flushing" chunk when SCTE marker is received in pulled HLS stream
3.7.9-4 May 19 2022
- support using IPv6 for RTMP interface (processing push & play)
- support DVR cleanup triggered with "free space on storage" criteria
- fixed issue with adding extra discontinuities to DVR chunklists
- add source stream URL or publisher IP information to /manage/rtmp_status Nimble API output
3.7.9-3 May 12 2022
- support using multiple threads for exporting MP4 from DVR
- support publishing HLS to YouTube
3.7.9-2 May 03 2022
- support reporting RTMP/RTSP re-publishing status to WMSPanel
- support generating number-based MPEG-DASH manifests for VOD
3.7.9-1 Apr 28 2022
- support WebRTC publishing to Nimble (Linux only)
3.7.8-12 Apr 25 2022
- fixed UDP CBR sending when DVB subtitles are in the outgoing stream
3.7.8-11 Apr 18 2022
- support 'scte35' ads insertion mode in case of using per-session ad insertion handler
- support generating HLS I-Frame playlist from DVR
- support passing SCTE-35 markets to HLS output when advertizer is enabled but stream is not a target for ads insertion
3.7.8-10 Apr 06 2022
- support logging referrer to sessions.log
- support adding frameRate and scanType fields to MPEG-DASH manifests for HbbTV compatibility
3.7.8-9 Mar 28 2022
- improved SRT CBR sender to have more stable packet IAT
- fixed issue with duplicating URL parameters for manifest during MPEG-DASH re-streaming
3.7.8-8 Mar 09 2022
- fixed parsing duration from SCTE-35 marker with zero program_splice_flag
- fixed starting live stream in server playlist block when Nimble is re-started
- fixed CENC encryption for 1-byte NAL units
3.7.8-7 Mar 04 2022
- fixed issue with generating streams from .git files with incorrect FPS
- fixed issue with high CPU usage in SLDP sender
3.7.8-6 Mar 01 2022
- support per-application HLS AES encryption configured via drm.conf (requires Addenda license)
- fixed issue with pulling Icecast streams to Nimble with 'audio/mp3' content type
- fixed issue with detecting backward timestamps gap in HLS transmuxer
- fixed issue with ads insertion into HLS FMP4 VOD streams
3.7.8-5 Jan 28 2022
- support Widevine/FairPlay encryption for HEVC streams
- fixed crash in Server playlist when empty metadata returned for live stream
3.7.8-4 Jan 24 2022
- additional handling of timestamps' forward gap for HLS fMP4 and MPEG-DASH
- send encrypted stream name in 'name' field of CPX request to KeyOS
3.7.8-3 Jan 17 2022
- support setting Accessibility tag with CEA-608 CCs indication in live and DVR MPEG-DASH manifests
3.7.8-2 Jan 11 2022
- fixed FairPlay encryption if key is already available and input stream is re-started
3.7.8-1 Jan 07 2022
- support using live streams as an input in server playlist
- report SmartTV player when SmartTV platform is detected
3.7.7-6 Dec 28 2021
- support redirecting to https origin in Geo-redirection rules
3.7.7-5 Dec 22 2021
- support using multiple "default" DVR writer threads
- additional fix for the issue with setting DISCONTINUITY to both audio and video tracks
- support inserting EXT-X-CUE-OUT-CONT markers after EXT-X-CUE-OUT
3.7.7-4 Dec 10 2021
- fixed issue with high RAM usage in rist_sender while publishing stream via RIST (nimble-rist package upgrade is required)
3.7.7-3 Dec 10 2021
- fixed issue with DRM encryption for packets with timestamp value > 2^32
- fixed issue with setting DISCONTINUITY to both audio and video tracks
3.7.7-2 Dec 06 2021
- fixed setting correct manifest type for range requests from DVR
- fixed issue with sending UDP CBR causing CBR list overflow
- fixed crash during RTMP handshake when multiple RTMP camera threads are used
3.7.7-1 Nov 30 2021
- support using file:// scheme for Advertizer handler and content URLs
- some improvements in FFmpeg encoder wrapper to support codecs like h264_ni_enc
- fixed issue with adding discontinuity to HLS FMP4 live stream when it is not required
- fixed issue with breaking ad with SCTE-35 marker
- removed processing Verimatrix DRM protection settings from WMSPanel (drm.conf shall be used for configuration)
3.7.6-12 Nov 23 2021
- fixed playback issue on some players for ads inserted into RTMP streams
- additional handling of timestamps overrun in MPEG-TS Input
- support setting RTMP chunk size using option in nimble.conf
3.7.6-11 Nov 16 2021
- support selecting stream by index in MPEG-TS Out settings
- support using NDI v5 library
- fixed issue with rounding SCTE timestamp to 33 bit
3.7.6-10 Nov 11 2021
- fixed issue with providing not all available NDI streams via API
- do not add empty DVR archives to ABR master playlist
3.7.6-9 Nov 02 2021
- support breaking ad insertion if SCTE-35 In marker is received
- added Nimble API to receive the list of available NDI streams
3.7.6-8 Oct 28 2021
- improvements in MPEG-DASH manifest generation from DVR to avoid playback issues for recordings with gaps between periods
- fixed issue in Transcoder decoding stream with extradata
3.7.6-7 Oct 17 2021
- fixed issue with pulling HLS streams encrypted with HLS AES when keep-alive mode is used
- fixed issue with NVENC-only encoder when B-frames are enabled
- support reporting host name for pulled RTMP streams
3.7.6-6 Oct 11 2021
- insert Location tag into static re-streamed MPEG-DASH manifests
- build with and support using SRT 1.4.4
3.7.6-5 Oct 04 2021
- set Location to static MPEG-DASH manifests from absolute path setting
3.7.6-4 Sep 30 2021
- support using multiple threads for processing published RTMP streams
- support pulling HLS in keep-alive mode
- fixed setting first period start time in MPEG-DASH manifest from DVR
3.7.6-3 Sep 23 2021
- support conditional encoding based on input stream resolution
- support generating live HLS FMP4 chunk lists with multiple init segments when stream resets
3.7.6-2 Sep 16 2021
- support passing KLV metadata to MPEG-TS HTTP streams
- support reporting mpeg2video streams' info to WMSPanel
- memory usage optimization to support cleaning unused HLS segments and parts faster
- add UTCTiming element to MPEG-DASH manifests with Time-based template
3.7.6-1 Sep 09 2021
- switch to using nimble-transcoder-1.1.5-1 libraries (nimble-transcoder package upgrade is required if Transcoder is used)
- avoid adding :443 port in Host header when pulling HLS
3.7.5-8 Sep 07 2021
- support recording mpeg2video to DVR
- force resetting SRT socket when SRT parameters changed to immediately apply settings
- some improvements for ads insertion into RTMP stream
- fixed custom parameters duplication when re-streaming HLS FMP4 using routes
3.7.5-7 Aug 30 2021
- support chunked Transfer-Encoding in HTTP responses from remote VOD storage
- send 'running' status in SDT for UPD output
- save transcoding scenarios' names to rules.conf to restore when uploading rules.conf to WMSPanel
3.7.5-6 Aug 25 2021
- support setting language attribute for audio tracks in MPEG-DASH ABR manifest
- support sending maximum bitrate descriptor in MPEG-TS UDP
- support adding DISCONTINUITY to HLS FMP4 output when audio frames drops detected
- fixed issue with using .mp3 files in server playlist
3.7.5-5 Aug 19 2021
- support HTTP/2 output for HLS/MPEG-DASH re-streaming
- some changes in MPEG-DASH manifest generation to conform DASH-MPD.xsd scheme
- support NDI CBR sender enabled using 'ndi_sender_cbr_enabled' option
- support 'dash_vod_profiles' option to set specific MPEG-DASH profiles for VOD
- fixed parsing WebVTT subtitles with cue settings
- some logging cleanup
3.7.5-4 Jul 26 2021
- support applying rules.conf to already existing server using regutil reapply-rules-conf option
3.7.5-2 Jul 19 2021
- support transmuxing AC-3/EAC-3 audio to HLS FMP4
- some improvements in MPEG-DASH manifest generation from DVR for THEOplayer compatibility
3.7.5-1 Jul 14 2021
- Server playlist: create live streams from VOD content by specifying "server playlist". Requires Transcoder license.
- fixed issue with cleaning up fragments of remote VOD from cache when VOD file is >4GB
3.7.4-11 Jul 06 2021
- reworked MPEG-DASH stream resetting logic when timestamp issues detected
- delete empty DVR archive folder when DVR archive is deleted
- some logging cleanup and improvements
3.7.4-10 Jun 21 2021
- fixed issue with passing Icecast metadata in case of big metadata packets
- fixed issue with re-streaming HLS FMP4 from Nimble not working in HTTP origin mode
- support setting cache granularity for remote VOD re-streaming
3.7.4-9 Jun 15 2021
- support storing SCTE-35 markers to DVR
- some logging improvements
3.7.4-8 Jun 03 2021
- support streaming pre-transmuxed MPEG-DASH VOD content with session tracking
- added Nimble API to provide RIST stats
- fixed issue with using settb filter in Transcoder pipeline
3.7.4-7 May 31 2021
- support streaming pre-transmuxed HLS VOD content with session tracking
- support reporting NVENC GPU load to WMSPanel
- fixed issue with setting SCTE-35 PID in PAT/PMT in some cases
3.7.4-6 May 24 2021
- support auto-assigning transcoded stream to NVENC GPU based on GPU load
- support using librist v0.2.0 from updated nimble-rist package
- fixed issue with streaming .mp4 files >4GB via remote VOD on Windows
- fixed issue with processing 302 redirect after chunk request in HLS pull
3.7.4-5 May 18 2021
- support LL HLS streaming over HTTP/1
- fixed reporting session duration in sessions.log to make it the same as reported to WMSPanel
- send Content-Type header with requests to client auth handler
3.7.4-4 May 13 2021
- build with and support using SRT 1.4.3
- support binding SRT push to specific local interface IP/port
3.7.4-3 May 11 2021
- support passing KLV metadata to MPEG-TS UDP streams
- support setting streamid for pulled SRT streams
3.7.4-2 Apr 27 2021
- added verbose logging for started/stopped RTMP/RTSP/SRT publishing sessions
- fixed issue with inserting pre-roll ads when 1-second HLS segments used
3.7.4-1 Apr 21 2021
- support using per-session handler in Advertizer to display client-specific ads
3.7.3-15 Apr 19 2021
- fixed several issues with SCTE-35 markers sending and processing
3.7.3-14 Apr 13 2021
- fixed issue with sending UDP CBR stream containing SCTE-35 markers
- fixed crash processing MPEG-TS stream with subtitles
3.7.3-13 Apr 07 2021
- support interlaced video format for NDI output
3.7.3-12 Apr 04 2021
- support passing Icecast metadata (streamTitle) to HLS ID3 field for streams produced by Transcoder
- support 'retransmitalgo' option in SRT settings
3.7.3-11 Mar 23 2021
- fixed duration calculation for MP4 files exported from DVR
- increased RTMP chunk size to support high bitrate streams
3.7.3-10 Mar 11 2021
- support passing DirecTV CCs in NVENC decoder
- improve SLDP client inactivity checking to speed-up disconnection when stream goes offline
3.7.3-9 Mar 08 2021
- fixed issues in HTTP/2 processor that could potentially cause infinite loop
- some fixes to improve playback of LL HLS
- support 'live_transmuxing_buffer' option in nimble.conf to set buffer size for live transmuxer
3.7.3-8 Mar 01 2021
- some fixes to improve playback of LL HLS (FMP4)
3.7.3-7 Feb 11 2021
- support hexadecagonal aac sound for MPEG-TS/SRT input transmuxed to RTMP/RTSP output
- some improvements in SVT-HEVC encoder parameters setting
3.7.3-6 Feb 09 2021
- fixed issue with ads insertion into VOD streams with subtitles
- some fixes in VCAS CPIX API usage (content ID characters screening and authorization token support)
- additional logging in verbose mode to nimble.log when stream is registered
3.7.3-5 Feb 02 2021
- some fixes to improve playback of LL HLS when MPEG-TS/HLS/SRT is used to receive input stream
- support Verimatrix Multi-DRM (using VCAS CPIX API to retrieve DRM keys)
- added option to change logging level in FFmpeg libraries
3.7.3-4 Jan 21 2021
- fixed issue with timestamps during hotswap (emergency/failover) switching in Transcoder
- support ads insertion into HLS FMP4 VOD streams (requires Addenda license)
3.7.3-3 Jan 18 2021
- support reporting cache sizes via /manage/server_status Nimble API
- some logging cleanup for RTSP sender
3.7.3-2 Jan 13 2021
- fixed issue with re-opening listened SRT ports on Windows when Transcoder produces NDI streams
3.7.3-1 Jan 11 2021
- support ads insertion into VOD streams (requires Addenda license)
- performance improvements for chunklist/manifest generation from DVR
3.7.2-5 Dec 17 2020
- support adding EXT-X-RENDITION-REPORT HLS tag to ABR chunklists when HLS LL is enabled
- support using 'cue-short' HLS ad marker format to produce CUE-OUT without explicit DURATION
3.7.2-4 Dec 07 2020
- some improvements to fix playback of LL HLS in Firefox/THEOplayer
3.7.2-3 Dec 01 2020
- some improvements for the case using image file as a video source in Transcoder
- fixed another issue with using FFmpeg QSV encoder (increased extra HW frames pool for filters)
3.7.2-2 Nov 26 2020
- support Widevine/PlayReady/FairPlay DRM for VOD streams, see setup article (requires Addenda license)
- support generating JPG thumbnails for live streams (requires Transcoder)
- fixed issue with exporting MP4 from DVR when different timescale is used for video and audio tracks
- fixed issue with using FFmpeg QSV encoder
3.7.2-1 Nov 23 2020
- support Apple Low-Latency HLS (updated implementation based on the latest spec)
- set proper videocodecid for HEVC in RTMP metadata
3.7.1-6 Nov 11 2020
- Nimble DRM support for BuyDRM's KeyOS DRM platform as a DRM keys provider
- added 'joint_stereo' option support for LAME MP3 encoder
3.7.1-5 Oct 27 2020
- support FairPlay DRM encryption for playback from DVR
- support using settings from WMSPanel for switching MPEG-TS pull and HLS pull to primary source
3.7.1-4 Oct 26 2020
- support Widevine/PlayReady DRM encryption for playback from DVR (requires Addenda license)
- support probing and switching MPEG-TS pull and HLS pull source (requires Addenda license)
- support TLS SNI for publish/unpublish notification calls
3.7.1-3 Oct 20 2020
- build with and support using SRT 1.4.2
3.7.1-2 Oct 20 2020
- transitional release to support using both SRT 1.4.1 and 1.4.2
3.7.1-1 Oct 19 2020
- support reporting online/offline status for SRT publish point used with streamid
- support reporting currently pulled MPEG-TS URL to WMSPanel
- fixed issue with re-publishing SRT stream to Nimble when streamid and publish control is used
3.7.0-9 Oct 06 2020
- improved logic joining received MPEG-TS packets without DTS
- improved processing MPEG-DASH EPG requests from DVR
3.7.0-8 Oct 01 2020
- support using the latest RIST library on Ubuntu 18 & 20 (requires upgrading nimble-rist to 1.0.0-3)
3.7.0-7 Sep 29 2020
- support reporting stats for SRT streams published with streamid via /manage/srt_receiver_stats API
- support reporting stats for SRT senders via /manage/srt_sender_stats API when multipoint listener mode is used
3.7.0-6 Sep 21 2020
- fixed passing Icecast metadata for Transcoded streams via Nimble API
- fixed overriding icy-metaint with value from user-defined Icecast metadata
- improved passing Icecast metadata in Transcoder to support using metadata from failover stream
- fixed issue with parsing PES header in MPEG-TS Input in some rare cases
3.7.0-4 Sep 14 2020
3.7.0-1 Aug 18 2020
- support HEVC playback and re-publishing via RTMP
- improvements in SPS parsing to read proper stream resolution
- fixed issue with using big files (>4GB) for DVR storage
- preparations to support EPG requests for MPEG-DASH from DVR
- support multi-protocol failover for MPEG-TS and HLS streams (MPEG-TS to HLS and vice versa)
3.7.0-3 Sep 07 2020
- support DRM protection using PallyCon Multi-DRM license service
- improvements to play multi-period MPEG-DASH manifests from DVR
- fixed issue with providing negative session ID in HLS/MPEG-DASH playlists
3.7.0-2 Sep 01 2020
- support RTMP authentication for publishing to Wowza
- support using host name instead of IP for publish point when publishing SRT streams
- support generating video/mp4 thumbnails for live streams
- support capturing NDI streams to file using nimble_ndi utility
- support inserting overlay/picture on GPU when NVENC-only or QuickSync pipeline is used on Ubuntu 20.04 (requires nimble-transcoder libraries to 1.1.4-1)
- added 'rtmp_instant_pull_remove' option to immediately disconnect from RTMP source indicating that stream is stopped/not available anymore
- switch to using nimble-transcoder-1.1.3-1 libraries (nimble-transcoder package upgrade is required if Transcoder is used)
- support using QuickSync encoders/decoders/filters from FFmpeg on Ubuntu 20.04
- fixed issue with HLS transmuxing of mp4 files with SPS/PPS bigger than 188 bytes
- send Content-Type header with publish/unpublish notification calls
3.6.8-2 Aug 06 2020
3.6.8-1 Jul 16 2020
3.6.4-6 Feb 10 2020
3.6.4-5 Feb 03 2020
3.6.4-3 Jan 22 2020
3.6.0-5 Sep 25 2019
- support pulling SRT streams when host name is specified in settings instead of IP
- fixed crash in nimble_ndi in case of receiving audio via NDI with more than 8 channels
- fixed HEVC decoder configuration record initialization for HEVC playback via SLDP in Chromium
- support NDI protocol for Transcoder input/output
- support reporting SRT session stats in WMSPanel and SRT WMSAuth (requires Addenda license)
- fixed issue with using HTTP/2 for management interface
- support adding Widevine and PlayReady DRM protection information to MPEG-DASH manifests to avoid playback issues of DRM protected streams in Shaka Player and THEOplayer
- support handling streamid parameter and per-stream authentication for published SRT streams
- support IPv6 for SRT streaming
- improved logic for maintaining proper state of output stream for pulled/pushed MPEG-TS/HLS/SRT streams
- respond with 404 to ABR chunklist request for not available live/DVR stream
- fixed infinite loop in MPEG-TS processor that could happen processing invalid input data
- respond with 404 to ABR playlist request if no ABR renditions available
- support streaming HLS and MPEG-DASH from remote VOD via HTTPv2
- fixed issue with cleanup of DVR archives containing only empty periods
- support using VCAS encoder token (JWT) for encoder authorization
- support reporting AppleTV devices to WMSPanel for devices report
- support FairPlay DRM protection with EZDRM
- support using updated version of nimble-rist (1.0.0-2) on Ubuntu 18.04
- fixed issue with setting proper FPS and bitrate in Transcoder
- fixed issue with setting proper START-DATE in EXT-X-DATERANGE tag
- fixed redirecting to HTTP/1.1 replying to HTTP/2 request recevied for HLS re-streaming route
- support parsing duration from EXT-X-CUE-OUT when it is indicated implicitly (without DURATION subtag)
- support using TLS SNI in stream checker nodes
- support RIST streaming protocol
- fixed issues with using NVENC decoder causing flickering and CCs mixing in some cases
- support streaming PD from remote VOD via HTTPv2
- support Common Encryption to apply DRM protection for MPEG-DASH (requires Addenda license)
- support using Widevine Cloud Service to fetch encryption keys
- support using EZDRM to fetch encryption keys for Widevine and Playready DRM
- fixed timestamps issue in audio-only HLS from DVR causing audio glitches on iOS devices
- some logging improvements in Transcoder and RTMP stream processor
- added 'filter' parameter support to enable FEC in SRT
- support enabling HTTP origin mode globally using option in nimble.conf
- fixed WMSAuth blocking by Referer for SLDP streams
- build with SRT 1.4.1 on Windows
- fixed crash in case of VOD transmuxing errors when HTTPv2 is used
- fixed Transcoder buffer overflow when using file as a source and synchronizing video to audio
- support using NVENC decoder, encoder and filters from FFmpeg on Ubuntu 18.04
- fixed passing Icecast metadata to transcoded stream when input Icecast stream is pushed to Nimble
- some fixes to improve playback of MPEG-DASH streams with Number-based template manifest
- improved mp4 exporting from DVR to better handle cases with unsynchronized a/v tracks
- added Nimble API to inject SCTE-35 In marker
- support using VCAS CEI v2.0 interface for retrieving DRM keys
- support using HTTPv2 for streaming local VOD content (PD/HLS/MPEG-DASH)
- fixed HLS AES encryption of HLS FMP4 streams from DVR
- support sending 'steady' timestamps in SLDP streams for synchronized playback in different players
- some logging cleanup and improvements
- increased sync buffer size to support receiving more settings
- some improvements in json parsing to gracefully handle cases with incorrect/unexpected json
3.6.4-6 Feb 10 2020
- fixed issue with producing Icecast streams in case Icecast publisher re-connects multiple times
- added config option for compatibility with Panasonic cameras publishing RTMP streams
3.6.4-5 Feb 03 2020
- support using per-stream resource ID for VCAS (currently <app>/<stream>)
- support recording EAC-3 audio to DVR
- support reporting to WMSPanel if SRT and Transcoder libraries are loaded
- improved mp4 exporting from DVR to better handle cases with unsynchronized a/v tracks
- fixed potential crash when processing incorrect LATM in pulled MPEG-TS streams
3.6.4-3 Jan 22 2020
- support processing incomplete EAC-3 frames from input streams
- fixed issue with using percent-encoding in RTSP password
- support pulling MPEG-TS and HLS streams from origins using 'chunked' Transfer-Encoding
- fixed issue with resetting PTS in mpeg2video decoder
- support fragmented LATM in pulled MPEG-TS streams
- fixed mp4 file size calculation when exporting from DVR via Nimble API
- fixed saving setting for reporting IPs and user-agents via PPV
- support using encoders from custom-built FFmpeg
- fixed crash during LL HLS parts generation
- support Apple Low Latency HLS for HLS FMP4 and HLS MPEG-TS streams
- support switching to fallback sources in SRT pull
- close all inherited descriptors in external encoder process
- some logging cleanup and improvements
- updated parameter names for libsvthevc encoder
- fixed issue with exporting .mp4 files from DVR archives containing empty periods
- some logging improvements
- support using SVT-HEVC encoder library in Transcoder
- fixed crash when parsing malformed advertizer rules
- support running transcoders in out-of-process mode
- fixed crash if Icecast pull failed to register outgoing stream
- support parsing and producing SCTE-35 tags from/to HLS in different formats
- support HTTPv2 for live streaming
- support passing Icecast metadata to HLS ID3 metadata fields (streamTitle)
- upgraded OpenSSL version used on Windows (requires upgrading SRT package if SRT is used)
- support using SRT 1.4.0
- fixed playback sessions reporting for HLS playback from DVR
- support providing server host name during registration to display in WMSPanel
- some improvements in range requests processing
- use proper default port for MPEG-TS streams pulled over HTTPS
- support 'characteristics' attribute in SMIL processor
- fixed issue in stream checker causing failures when fetching streams with '../' parts in URL
- fixed PES time rounding issue to correctly generate leading and trailing chunks in Advertizer
- support loading libva2 to use VA API in Transcoder on Ubuntu 18.04+
- support loading libmfx to use in QuickSync in Transcoder on Ubuntu 19.04+
- support calling external handler for publish/unpublish notifications
3.6.0-5 Sep 25 2019
- fixed memory leak in Transcoder in case multiple scenarios produced output to the same stream
- fixed issue with setting correct EXT-X-DISCONTINUITY-SEQUENCE causing playback problem in Exoplayer
- support generating multiple CEA-708 NAL units to properly pass long subtitles
- additional error handling in Advertizer module
- additional error handling in Advertizer module
- support passing DVB subtitles to transcoded streams
- support passing Icecast metadata via RTMP streams
- support aggregated connections and bandwidth limitation in WMSAuth
- switch to using nimble-transcoder-1.1.0 libraries (nimble-transcoder package upgrade is required if Transcoder is used)
3.5.9-4 Aug 19 2019
- added Nimble API to inject SCTE-35 markers to insert advertisements triggered by "scte35"
- fixed issue with changing listened SRT IP address
- fixed issue with logging advertisements when content was deleted from handler response before ad playback is finished
- added Radioplayer as known user-agent to use in WMSPanel Players report
- support offset-0 option to indicate preferred point to start playback in DVR HLS playlist
- do not show ads to users with empty ID when personalized ads enabled ("users" is not empty)
- added improved UDP CBR streaming mode
- fixed incorrect JSON generation in /manage/rtmp/republish/<id> API response
- fixed issue with saving settings to rules.conf
- fixed video decoder update when video format is changed
- added Nimble API to manage RTMP re-publishing
- removed UDT streaming support
- fixed issue with logging error on Windows after calling Nimble API
3.5.7-6 Jul 01 2019
- fixed issue with pulling RTSP streams with URL parameters in Content-Base response header
- support setting presentationTimeOffset attribute in MPEG-DASH ABR manifests
- support logging Nimble management API access
- support using HTTPS for Nimble API
- added EXT-X-START tag for inserted pre-roll advertisements
- fixed interleaved compensation if different timescale is used for video and audio tracks
- set codecs info in DVR playlist from requested period when EPG request is used
- support resetting MPEG-DASH manifest content when timestamp issues detected
- fixed issue on Windows with sending files >4GB via PD over SSL
- fixed issue with statistics reporting to WMSPanel
- some improvements to reload DVR archive if DVR storage is corrupted
- support triggering ads insertion with SCTE-35 markers
- fixed crash in some cases when processing response from PPP handler
- support using .mp3 and .aac files for ads insertion into audio-only streams
- fix to support RTMP publishing from Elemental Live Encoder > 2.14
- support using multiple threads to process incoming MPEG-TS streams
- fixed switching to MPEG-TS and HLS fallback source when primary source does not return any data
- fixed crash in some cases when content is requested with invalid ranges
- support keeping URL parameters from input stream for RTMP re-publishing
- HEVC support for RTMP
- optimize write operations to DVR segments DB during cleanup
- some logging cleanup and improvements
- support limiting streaming bandwidth in WMSAuth rules
- increase backlog for SRT multipoint listener socket
- support passing DVB subtitles from/to MPEG-TS and HLS streams
- support redirections for downloading advertisements
- some improvements in MPEG-DASH manifest generation to fix playback issues
- added Nimble API to request settings sync with WMSPanel
- initial support of passing SCTE-35 markers from/to MPEG-TS and HLS streams
- added option to fix issue with RTMP publishing to Limelight
- added option for resetting ADTS header in Icecast streams
- support using SRT v1.3.2 (upgrading nimble-srt package is required)
- some logging improvements
- reset DVR period when segment start time drops down to avoid sorting segments in incorrect order
- additional error handling to re-start server-side tasks failed in some cases
- added Amazon Alexa and Apple HomePod as known user-agents
- disabled SSL partial write mode by default
- support pulling HLS AES encrypted streams
- some logging improvements
- some improvements in handling cea708 captions when NVENC decoder is used
- fixed ads insertion into HLS AES encrypted streams
- fixed generation of .mp4 file exported from DVR to avoid playback issues in WMP
- fixed timestamps issue in audio-only HLS causing audio glitches on iOS devices
- additional error handling and logging during GeoDB update
- send Cache-Control and ACAO headers with API responses to DVR export and cleanup operations
- fixed VOD files access issue
- added EAC-3 support for VOD MPEG-TS chunk generation
- fixed issue with applying Transcoder settings when decoding from file is used
- added support of MPEG-TS streams with hexadecagonal audio
- some improvements in HLS pull
- support sending SRT stream to multiple clients for SRT sender working in "Listen" mode
- handle DVR cleanup requested via API in a separate thread to avoid blocking other API calls
- use .aac/.mp3 extensions for DVR audio-only streams to avoid playback issues on some players
- fix checking stream availability when origin forces "Connection: close" mode
- support exporting DVR archive content to MP4 via Nimble API
- fixed crash during DVR archive cleanup caused by audio segments with duplicated timestamps
- fixed sending proper Cache-Control header for MPEG-DASH manifests
- support RTMPS for pull/push and re-publishing
- fixed HLS AES support for HLS FMP4
- fixed HLS pull over HTTPS for input streams with absolute paths
- removed legacy GeoIP library dependency
- fixed crash caused by receiving SIGBUS when transmuxing segments from corrupted DVR storage
- support sending SDT in MPEG-TS UDP output
- support preserving CCs in Transcoder filter pipeline
- fixed processing of invalid JSON object received from auth handler
- support caching re-streamed live content as VOD (storing on disk with VOD timeout)
- fixed duplicating "amp" in re-streamed MPEG-DASH manifest
- some improvements in cache to reduce locking while cache is being re-loaded
- some logging improvements
- support generating and saving JPG thumbnails to DVR archives (requires Transcoder)
- fixed keeping URL parameters with value containing '=' character
- fixed sending current Icecast stream track names to clients if Icecast metadata is defined in WMSPanel
- support keeping parameters from input URL in HLS and MPEG-DASH playlists
- fixed excessive pre-allocation of DVR segments DB when appending data to reloaded DVR archive
- support UI settings for auth handler
- performance improvements in json parser wrappers
- added NAKs send/receive info to SRT stats
- fixed handling Connection header to support using CloudFront as Websocket/SLDP proxy
3.5.3-5 Nov 20 2018
- support getting multiple stream names in "stream" field in Advertizer rules
- fixed inserting session parameters into EXT-X-KEY field of re-streamed HLS playlist if key value is provided in URI as text/plain data
- added option to disable partial write mode for SSL
- support providing SRT sender/receiver statistics via Nimble API
- support generating video thumbnails from DVR
- DVR storage improvements
- some improvements in statistics reporting to WMSPanel
- some improvements in WMSPanel sync processing
- fixed initial GMT time issue for SLDP and RTMP ads insertion
- some performance improvements
- support using SRT v1.3.1 (upgrading nimble-srt package is required)
- support processing PUT requests when Icecast is published to Nimble
- support using external handler to allow/deny playback session via HTTP-based protocols
- some minor logging improvements
- added API to reload configuration file (rules.conf)
- decode percents in mount parameter when Icecast metadata is pushed to Nimble
- fix sending proper Content-Type for advertising segments
- fix HLS segments duration reporting for DVR streams
- support pulling Icecast streams via HTTPS
- support receiving metadata when Icecast stream is pushed to Nimble
- added Nimble API to get Icecast stream info
3.5.1-7 Sep 10 2018
- support forwarding CEA-708 captions when NVENC decoder is used
3.5.1-6 Sep 06 2018
- support using fallback URLs for MPEG-TS and HLS pull
- print '*' chars when entering password in regutil on Windows
3.5.1-5 Aug 28 2018
- fixed access to VOD content on Windows via .smil when '\' slashes are used in streaming route
- support ads insertion to streams accessed via application aliases
- support MP3 audio ads insertion into RTMP streams
- fixed sessions and advertisements logs rotation
- Windows installer improvements
3.5.1-4 Aug 21 2018
- support logging inserted advertisements info to get ads insertion stats
3.5.1-3 Aug 15 2018
- fixed crash after mid-roll advertisement playback for Icecast stream with metadata
- fixed GMT interval calculation for ads insertion
3.5.1-2 Aug 06 2018
- fixed issue with recording HEVC streams when 'Keep protocol timestamps' option is enabled
3.5.1-1 Jul 30 2018
- [premium] support server-side ads insertion for HLS video
- support restricting URLs used by client during playback session
3.5.0-5 Jul 11 2018
- additional error handling in json processing
- server-side ads engine improvements for HLS
3.5.0-4 Jul 05 2018
- use TLS SNI when connecting to WMSPanel servers
- fixed on-demand pull issues (proper pull task starting and stopping)
3.5.0-2 Jun 21 2018
- fixed issues in Icecast and HLS advertizement engine
- removed some outdated functionality (create_session_with_post option processing)
- [premium] server-side ads insertion for audio-only HLS
- fix setting idrPeriod for NVENC encoder to disable auto-insertion of I-Frames
- support setting deinterlace mode for NVENC decoder
- support NVENC context locking to avoid some NVENC decoder issues
- support using TLSv1.1 and TLSv1.2 in stream checker
3.4.3-6 May 29 2018
- fixed processing HLS FMP4 requests when .smil from remote VOD storage is used
- some fixes and cleanup in error handling in task manager
- some logging improvements
3.4.3-5 May 17 2018
- reset Transcoder filter pipeline in case of timestamps issues in input stream when FPS filter is used
- make HTTP return code configurable for WMSAuth/geoblocking
- report DVR period recording end time in /manage/dvr_status API
- fix setting proper bitrate in encoder when non-default fps is used
- fix sending Cache-Control header for re-streamed cached items
- support caching playlists as VOD items when HLS/MPEG-DASH re-streaming is used
3.4.3-3 May 04 2018
- switch to using GeoLite2 databases (GeoLite is considered legacy and not supported anymore)
3.4.3-2 Apr 29 2018
- several fixes for HLS FMP4 for VOD
3.4.3-1 Apr 25 2018
- support HLS FMP4 for VOD
- support configuring RTMP publisher inactivity check interval
- escape characters in PPV ID when generating JSON to send to PPV handler
- some logging improvements
- some optimizations to speedup reloading DVR archives
- some debug logging improvements
3.4.2-5 Apr 11 2018
- fixed potential crash during management API request processing caused by buffer overflow
- set 'image/png' content-type when sending .png files
- some logging improvements
3.4.2-4 Apr 10 2018
- some time calculation fixes for RTMP and SLDP streams when ads are used
- reset video filter on PTS gap
- some logging improvements
3.4.2-3 Apr 03 2018
- support using AWS signature V4 when fetching VOD content from Amazon S3
- additional error handling when reading MP4 files for advertizing
- some debug logging improvements
- some compatibility improvements with input MPEG-TS streams
- fixed another issue with video-only RTMP streams receiving/playback
- force nimble_regutil to stop if unknown command-line option is provided
- some performance improvements
- [premium] server-side ads insertion for RTMP
- some logging cleanup and improvements
- fixed issue with video-only RTMP streams playback
- improve NVENC context handling to process more streams in Transcoder
- some improvements in RTMP auth handling
- add support for source-specific multicast (rfc4607 SSM)
- check Host field validity before processing request
- some compatibility improvements for HLS pull from Wowza
- some fixes in Transcoder installer for macOS
- fixed memory leak in transcoder when fps filter is used
- fixed stream access via RTSP when application alias is used
- force encoder reset if audio stream's sample rate is changed
- fixed crash in SRT receiver caused by incorrect error handling
- fixed memory leak in file reader providing content to decoder
3.4.1-1 Feb 05 2018
3.3.2-2 Dec 22 2017- support using multiple SSL certificates
- support sending HLS playlist for HTTP MPEG-TS stream
- removed EXT-X-ALLOW-CACHE tag from live HLS chunklists
- fixed memory leak in Transcoder caused by issues in input stream and encoder resets
- support decoding AC-3 audio using Nimble Transcoder
- support probing audio type for LATM in MPEG-TS streams
- support multiple audio/video programs in MPEG-TS UDP/SRT/UDT output
- support using multiple allowed origins in ACAO header
- some cleanup to avoid logging confusing errors
- fixed crash caused by incorrect interactions with Icecast publisher
- [premium] server-side ads insertion for Icecast
- some logging improvements
- enable using TLSv1.1 and TLSv1.2 for SSL syncs (WMSPanel/PPV/PPP)
- fixed crash if PPS is empty in RTSP stream
- some logging improvements
- some RTSP re-publishing improvements
- support playlists caching in case of using HLS/MPEG-DASH/Smooth re-streaming
- fixed VP9 encoder 'lossless' parameter setting
- support setting "sar" parameter for NVENC and QuickSync encoders
- improve handling of timestamps' overflow/reset cases in RTSP streams
- fixed timestamps for audio-only segments to conform HLS protocol spec
- fixed MP3 encoder crash in case input stream parameters changed
3.3.1-7 Nov 30 2017
- fixed issue causing high CPU usage on Windows after SLDP player disconnection
- fixed potential issue in Icecast pull caused by incorrect ADTS header
- some error handling and logging improvements
3.3.1-6 Nov 28 2017
- fixed deadlock in case of failing to save cache item metadata due to file system error
- fixed crash in case of transmuxing non-fragmented item from cache
- process DVR archive deletion request from UI without blocking requests processing and recording
- some error handling and logging improvements
3.3.1-5 Nov 21 2017
- support streaming HEVC from DVR via HLS
- insert Location node right before Period in re-streamed MPEG-DASH manifest
- support HEVC streams recording to DVR and streaming via HLS FMP4
- support adding PROGRAM-DATE-TIME tag to DVR HLS chunklist
- support ABR HLS FMP4 streaming from DVR
- insert Location node to the beginning of re-streamed MPEG-DASH manifest
- set Icecast stream info from Icecast2 source headers
- fixed HLS FMP4 playlist generation for audio-only streams
- support HLS FMP4 streaming from DVR
- support HLS FMP4 streaming for live streams
- increased AVCC params buffer to fix rare issue with DVR playback for some streams
- fixed setting websocket_live_worker_threads value read from config
- fixed HLS re-streaming from HTTPS origin using absolute paths in playlists
- fixed deletion of re-streaming session with two sockets causing confusing errors in log
- support selecting network interface for multicast UDP streaming
- do not add Location field into MPEG-DASH manifest if streaming in HTTP origin mode and absolute path is not set
- add Location field to MPEG-DASH manifest if re-streaming from source not adding Location
- fixed issue with pulling RTSP over HTTP
- some compatibility improvements in RTMP publisher
- support sending DVR timeline to WMSPanel
- support accessing WMSPanel via HTTP proxy
- added help to nimble_regutil
- support deleting part of DVR archive via API specified using 'from' and 'to' parameters
- increased Icecast pull inactivity timeout
- log session ID to sessions.log
- some improvements to support HLS re-streaming from AMS
- support reusing active PD sessions to avoid multiple sessions reporting for clients
- re-requesting the same file without session id
- support pulling MPEGTS and HLS streams via HTTPS
- fixed RTMP compatibility with Haivision Makito X encoder
- added "maxbw" parameter support for SRT
- support ssl_protocols option in nimble.conf
- some logging and performance improvements
- support wildcard ABR processing
- increased default size of VOD transmuxer buffer
- added HEVC config record into HEVC seq header
- some logging and performance improvements
- added SEI support for NVENC and QuickSync
- use default pixel format converter in libx264 encoder if input pixel format is not supported
- increased maximum live stream chunk size to 64MB
- added passphrase/pbkeylen support for SRT
- support UDT streaming
- do not combine program info to the first PMT table
- fixed VP8 and VP9 SLDP playback issue
- support SRT rendezvous mode
- added SSL context options to support Forward Secrecy
- some performance improvements
- support VP8 and VP9 decoding/encoding with Nimble Transcoder
- support RTMP publishing to Periscope
- fixed issue with pulling RTSP streams with no Content-Length in SDP answer
- added "duration" support for SLDP player
- support SRT streaming on Windows
- support SRT streaming
- support re-streaming failover
- some logging improvements in stream checker
- fixed iOS playback for some ATSC streams
- fixed MPEGTS UDP sender for cases when source changed
- added configuration option to set closed-captions=none tag to HLS playlists
- force RTSP publisher reconnect if video or audio track added to stream
- fixed rare crash in SLDP sender
- added configuration option to disable VOD subtitles processing
- fixed resetting MPEG-TS stream processor in case of some stream errors
- fixed pulling HLS streams with chunklists containing relative-absolute paths to chunks
- support HEVC decoding (SW/QuickSync/NVENC) and encoding (QuickSync/NVENC) in transcoder
- send EPG chunklist in 'live' mode if requested fragment is still being recorded
- increased AVCC params buffer to fix issue with DVR playback for some streams
- enable IPv6 support in Nimble for Windows
- support processing WMSAuth IPv6 custom ranges and geo restrictions
- fixed rare deadlock related to live stream creation and DVR requests processing
- minor logging and performance improvements
- fixed issue with accessing SLDP streams via aliased application
- several fixes for SLDP (WMSAuth, delayed pull, enabling without HLS)
- fixed RTMP metadata generation causing missing audiocodecid in some rare cases
- fixed pulling HLS streams with chunks in master playlist
3.2.1-3 May 15 2017
- add discontinuity to HLS chunklist in case of timestamps reset
- additional setting and logging in MPEG-TS UDP sender
- support using nimble-transcoder >= 1.0.6-1 (MP3 encoding)
- support pulling HLS streams
- fixed crash in case of accessing big files (>4GB) from remote VOD storage via PD
- process initStream command from RTMP publishers
- support resetting DVR period in case calculated and protocol timestamps differs
- fix validating host when creating session to support clients not providing Host header
- improve processing of RTSP streams from some cameras working not according the standard
- some performance improvements in DVR processing and reporting
- only send MPEG-TS UDP packets of size 1316
- improvements in MPEG-TS stream processing (avoid failing if no PTS for RAI PES)
- fixed issue with limiting the number of RTSP playback sessions
- some performance improvements in sync processing
- support sending user-agents to PPV handler
- support specifying target depth when cleaning up DVR archives using server API
- support input streams fallback and overriding in Transcoder
- set proper content-type for MPEG-DASH manifest generated from DVR archive
- fixed exposing aliased app name when absolute path and app alias is used with HLS re-streaming
- removed validity check for H264 profile-level-id in RTSP stream processor
- strip port from session host name used to report statistics
- support TLS SNI for PPV handler
- support using HTTP proxy when RTSP over HTTP is used
- fixed issue with exposing aliased app name when absolute path and app alias is used
- support HLS EXT-X-PROGRAM-DATE-TIME tag insertion
- support pulling of H265 streams over RTSP when no VPS/SPS/PPS found in SDP
- fixed issues with mpeg2video decoding using NVENC
- fixed crash in transmuxer in case of using empty subtitles file
- performance improvements in RTMP and RTSP sender threads
- fix CC for PCR-only packages for CBR MPEG-TS UDP streaming
- support pulling RTSP over HTTP
- support using VA API for encoding
- some improvements in CBR MPEG-TS UDP streaming
- fixed PCR precision for CBR mode
- initial support of CBR mode for MPEG-TS UDP streaming
- additional error handling during temp dir creation to avoid breaking GeoDB update
- additional error handling in live stream transmuxer
- added "dash_live_profiles" option to set dash profiles in manifests
- add MP3 playback support via RTSP
- improved key frame detection for RTSP streams
- fixed issue with audio timestamp resetting causing ffmpeg warnings when pulling stream from Nimble
- support "a", "ab" and "bitrate" parameters for FDK AAC audio encoder
- support encoding to AAC using FDK AAC codec library
- fixed memory leak in Transcoder in case input picture file is missing
- support forwarding CEA-708 captions in transcoder
- support HLS AES encryption for DVR playback
- support PD protocol for sending remote VOD content
- additional error handling in DVR to avoid a/v sync issues
- fix in RTSP parser to improve compatibility with some cameras
- fixed server timezone reporting on Windows
- support using timestamps to generate HLS sequence number
- fix updating segment duration for currently recorded DVR archive
- support using files as a source for audio/video tracks in Nimble Transcoder
- fixed checking if Transcoder libraries are installed in regutil on Windows
- fixed issue with following keyframe alignment setting in Transcoder
- added nimble-transcoder libraries check and notice in regutil when registering Transcoder
- some HLS re-streaming improvements
- fixed some RTSP pull issues
- fixed mpeg2video decoder update issue
- support passthrough mode for AC3 streams in Transcoder
- some improvements of input HEVC streams processing
- check WMSAuth signature when processing session creation request
- minor improvement for HLS re-streaming
- support using Nimble Transcoder >= 1.0.4-2
- Added previously missed "NAME" field into HLS playlist with audio groups
- Support audio tracks grouping in HLS playlists
- Some performance improvements in remove VOD transmuxer
- Support creating sessions posting to stream URL
- Support setting metadata for Icecast streams
- Add discontinuity flag in HLS chunklist in case avc header changed
- Process "attachment" URL parameter for re-streamed content
- Minor performance improvements
- Support using nimble-transcoder >= 1.0.4-1
- Fixed setting icecast bitrate for mpegts mp3 streams
- Some improvements in transcoder
- Improve transmuxing performance when remote VOD storage is used
- Support validating client IP in PPV signatures
- Some fixes in decoder to improve stability
- Support using NVENC for input streams decoding in Transcoder
- Support options to control threading in decoders and filters
- Fixed transcoder crash in case of abnormal changes of input stream properties
- Some logging improvements
- Support sending several client ips to ppv handler when session ip is not restricted
- Some tuning of encoder thread parameters
- Fixed issues with generating audio-only and video-only HLS VOD chunklists if absolute path is enabled
- Fixed calculation of video CC for HLS segments transmuxed from DVR archive
- Support using absolute paths in SMIL files for HLS VOD
- Fixed PCMA/PCMU audio decoding issue
- Set and maintain correct CC between HLS segments when transmuxing from DVR archive
- Minor logging and performance improvements
- Support receiving Icecast streams from SAM Cast publisher
- Error handling and logging improvements
- Fixed fd leak in case of errors in DVR transmuxer
- Minor error handling and logging improvements
- Fixed rare mpeg2video transmuxing issue
- Minor error logging improvements
- Added option to configure transcoder buffer items
- Minor improvements of log messages in video decoder thread
- Support accepting pushed Icecast streams
- Skip short RTSP send reports instead of disconnecting stream
- Fixed QuickSync height alignment
- Fixed RTSP sequence number wrap around issue
- Added "PLAY" command support for RTSP receive mode
- Added rtsp_frame_buffer_max_size configuration parameter
- Fixed crash caused by transmuxing big files (>4GB) from remote VOD storage
- Fixed issue with parsing SDP from some RTSP cameras
- Increased default UDP buffer size to 1MB
- Fix frame size calculation for (mpeg2 || mpeg2.5) && (layer 3)
- Set valid CC for PAT/PMT tables
- Fix rare deadlock in case audio codec is changed to MP3 in incoming MPEG-TS stream and MPEG-DASH protocol is enabled for the output stream
- Support sending FCSubscribe to RTMP sources
- Send HTTP 500 response to clients in case of mp4 transmuxing errors
- Fix reporting CPU usage on Windows with non-English locale
- Fixed issue with incorrect mpeg-dash segment duration calculation when segment buffer is overloaded
- Improved delayed RTMP stream pulling from Nimble origin
- Support local absolute URLs in HLS playlist in stream checker
- Support encoding to H264 using NVENC on Linux platform
- Support encoding to H264 using NVENC on Windows platform
- Updated decoder flags to properly recover after input stream decoding errors
- Support receiving RTMP streams from sources setting RTMP chunk size > 4MB
- Fixed several issues in processing MPEG-TS streams with mpeg2video/mpeg2audio/ac3
- Minor logging improvements
- Request 30 seconds buffer from RTMP source in case of delayed pull tasks
- Support receiving fragmented AC3 via MPEG-TS
- Fix issue with incorrect first DVR segment in the beginning of recording session
- Use '.' as milliseconds delimiter in VTT subtitles
- Send CORS heades with 302 redirect for PD sessions
- Fixed issue with some RTSP cameras sending application/vnd.onvif.metadata stream
- Implemented compensation for timestamps overrun/"jump back" to avoid unsynced audio/video
- Added configuration option to control storing VOD content in RAM cache
- Fixed rare buffer overrun in case of errors during PD re-streaming
- Support transmuxing video-only and audio-only HLS using SMIL files
- Support limiting DVR archives by size
- Some improvements in transcoding engine
- Fix re-streaming MPEG-DASH streams with BaseURL tag in manifest
- Added annexB start sequence before initial sps/pps unit only
- Additional locking to support multithreaded transmuxing if remote storage is used
- Removed annexB start sequence before first sps/pps unit to avoid decode_slice_header error
- Treat all RTSP packetization modes > 2 as a default
- Fixed workers deadlock in some rare cases caused by dns resolution errors
- Minor logging improvements
- Support attaching DVR archives in read-only mode
- Error handling and logging improvements
- Fixed infinite loop during loading DVR archives
- Fixed absolute path in VOD playlists in case of using HTTPS
- Fixed re-loading dvr archive when renaming DVR archive's stream
- Added rtmp_sample_access config parameter to allow access to samples
- Fix saving segments information to corrupted DVR segments db
- Fix issue with naming output streams from transcoder when wildcards used
- Support transmuxing MP3 and AAC audio from remote VOD storage
- Sort interleaved queue by PTS
- Fix naming output stream in case of using encoder without filters
- Fix DVR archive cleanup when maximum segments per cleanup removed
- Fix following selected keyframe alignment policy in encoder
- Fix A/V unsync in HLS VOD in rare cases
- Continue loading DVR archives in case of invalid records in segments db
- Disable If-Modified-Since headers processing by default
- Support using subtitles with .smil files
- Fix sending ac-3 and eac-3 audio tracks via UDP
- Fixed range header field processing to send response in case of invalid values received
- Keep session field with RTSP OPTIONS request to avoid disconnection from some cameras
- Fixed rare crash in case of errors while receiving MPEG-TS stream over UDP
- Allow to save 1-second segments to DVR archives
- Escape all control characters when adding string to json
- Keep origin manifest parameters when re-streaming live MPEG-DASH streams
- Support TTML, WebVTT and SRT subtitles for VOD content sent via HLS
- Support pcm_mulaw and pcm_alaw audio codecs for RTSP input streams
- Additional error handling to avoid stopping when auto-updating GeoDB
- Fixed 'Authorization: Digest' header generation to avoid issues with some RTSP sources
- Some optimizations to use less RAM for storing loaded DVR archives' segments info
- Support empty password in MPEG-TS input stream url
- Support using .m4v and .m4a extensions in SMIL file for MPEG-DASH
- Fix re-activating PD sessions in case of long client inactivity
- Support EAC3 codec for RTSP playback
- Fixed Range header processing to tolerate not valid request values
- Fixed SSL locking issue causing rare crashes when clients connected via HTTPS
- Support EAC3 codec for RTSP and MPEG-TS input streams
- Fixed issue with validation of publish signature when publish control handler is not set
- Added sending Last-Modified header for live chunks to support If-Modified-Since handling
- Fixed RTSP timestamps overflow breaking sound playback during long (>1 day) sessions
- Added restart function support for RTMP republishing
- Support saving AC3 audio to DVR archives
- Support reporting information for private AC3 streams in MPEG-TS Out settings
- Some improvements for publishing to Akamai
- Support AC3 in PES private data in MPEG-TS streams
- Support WMSAuth blocking by Referer field
- Skip unexpected response from RTSP server
- Several improvements for MPEG-DASH re-streaming
- Fixed PTS rounding in audio encoder
- Fixed PTS processing issues in audio encoder
- Fix SPS/PPS processing in encoder thread
- Fix failure in encoder if QuickSync library was not successfully loaded
- Support AC3 codec for HLS/MPEG-DASH VOD
- Added Winamp as known player
- Support publishing to Limelight CDN
- Save data remained in stream buffer to DVR archive when stream is disconnected
- Support AC3 codec for RTSP and MPEG-TS input streams
- Support VP6 codec for RTMP and VP8/VP9 codecs for RTSP streams
- Added Last-Modified field to HTTP responses for VOD items from transmuxer
- Fixed infinite loop in transmuxer in case of some invalid MP4 files
- Fixed Icecast statistics reporting to the panel
- Added API to cleanup DVR archives
- Added support for RTMP publishing to Akamai
- Support HTTP requests with If-Modified-Since header
- Refactored Icecast streams processing to use common live streams handling code
- Added AAC LATM support for RTSP
- Fixed crash on startup if output stream transmuxed from MPEGTS is setup to be DRM-protected with external key server
- Fixed init script for CentOS to support using QuickSync
- Added AAC LATM support for MPEGTS
- Fixed setting proper protocol (http/https) in absolute path urls in case of HLS re-streaming
- Fixed maximum DVR archive depth calculation
- Set 'image/jpeg' content-type when sending .jpg files
- Fixed setting proper protocol (http/https) in absolute path urls in playlists
- Fixed buffer overrun in mpeg2ts transmuxing causing rare crashes
- Added support of EditListBox MP4 atom
- Fixed reporting versions of Windows 8.1 and 10
- Fixed crash in transmuxer caused by processing of some invalid .mp4 files
- Added XBMC, NsPlayer, Kodi as known user-agents
- Support splitted AAC audio messages in MPEGTS streams
- Fixed Quick Sync encoder parameter names
- Minor logging improvements
- Support encoding to H264 using QuickSync on Windows platform
- Minor improvements to avoid issuing errors in log
- support long SPS/PPS in VOD content
- support interleaved compensation for video/audio tracks in live streams
- support accessing remote VOD storage via HTTPS
3.0.3-1 Jun 03 2016
2.15.3-2 May 05 2016
- Support HEVC for HLS VOD streaming
- Fix issue on Windows with sending files >4GB via PD
- Fix NAL unit delimiter trimming to avoid playback issues of some VOD streams on MacOS and iOS devices
- Cache audio files' structure to speed up transmuxing
- Fix setting media sequence in chunklists for audio only DVR archives
- Fixed crash in rtsp parser caused by malformed header
- Send RTSP ntp report on timestamp overflow
- Support EPG requests to DVR archives without _dvr_range suffix
- Fixed memory leak in AAC encoder
- Fixed mapping files of size >4GB on Windows
- Added CRC support for ADTS header in MPEGTS streams
- Fixed MPEGTS annexB processing
- Fixed RTSP playback issue (initial video NTP calculation)
- Fixed decoder re-creation causing frames cut-off issue
- Fixed loading transcoder libraries on MacOS
- Increased encoder timeouts for skipping frames
- Additional logging in encoder
- Fixed audio message index reset causing crash when audio encoder is reinitialized
- Fixed crash caused by stopping encoder
- Support Publish Control processing for RTMP
- Updated transcoder registration parameter names
- Added EULA for Nimble Streamer
2.15.3-2 May 05 2016
- Fix potential concurrency issue if active dvr archive's path is updated
- Support "attachment" URL parameter to force downloading files instead of playing
- Load DVR archives asynchronously to avoid blocking requests processing while loading
- Additional error handling in client session to fix high CPU usage in case of some errors
- Re-create log directory when starting Nimble
- Fixed crash while parsing invalid PPV response
- Report DVR archive timeline via dvr_status interface
- Added hls_reset_video_audio_cc config option
- Support sending mpeg2video via UDP
- Support priorities for allow and deny fields of WMSAuth rules
- Save additional data to DVR segments db to verify segments timestamps
- Fix incorrect client disconnections during PD re-streaming
- Report space available for DVR archives via dvr_status API
- Minor improvements in HTTP publisher and RTSP parser
- Add "Elemental Live" to known publishers list
- Fix processing fzb to avoid dropping RTSP sessions
- Ping RTSP source even if session timeout is not declared
- Fix crash in case of transmuxing high-resolution video from remote storage
- Ping RTSP source even if get_parameter method is not available
- Fix dts & pts for chunks generated for MPEG2TS protocol when mpeg2video is used
- Switch to pts in segment start time and duration calculation for dash
- Case-insensitive checking of flashVer param name
- Fixed rare crash caused by incorrect replacement of fragmented cache item
- Fixed rare buffer overrun when generating dash init segment
- Support timeshifted streaming from DVR archives
- Minor improvements and optimizations
- Fix dash processing in case of item reservation fail
- Unique users reporting support
- Fix incorrect restarting of MPEG-TS streams redirected with 302
- Added option to disable self redirects for PD sessions
- Minor error handling and logging improvements
- Fix incorrect fragment availability check in cache item
- Additional error logging in selector on Windows
- Increase playlist buffer size to re-stream DVR archives
- Fix onMetaData RTMP command parsing
- Fix issue with missing audio when playing live DVR stream
- Skip NetStream.Play.PublishNotify RTMP status
- Minor logging improvements
- Fix issue with publishing to Nimble using ffmpeg built with librtmp
- Fix issue with transmuxed VOD items access
- Add audio-only MPEGTS support for audio-only MP4 files
- Some experimental options to tune server's behavior (VOD caching and transmuxers)
- Add HTTP/UDP MPEGTS and HLS HEVC support
- Treat PD file extensions as case-insensitive
- Support HTTP basic authentication when accessing MPEG-TS streams
- Fix issue with VOD transmuxing (requesting the same chunk twice)
- Fix mpeg2ts->dash transmuxing issue(time overflow)
- Fix onStatus processing for RTMP play (skip NetStream.Play.Reset)
- Support HEVC for MPEG-TS input streams
- Fix onStatus processing for RTMP play
- Add videoCodec, audioCodec and codecs parameters to SMIL
- Support H.265 for MPEG-DASH live streams
- Support logging to syslog
- Some fixes in RTSP pull (proper handling rtcp connections)
- Fix audio-only MPEGTS UDP stream playback (pcr_pid)
- Fix using absolute path when generating MPEG-DASH manifest
- Fix HLS playlist detection for HLS re-streaming
- Fix short RTSP app name issue
- Fix MPEGTS PAT/PMT constantly increasing version issue
- Add initial rtp packet sending to avoid Linux UDP issue
- Log referer to access log
- Fix setting TTL for multicast packets
- Fix processing describe response in RTSP client (content-base)
- Fix memory leak in HTTP publisher
- Increase PAT and PMT pids every time we send them
- Process onStatus response for publish as some CDNs(e.g edgecast) keep receiving messages even in case if publish failed
- Add dest_stream_params for CDNs like Edgecast
- Fix splitting RTSP URLs without path or port
- Handle errors in case of invalid app or user-agents regexps creation
- Add EWOULDBLOCK processing logic to RTMP publisher to avoid peer disconnections
- Add WMSAuth signatures processing for HTTP origin applications
- Fix crash while saving stats if invalid regex is specified in data slice
- Split HTTP MPEG-TS URL correctly to avoid missing double slashes
- Add support for multiple sps/pps cases in RTSP sender
- User-agent restriction added to WMSAuth paywall
- HEVC support for VOD
- Initial IPv6 support
- Reload crossdomain_xml file if it changed
- Delayed pull implemented for MPEGTS, Icecast, DASH
- Fix RTSP dts/pts processing for cases where B-frame exists but num_reorder_frames = 0
- Delayed pull implemented for DASH
- Fix RTSP ntp time processing
- Support TLS v1.1 and v1.2 as output protocol when SSL is used
- Add bandwidth parameter support for ABR streams to set it explicitly
- Keep origin manifest name when restreaming DASH
- Fix YouTube streaming issue (RTMP chunk size)
- Fix crash during UDP streaming
- Fix PPV json formatting to avoid duplicated keys
- Fix RTMP interleaved channel issue
- Fix loading fragmented cache items from disk when item size >2GB
- Fix ABR DASH manifest generation when using URL parameters (escape ampersand)
- Fix flashVer field value to be more CDN-friendly
- Fix DASH manifest generation when using URL parameters (escape ampersand)
- Fix mpegts B-Frame processing for DVR archives
- Fix calculation of live stream's chunk duration if timestamp is reset
- Fix using the same DVR segment time if segments arrive very fast
- Fixed "ice-audio-info:" tag processing
- Fix RTSP playback issues
- Fix duplication of parameters in location URL in re-streamed DASH manifest
- Fix splitting RTSP URL without stream
- Fix a lot of RTSP pull related issues
- Set UDP received buffer size to appropriate value and make it configurable
- Skip sprop-parameter-sets if only sps is received without pps
- Increase output buffer size for server status reports
- Fix splitting RTSP URLs to app/stream when adjacent slashes used
- Skip empty RTP packets
- Fix SMIL VOD processing
- Fixed issue with h264 end fragment with no data
- RTSP republishing support
- Fix Icecast playback issue in FF
- Fix issues with generating DASH manifest from DVR archives
- UDP sender bugfixes
- fix updating DVR settings specified for application
2.11.0-11 Nov 11 2015
2.8.0-9 Sep 22 2015- Fix incorrect calculation of remained data size causing crash when SSL is used
- DVR-related bugfixes and improvements
- Fix crash during DVR archive cleanup
- Add Z after dateTime in DASH manifests
- Add additional logging to HTTP publishing
- Support ABR for DVR streams
- Support MP3 audio tracks in DVR streams
- Fix file descriptor leak in case of invalid mp4 file
- Some DVR-related bugfixes
- Support requesting DVR archive fragment
- Fix loading partially cleaned up DVR archive
- Handle ring buffers issue in RTSP sender
- Add support for DASH MPD@publishTime
- Add CORS headers when sending error responses
- Minor improvements in DVR archives processing
- Support deleting DVR archive content by user action from WMSPanel
- Some DVR-related bugfixes
- Initial DVR support
- Reset RTMP sessions for slow clients instead of disconnecting
- Fix HDR parameters support in SPS processing
- Fix RTSP playback issue
- Fix audio/video only VOD DASH stream playback
- Fix segmentation fault on Windows when parsing RTSP headers
- Add RTSP (TCP interleaved) playback support
- Fix stripping session params from .aac segments when re-streaming from Wowza
- Fix MPEGTS UDP sender to handle high bandwith streams
- Fix RTMP video-only playback
- Set rtmp_buffer_initial_offset to 0 by default
- Fix transmuxing of huge MP4 files
- Fix RTMP processing in Dispersa
- Publish control support
- Fixed invalid behavior when remotely stored smil refers to non-existent content
- Add --apply-rules-conf for regutil. regutil will send existing rules.conf during registration
- Ignore stss atom existance for audio track
- Fix VOD SMIL with absolute path processing
- Fix invalid connections reporting after loading sessions
- Fix issues with restreaming DVR streams via HDS
- Add wmsAuth support in VOD DASH mode
- Fix delayed pull task invalidation for HLS
- Fix absolute URLs in playlists for remotely stored files
- Add rtmp_worker_threads parameter support
- Improve RTMP sender thread performance
- Minor fix in RTSP parser to support header lines without spaces after colon
- RTMP/RTSP delayed pull tasks implemented for RTMP/HLS
- Increase max RTMP viewers to 10000. Add rtmp_max_viewers param.
- Try to stop server-side tasks using SIGTERM first
- Support --version option to print out server version
- Add Annex B separated NAL units support for RTSP
- Unregister inactive MPEGTS streams
- Fix short relative location processing for 30x redirect in Dispersa
- Add sps/pps support for RTSP sources without sps/pps in sdp
- Fix HTTP MPEGTS redirection processing issue
- Support SMIL files processing for MPEG-DASH protocol
- Fix rare Android issue with audio playback when video plays fine but audio doesn't play at all
- Removed obsolete "PROGRAM-ID=1" from HLS playlists
- Fix restreaming from sources without proper playlist's content-type
- Minor improvements in data cache
- Fix conversion of date strings causing wrong creation time for loaded cache items
- Add bytes_sent field to PPV requests
- Fix issue with PPV handler thread exit
- Fix issue when manifest/playlist generation failed for remotely stored files
- Support audio/video indexes for DASH
- Fix positioning live items in cache lists while loading from disk
- Fix high CPU usage on CentOS 6 when transmuxing fragmented MP4 files
- Set correct expiration time for live items loaded from disk
- Fix issues for cases when remote HTTP storage is not available
- Fix formatting of task commands stored to rules.conf
- Support using SMIL files from remote HTTP storages
- Fix HLS AAC-HE playback issue for Android
- Fix AAC-HE playback issue for dash.js
- Fix rethrowing LoadNextChunkException when loading MOOV trak box
- Fix RTSP URL processing. Now RTSP URLs without application are supported too
- Fix UDP sender so now all programs even without available stream reported
- Fix UDP sender to assign MPEGTS program_number correctly
- Fix reporting sessions in global connection statistics when HTTP origin is enabled
- Fix loading cached MPEG-DASH items
- Improve RTMP video-only playback
- Support 302 redirections from origin when accessing remote VOD content
- PPV deny list processing for Icecast and MPEG2TS sessions
- Add support for MPEG-TS over UDP output. Multi-program aka MTS streams supported
- Support transmuxing VOD content stored on a remote HTTP storage
- Fix restreaming issue when response body is small enough to fit the initial portion of data with response header
- Improve Dispersa stream checker performance and stability
- Add RTSP authorization support for OPTIONS command
- Fix rtmp_buffer_initial_offset processing
- Replace deprecated boost library functions
- Fix MPEGTS/RTSP -> RMP composition time offset processing
- Fix stream checker task usage after task removal
- Add RTMP metadata for RTSP/MPEG-TS stream
- Limit number of bytes to send per single sendfile() call
- Fix DASH audio codec processing in case if aac header size > 2
- Fix Envivo RTMP connect command processing issue
- Add several ABR sorting modes for HLS
- Add PPV deny list periodical check for RTMP
- Daily stats recovery implemented
- Fix per-application RTMP parameters processing
- Fix hang in IcecastPlayer when processing split header
- Enable RTMP handshake digest by default
2.6.6-8 Jun 16 2015
- Fix RTSP basic authorization support
- Fix wrong error handling in RTSP thread
- Disconnect clients denied by PPV handler during progressive download sessions
- Support base authorization for RTSP pull
- Fix onBwDone processing in RTMP Dispersa checker
- Ignore messages like onBwDone and so on in RTMP Dispersa checker
- Fix MPEG2TS functionality. Assembly pes packages before processing
- Fix wrong MPEG2TS prpcessing for MPEG2 and H264 codecs
- Fix issue with downloading big nff file
- Fix content-type of PPV request
- MPEG2TS params persistence fixed
- MPEG2TS implementation switched to common transmuxing engine. Now HLS, RTMP, MPEG-DASH, MPEGTS, Icecast output is supported.
- Split MPEG2TS chunks on DTS boundary. previously we used PTS.
- Add support B-Frames in RTSP
- Support setting custom extensions for treating file as progressive download object
- Fixed axis camera RTSP authorization issue
- Add mpegts_inactivity_check_interval parameter to change inactivity check interval
- Fix Icecast support for iOS
- Fix issue with RTSP timestamps
- Use HTTP as a default protocol for DRM key server
- Forward HTTP error 503 from origin to clients
- Ignore field parameters when checking playlist content-type
- Changed log format on Linux to log proper thread ID
- Added fragmented AAC frame support into RTSP stream handler
- Fix setting send/receive timeout to WMSPanel socket
- Add digest authorization support for RTSP pull
- Play over RTSP client if at least one codec is supported
- Support DRM protection using Verimatrix VCAS key management system
- Fix MPEG2TS-over-http HTTP header assembling
- Add HTTP redirect support for MPEG2TS over HTTP
- Fix wrong processing for URLs ending with '/'
- Use HTTP 1.0 to avoid chunked transfer encoding
- RTSP pull support
- Fix time overloading issue. 2.6.3-2 and 2.6.3-3 server MUST be upgraded to this version
- Send Last-Modified field in PD response to enable pause/resume download in IE
- Fix DNS failover issue with the panel
- Add ignore_rtmp_pause_command support to ignore RTMP pause command
- Fix issues with range requests processing
- Support HEAD requests re-streaming
- Work in keep-alive by default if client requested using HTTP/1.1
- RTMP audio timestamp correction implemented
- Group audio samples to minimize MPEG2TS padding
- Support MPEG-DASH re-streaming
- Fix HLS processing in case MPEG2TS transmuxing enabled
- Improve RTMP performance and stability
- Reduce logging
- Workaround Wirecast 6.0.8 compatibility issue
- RTMP improvements for Windows version
- Add number-base DASH template support for RTMP
- Fix RTMP pull Wowza compatibility issue
- Fix crash when streams with the same names are pulled and being pushed
- Fix issue with pausing RTMP stream when using flowplayer
- Support binding to several ports for plain and SSL connections
- Fix crash in case metadata was not received and frames timestamp starts not from 0
- Fix sessions reporting for live DASH streams
- Register Nimble for Windows Error Reporing during the installation
- Fix custom exception handler on Windows to proceed to the default handler
- Add support for RTMP playback by flowplayer
- Add HTTP/RTMP application alias support
- Fix URI processing in case of restreaming, now we add nimble session and keep existing params too
- Increase fd_set size to avoid missing socket events from selector
- Fix another rare RTMP sender/publisher issue
- Added more fields to access.log (bytes sent/received, processing time)
- Remove mp4,mp3,aac prefixed from VOD HLS playlist generated from SMIL
- Fix SMIL processing for idevices
- Fix very rate crashes in publisher thread
- Added access_control_allow_headers option to set ACAH header value
- RTMP wmsAuth fixed
- nimble_audio_index/nimble_video_index support added to SMIL transmuxing
- RTMP play support
- Fix error handling in functions validating requested chunk name
- Pass parameters from client to origin and back when running in HTTP origin mode without tracking sessions
- Additional logging in transmuxer
- Fix loading MP4 files with atom total size greater necessary size for stsz, stts etc
- Fix support absolute paths in playlists in case of MP4 transmuxing
- Support absolute paths in playlists in case of MP4 transmuxing
- Skip setcap in postinstall if NIMBLE_POSTINST_SKIP_SETCAP=1 is set
- Fix RTMP republishing issue
- Add support for RTMP encoders without metadata
- Config options to set Cache-Control header for playlists and chunks
- Replace all existing params to session params for restreaming protected HLS streams
- Proper error handling during SSL shutdown sequence
- Merged with Windows branch
- Support HTTP origin apps working without sessions
- Support audioIndex/videoIndex for SMIL
- Add inactivity check support for RTMP push
- Add nimble_video_index and nimble_audio_index support for MP4->HLS case
- Implement HLS AES for RTMP->HLS case
- Support Range field when sending transmuxed chunks
- Add short 3byte mpeg2ts marker for mpegts->HLS transmuxing
- Add session ID to PPV report
- Fix Android user agent processing
- PPV handler further fixed to support https correctly
- Remove PROGRAM-ID=1 from HLS playlist
- JPlayer Icecast compatibility issue fixed (player doesn't request metadata but metadata exists) but player cannot skip metadata from MP3 stream
- Fix DASH playback in case if FMLE republish stream
- Fix old iOS players compatibility issue for RTMP->HLS case
- Fix high CPU load when accessing and loading cache
- Changed peer shutdown logic in RTMP sessions processing
- Extend the list of known content types for HDS manifests
- Add support for HLS AES encryption for VOD
- Add support for VOD chunk duration configuration via vod_chunk_duration nimble.conf parameter
- Check connection limit only for new sessions
- Fix Smooth restreaming if no origin session params and .isma/.ismv extension in Stream URL
- Add session parameters to URL in URI field
- Support OPTIONS request method
- Fix Icecast fix sync mark processing issue for AAC
- Support several IP addresses in X-Forwarded-For
- Fixed incompatibility with some Icecast servers
- Add chunk count configuration for HLS and DASH
- Stop throwing exception if icy_url is empty
- Add Icecast metadata support
- Fix HTTPS processing for PPV
- Fixed segfault during invalid PPV API response processing
- Fix DASH abr issue
- Add MPEGTS mode for audio-only RTMP streams
- Add support for MP3 in MP4A container
- Add HLS audio-only stream based on MPEG-TS as an option
- Fix self-redirection URL when using HTTPS protocol
- Send ACEH header if specified in config file
- Disable PPV in case API settings not received
- Fix stream checker enable issue
- Add Shoutcast support for Dispersa
- Fix URL decoding issues
- Encode slashes in parameters when absolute URL is encoded by Nimble
- Fix IE11 detection
- Fix MPEG-TS PMT table invalidation
- Fix cutting session from URLs ending with BASE64-like suffix
- Add redirect support for Icecast/Shoutcast
- Add crossdomain_xml param support
- Set flag to run nimble as root by default during the registration
- Add sysinfo section to server status response
- Fix Chrome user agent detection
- Change log mode to verbose for items used for debugging
- Support HTTPS protocol for client connections
- Fixed segfault after sprinting uninitialized bandwidth variable
- Fix several HLS transmuxing sigfaults in rare cases
- Increased maximum number of redirections from origin
- Icecast -> HLS transmuxing noises issue between chunks fixed
- Live RTMP -> MPEG-DASH transmuxing
- Log client sessions info to sessions.log
- Add publish time to RTMP stream info
- Switch from $Number$ to $Time$ template to support bitdash Flash player
- MP4 to MPEG-DASH transmuxing
- Fixed Wirecast 6.0 compatibility issue
- Added log rotation settings
- Fix Icecast live pull processing in case hls not chosen for output
- Add shoutcast support for RTMP
- Fix pipe descriptors leak when running server-side task
- Support relative redirections by origin using 301 and 302
- Support 302 response with non-empty body
- Support accessing origins via HTTPS
- Skip empty lines in m3u8 playlists produced by some servers
- Disable accumulating statistics if server is not connected to the panel
- Fixed segmentation fault during processing clients waiting playlists
- Add TLS support to Dispersa
- Add absolute_path to HLS chunks when absolute_path specified
- Skip first nal unit delimiter in RTMP samples for iOS compatibility
- Support Nimble status API
- Support wider range of chunk names when stripping origin session params
- Freeze chunklist return till first chunk
- Fix Icecast padding and protection bits processing
- Fix Icecast player initialization issue
- Fix RTMP republishing issue after restart nimble service
- Fix Icecast crash issue
- Add support crossdomain_xml_allow_access_from_domain param to control domain.xml content
- Add support for additional DR pull URLs for RTMP and Icecast
- HLS chunks duration calculation fixed
- Fix initialization of task last activity time when task is restarted
- Support flag to restart task if process does not write anything to stdout for the specified amount of time
- Fix RTMP publish issue in case stream republished
- Fix RTMP publish/pull issue in case connection record longer than 256 bytes
- Remove wmsauth timeout errors from logs in case of valid session
- SSL3->TLS
- Fix wrong 64-bit MP4Box size processing
- Add wmsauth logs support
- Add QuickTime support in players report
- Reopen log files when SIGHUP is received
- Issue access log entries when running in Keep-Alive mode
- Add wmsauth stream hash support
- Support managing external tasks
- Add Adobe Media Server support in case of pull stream
- Add support for RTMP re-publish
- Always send ACAO and ACAC headers if specified in config file
- Send ACAO and ACAC headers when generating playlist using SMIL
- Store Access-Control-Allow-Origin and Access-Control-Allow-Credentials header values in config and send them with HLS playlists
- Bypass URL parameters during Smooth session
- Set default max transmuxing buffer to 20M and make it configurable with vod_transmuxing_buffer
- Reset ID3 URL on every RTMP metadata arrival
- Add absolute path support for HLS playlists
2.0.7-2 Sep 05 2014
- Add Shoutcast pull transmuxing into HLS, MPEG2TS and Icecast
- Add Icecast pull transmuxing into HLS, MPEG2TS and Icecast
- Fix RTMP audiocodecid processing issue
- Fix HLS playlist issue for encrypted URLs
- Fix live pull inactivity issue
- Suppress errors in log in case of invalid fd in selector
- Fix issues with restreaming HLS with absolute paths in playlist
- Add AAC -> HLS VOD transmuxing
- Fix sorting predicate as a potential cause of PPV handler crash
- Add new output protocols: MPEG2TS, Icecast
- Fix gethostbyname error handling
2.0.4-2 20 Aug 2014
2.0.3-7 Aug 11 2014
- Add STB platform and player for device report
- Add support for MPEG2TS over HTTP
- Use file prefix instead of subpath for absolute URLs
- Fix Flussonic compatibility
- Fix live stream playlists sending
- Renamed option to pass all headers from client requests to origin
2.0.3-4 Aug 08 2014
- Add Flussonic compatibility
- Pass headers from client requests to origin
- Fix Content-Type for AAC chunks
- Fix ID3 tags processing
- Support absolute paths in playlists
- Additional ID3 tags for audio-only HLS
2.0.2-4 Jul 26 2014
- Added support for CentOS 7
- Ignore RTMP video type info command frame
2.0.2-3 Jul 24 2014
- Fix big MP4 files processing issue
2.0.2-2 Jul 21 2014
- Lower the sleeping interval in utility thread
2.0.2-1 Jul 20 2014
- Process client requests while loading data cache
2.0.1-13 Jul 16 2014
- Add support for RTMP republishing. There are cases when FMLE republish already publishing streams.
2.0.1-12 Jul 15 2014
- Add Orban encoder support
2.0.1-11 Jul 13 2014
- RTMP auth param renamed
2.0.1-10 Jul 10 2014
- HDS restreaming fixed
2.0.1-9 Jul 09 2014
- Add pull RTMP support
2.0.1-8 Jul 06 2014
- Merged with 2.0.1-6
2.0.1-7 Jul 05 2014
- Fix potential leak of session object and cache item
2.0.1-6 Jul 4 2014
- Add nimbleauth parameter support for encoders without login/password authorization
- Add support for .mp3 codec for mp4 container
- Add support for ID3 HLS in case of audio only MP4 files
2.0.1-5 Jun 29 2014
- Handle SIGBUS to process network share disconnection
- More conservative RAM usage for caching VOD items
- Additional logging of cache invalidation logic
2.0.1-4 Jun 26 2014
- Add support for Wowza 3.6 pushPublishing plugin
- Calculate live stream bandwidth dynamically
- Honor duration settings from the panel
2.0.1-3 Jun 24 2014
- Iterate all live items during cache invalidation
2.0.1-2 Jun 23 2014
- Add pushPublishing Wowza plugin support
2.0.1-1 Jun 22 2014
- Fixed issue with cache items invalidation causing cache holding items for too long
2.0.0-6 Jun 22 2014
- Fixed wrong LRU item positioning
2.0.0-5 Jun 21 2014
- Fix republishing same stream during RTMP session issue
- Fix SMIL processing
2.0.0-4 Jun 20 2014
- Read timespamp delta for format-3 chunks in case delta over 0xFFFFFF. It's workaroud for FMLE if restart server after 4 hours of publishing
2.0.0-3 Jun 18 2014
- Add Wirecast support
- Sort RTMP ABR by bandwidth
2.0.0-2 Jun 17 2014
- Fix FMLE 4G acknoledgement issue
2.0.0-1 Jun 15 2014
- Add RTMP->HLS trunsmuxer
- Add WMSAuth support for VOD SMIL
- Maintain LRU list to reduce cache items iteration when invalidating cache
- Rotate log when file size is reached 128 MB
- Option to enable access.log in nimble.conf
- Do not add "Transfer-Encoding: identity" field to PPV and WMSPanel posts
- Fix segmentation fault when using gethostbyname in multiple threads
- Minor fixes and logging improvements
- Initial fix for the performance issue with cache invalidation
- Fix sessions file name
1.9.1-1 May 25 2014
- Save and load sessions to avoid dropping clients when restarting server
1.9.0-4 May 24 2014
- Fix processing HDS playlists without origin session info
1.9.0-3 May 23 2014
- Do not bypass wmsAuthSign to origin
1.9.0-2 May 22 2014
- Fix mp3->hls processing
1.9.0-1 May 18 2014
- Support HDS restreaming
1.8.4-2 May 11 2014
- Add support for SMIL title field
1.8.4-1 May 4 2014
- MP3 to HLS transmuxing support
- Register new session if chunk.m3u8 requesred without session
1.8.3-2 May 3 2014
- MP4->HLS transmuxing fixed(int overflow) for high timescale and long movie.
- Add SMIL files support to process VOD ABR
1.8.2-1 Apr 25 2014
- Added option to disable IP restriction for user sessions
1.8.1-4 Apr 24 2014
- Removed assertions causing process failure
1.8.1-3 Apr 23 2014
- listen_interfaces config parameter added
1.8.1-2 Apr 22 2014
- MP4->HLS VOD trasmuxer fixed so if we cannot load particular media trak we just skip it
1.8.1-1 Apr 21 2014
- Improve geo redirect processing
- Do not override origin response status code 412
1.7.1-5 Apr 18 2014
- Reserved fields validation removed
1.7.1-4 Apr 17 2014
- Add interface selection for multicast
- Add REUSEADDR support
- Fix multicast identification
1.7.1-2 Apr 14 2014
- Set 1hr VOD min storage time for as a default
1.7.1-1 Apr 13 2014
- Implemented LRU cache items expiration
1.7.0-12 Apr 12 2014
- Fix wrong live stream initialization
- Add H262 support to UDP transmuxer
- Find IDR NAL processing fixed
1.7.0-9 Apr 7 2014
- Instant Dispersa checks now works separately and faster
1.7.0-8 Apr 2 2014
- Fix live stream processing in case we dynamically add or remove live stream
1.7.0-7 Apr 1 2014
- Don't add PTS/DTS in case we don't have these values in input
1.7.0-6 Mar 31 2014
- Fix segmentation fault when accessing deleted cache item
- Fix MPEG2TS pts/dts structure processing.
1.7.0-4 Mar 30 2014
- Fix failure after downloader session is timed out
1.7.0-3 Mar 29 2014
- Minor fixes with sending cached PD items
1.7.0-2 Mar 28 2014
- Fix rules.conf serialization issue
1.7.0-1 Mar 27 2014
- Add mpeg2ts over UDP live stream processing. version 2
- Fixed issue with requesting new PD item with range
- Changed log level for some non-critical messages
1.6.0-1 Mar 24 2014
- PD cache (initial implementation)
1.5.1-8 Mar 20 2014
- Increased keep inactive sessions timeout
1.5.1-7 Mar 16 2014
- Fixed memory leak during sync processing
- Added handling of lost connection in client session
1.5.1-6 Mar 13 2014
- Remove RTMP thread
1.5.1-5 Mar 12 2014
- Fix SIG fault for chunked sync and stream checker response
1.5.1-4 Mar 11 2014
- Fix config processing issue
1.5.1-3 Mar 7 2014
- Fix HTTP/HTTPS response partial processing
1.5.1-2 Mar 5 2014
- Add CTTS support for audio trak
1.5.1-1 Mar 3 2014
- Fixed PES DTS block processing for MP4->HLS
1.4.1-1 Feb 16 2014
- Fix reporting unit of used cache sizes (report in MB)
- Fix issue with playing multiple streams using single shared connection
- Fix reporting connections statistics
1.4.0-1 12 Feb 2014
- MPEG2TS/UDP incoming stream support
1.3.1-1 Feb 07 2014
- Support setting VOD cache timeout in config file (vod_cache_timeout)
1.3.0-11 Jan 29 2014
- Dispersa false positive fixed.
1.3.0-10 Jan 27 2014
- Fix processing of invalid MP4 files.
1.3.0-9 Jan 23 2014
- Fixed segmentation fault when empty playlist is returned by origin
1.3.0-8 Jan 21 2014
- Make Dispersa processing more stable.
- Support FIN flag in last TCP package
1.3.0-7 Jan 21 2014
- Support setting User-Agent header in config file
1.3.0-6 Jan 20 2014
- Dispersa full chunk path processing for Wowza fixed
1.3.0-5 Jan 20 2014
- Skip unsupported atoms in avc1 atom
1.3.0-4 Jan 16 2014
- Session processing fixed. It'll more reliable now.
- Nimble now can be used as client's private checkpoint for Dispersa
1.3.0-3 Jan 16 2014
- Fixed issue with parsing origin response without Content-Length
1.3.0-2 Jan 15 2014
- PPV add mutual authorization support.
- Fix RTSP dispersa processing
1.3.0-1 Jan 14 2014
- PPV json processing fixed
1.2.1-1 Jan 14 2014
- PPV API support
- URL encoding for Dispersa
- Handling moov atom for MP4 correctly for all cases
1.2.0-3 Jan 09 2014
- Fix RTMP URL processing for Dispersa
1.2.0-2 Jan 3 2014
- Add RTMP support for Dispersa
1.2.0-1 Dec 26 2013
- Fix MPEG-DASH support in Dispersa.
- Fix HLS generator to fast start VOD playback.
1.1.4-14 Dec 26 2013
- Add support for Samsung Has Smart-TV in device report.
1.1.4-13 Dec 25 2013
- Add host validation to URL mapper for vod and restream routes.
1.1.4-12 Dec 24 2013
- Set mp4 vod duration to 6 seconds as proposed by Apple.
1.1.4-11 Dec 23 2013
- Add legacy iOS versions support
1.1.4-10 Dec 21 2013
- Support 302 redirects from origins
1.1.4-9 Dec 19 2013
- URL encoding added to WMSAuth processing
1.1.4-8 11 Dec 2013
- Fix CTTS atom processing.
1.1.4-7 09 Dec 2013
- Add support for nginx as an origin.
1.1.4-6 06 Dec 2013
- Timeout changed for RAM and ROM cache for VOD/generated content
1.1.4-5 05 Dec 2013
- Wrong Bandwidth statistics fixed. Smart-TV platform added in devices report.
1.1.4-4 04 Dec 2013
- Bugfixes
1.1.4-3 03 Dec 2013
- Raise limits to handle more clients
1.1.4-2 02 Dec 2013
- Fix behavior with sessions in Keep-Alive mode
1.1.4-1 01 Dec 2013
- Initial PPV support
- FLV pseudostreaming (seek in FLV using "start" parameter)
- Set number of maximum open files in init script
- Minor bugfixes
1.1.3-1 26 Nov 2013
- Reporting sessions durations
- Fix issue with accessing files containing space characters in a name
- Support playlists of size bigger than 32KB
- Minor bugfixes
1.1.2-1 21 Nov 2013
- More accurate user connections calculation
- Fixed issue with immediate reconnections to WMSpanel
1.1.1-2 13 Nov 2013
- Add dependency to libcap2-bin to automatically set
- Permission for running on ports lower then 1024
1.1.1-1 13 Nov 2013
- Support keep-alive sessions
- Retrieve Nimble logs via WMSPanel
1.1.0-2 07 Nov 2013
- Additional error handling and logging
- Optimizations in statistics calculations
1.1.0-1 06 Nov 2013
- WMSAuth support
1.0.1-3 29 Oct 2013
- Changed error handling logic in session manager
1.0.1-2 29 Oct 2013
- Fix rules loading
1.0.1-1 28 Oct 2013
- Fix removal of origin parameters from chunk names
- Fix possible leak of socket handle
- Disabled access logging by default
1.0.0-1 21 Oct 2013
- HLS transmuxing
... 0.1 - 0.9 releases info skipped ...