Skip to content

Releases: OvenMediaLabs/OvenMediaEngine

v0.20.0

19 Dec 10:53

Choose a tag to compare

[Compatibility]

Compatible with dependencies installed via prerequisites.sh in version 0.19.0 or later
Compatible with the Server.xml configuration format used in version 0.12.6 or later
Compatible with Origin and Edge versions 0.19.0 or later

[Added]

[Improved]

  • Improved to support certain RTSP cameras that transmit in a non-standard way
  • Improved the wrap-around algorithm for the time value inside the TS container
  • Improved Get Stream Info API to include metadata for Passthrough (bypass) output streams.
  • Improved ScheduleChannel to preload scheduled files to reduce file switching time
  • Improved the transcoder to optimize memory usage
  • Improved logs to show the TranscodeWebhook response time
  • Improved support for VideoIndexHint/AudioIndexHint even in Multiplex-only Playlists (Thanks to @mbakumenkov #1961)
  • Added Date Header for all http response

[Fixed]

  • Fixed a crash issue that occurred under certain conditions when recording to a file
  • Fixed issue where malformed data in RTMP could cause abnormal termination
  • Fixed an issue where the recorded file sometimes got corrupted when the stream ended.
  • Fixed an issue where the Fallback Program was not updated in certain situations in ScheduleChannel
  • Fixed ScheduleChannel to make the Fallback Program always start playing from the first item
  • Fixed the crash issue when releasing the NVIDIA encoder
  • Fixed memory leak issue when using multiple GPUs
  • Fixed an issue where event data was dropped when using the schedule channel
  • Fixed a crash that occurred when socket creation failed in the OVT Provider
  • Fixed an issue where receiving an unknown RTMP AMF message could cause a crash
  • Fixed an issue where the Timeout setting in AdmissionWebhooks did not work correctly
  • Fixed an issue where, when WHIP and LLHLS connected as a single session, the connection could be routed to an incorrect module
  • Fixed an issue where the OVT Publisher could crash due to malicious packets
  • Fixed issue where a crash could occur due to invalid video metadata
  • Fixed an issue where a delayed transcode webhook blocked other streams
  • Fixed crash when Transcode webhook response is returned as an array.
  • Fixed INTERNAL_QUEUE_CONGESTION message not being duplicated when sending queue congestion notification

[Changed]

  • Changed the location of global CORS settings outside of VirtualHost

v0.19.0

02 Aug 11:27

Choose a tag to compare

[Compatibility]

  • Compatible with dependencies installed via prerequisites.sh in version 0.19.0 or later
  • Compatible with the Server.xml configuration format used in version 0.12.6 or later
  • Compatible with Origin and Edge versions 0.19.0 or later

[Added]

  • Added infinite loop prevention during filler frame generation
  • Added ErrorToleranceDurationMs option to Scheduled Channel.
  • Added H.265 codec support to WebRTC
  • Added a default playlist named master to the default configuration, and it supports both simulcast and singlecast
  • Added E-RTMP (Enhanced RTMP) support.
  • Added StreamStatus rule to the Alert.
  • Added TimestampMode to (Options: ZeroBased, Original)
  • Added PacketSilenceTimeoutMs to Push Provider (Default: 0, ignored)
  • Added LL-HLS and HLS-ready detection to alert
  • Added 32/64 byte aligned addresses and data padding to prevent decoding crashes.
  • Added mutex for sequential sending in TLS data handling to ensure thread safety
  • Added mutex locks for thread safety in HPACK encoder and decoder

[Improved]

  • Improved mux streams to be able to be encoded.
  • Improved segmentation to be more precise when markers are inserted into HLS
  • Improved Mux Provider to use buffered packets.
  • Improved Scheduled Channel to start playback from the correct position in the Item based on the current time and the scheduled attribute in the Program
  • Improved streamid handling in SRT Provider/Publisher to use host name instead of vhost (#1847, #1848)
  • Improved CDN integration performance by removing the protection that forcefully closed TCP connections when receiving HLS URL requests that didn't match the expected pattern.
  • Reduced CPU usage of the Mux Provider

[Fixed]

  • Fixed the video corruption issue that occurs during input source transitions when using the NVIDIA encoder
  • Fixed the timebase of ScheduledChannel
  • Fixed a regression bug where WebRTC Provider drops RTCP SR.
  • Fixed SRT/MPEG-TS Provider to ignore unsupported tracks.
  • Fixed issue where duplicate stream names were not blocked when streaming via SRT/MPEG-TS.
  • Fixed issue where action APIs were not called when the stream name contained a colon.
  • Fixed the issue of OBS WHIP (with NVENC) incompatibility.
  • Fixed incorrect resolution parsing when streaming with WebRTC Simulcast.
  • Fix memory leak issue when packaging SRT input stream into audio-only HLS.
  • Fixed an issue where the HTTPS Client module would throw an exception
  • Fixed an issue where Opus audio would break upon OVT reconnection
  • Fixed an issue where ServerTimeBasedSegmentNumbering might not be synchronized in HLS.
  • Fixed an intermittent issue where a connection failure could occur when starting RTMP Push.
  • Fixed a regression bug where the start property of an Item in ScheduledChannel was not working.
  • Fixed an issue where a track might not play due to track ID conflicts when using multitrack video in E-RTMP.
  • Fixed an issue where playback could restart under certain conditions during WebRTC streaming.
  • Fixed an issue where video encoding quality would intermittently degrade.
  • Fixed potential malfunction of SignedPolicy and AdmissionWebhooks in SRT.
  • Fixed an issue where build failure on RHEL 8/9
  • Resolved a potential issue where HTTP/2 responses could be sent incorrectly in certain situations.

[Changed]

  • Changed to remove the codec_tag value when using the RTMP (FLV) format.
  • Removed socket options related to SRT latency and bandwidth.
  • Ensured SRT-related in Server.xml overrides them.
  • Split the StreamStatus event in Alert into separate events for ingress and egress.

v0.18.0

21 Feb 16:42

Choose a tag to compare

[Compatibility]

  • Compatible with dependencies installed via prerequisites.sh in version 0.17.3 or later
  • Compatible with the Server.xml configuration format used in version 0.12.6 or later
  • Compatible with Origin and Edge versions 0.18.0 or later

[Added]

  • Added SRT Publisher
  • Added WHIP Simulcast
  • Added simulcast support in WebRTC Provider
  • Added WebP image codec for Thumbnails
  • Added H265 in MPEG-2 TS container
  • Added SendEvents API
  • Added lookahead encoding option, excluding Xilinx encoder.
  • Added support for ${SourceStream} macro in StreamName in Push/File StreamMap file
  • Added multiple audio track support in ScheduleChannel.
  • Added #EXT-X-PROGRAM-DATE-TIME tag to HLSv3
  • Added CHARACTERISTICS attribute in #EXT-X-MEDIA tag of LLHLS

[Improved]

  • Improved to decode audio packets consisting of Multiple Frames
  • Improved the transcoder to support seamless transitions in Multi-Audio Tracks
  • Improved CORS handling for web browser in WhipServer and improve session ID retrieval
  • Improved Xilinx video sdk driver loading script
  • Improved stream info API to include default playlist

[Fixed]

  • Fixed the issue to prevent duplicate streams from being created with the same name
  • Fixed an issue where query strings included in the stream name were not handled
  • Fixed an issue where the original URL might not be preserved when calling the setter in ov::Url
  • Fixed an issue where data type statistics were not calculated
  • Fixed a crash when the input resolution changed with the Xilinx encoder
  • Fixed the issue where PTS wrap around occurs when using the XMA decoder
  • Fixed HLS timestamp was not accurate
  • Fixed an issue where scheduled channels would crash when using live channels
  • Fixed changed fallback program not applied
  • Fixed an issue where the overall system speed slowed down when logging in the journal system

[Changed]

  • Changed ubuntu version of docker host

[Removed]

  • Removed HTTP Date Header in HTTP Response

v0.17.3

17 Dec 14:58

Choose a tag to compare

[Compatibility]

  • Compatible with dependencies installed via prerequisites.sh in version 0.14.9 or later
  • Compatible with the Server.xml configuration format used in version 0.12.6 or later
  • Compatible with Origin and Edge versions 0.15.12 or later

[Added]

  • Added lookahead encoding option

[Fixed]

  • Fixed the issue to prevent duplicate streams from being created with the same name
  • Fixed an issue where query strings included in the stream name were not handled
  • Fixed an issue where the original URL might not be preserved when calling the setter in ov::Url

v0.17.2

09 Dec 11:39

Choose a tag to compare

[Compatibility]

  • Compatible with dependencies installed via prerequisites.sh in version 0.14.9 or later
  • Compatible with the Server.xml configuration format used in version 0.12.6 or later
  • Compatible with Origin and Edge versions 0.15.12 or later

[Added]

  • Added support for HEAD method in LLHLS, HLS, and API
  • Added support for ID3 Timed Metadata in HLSv3
  • Added thread count setting for software-based decoder
  • Added keyframe-only decoding when no video encoding is present

[Improvements]

  • Improved Playlist order maintenance in HLSv3
  • Improved speed of unused Session deletion in LLHLS Publisher
  • Improved prevention of Stream deletion during recording
  • Improved LLHLS segmentation policy for more stable streaming
  • Improved stability of ScheduledChannel for more reliable streaming

[Fixes]

  • Fixed an issue where memory could be exhausted if incorrect RTMP packets were continuously received
  • Fixed an issue where the encoder could not be selected by codec name
  • Fixed an issue where the NVIDIA driver could not be loaded in some versions
  • Fixed an issue where Safari could stop intermittently when changing ABR
  • Fixed an issue where a crash occurred when the policy value was empty in SignedPolicy
  • Fixed an issue where only one recording and push were possible in one stream
  • Fixed an issue where hardware resources were not released properly on program exit
  • Fixed an issue where AdmissionWebhooks might not include the stream name

[Changed]

  • Changed to CUDA Scaler instead of NPP Scaler.
  • The value of the "crossDomains" field in the API response has been changed as follows.
    Before:
  	"crossDomains": [
		"url1",
		"url2"
	]

After:

  	"crossDomains": {
		"urls": [
			"url1",
			"url2"
		],
		"headers": [
			{"key": "value"},
			{"key2": "value2"}
		]
  	}

v0.17.1

07 Oct 05:20

Choose a tag to compare

[Compatibility]

  • Compatible with dependencies installed via prerequisites.sh in version 0.14.9 or later.
  • Supports Server.xml configurations from version 0.12.6 and later.
  • Compatible with Origin and Edge versions 0.15.12 and above.

[Added]

  • Added the <CreateDefaultPlaylist> option for WebRTC, LL-HLS, and HLSv3 publishers, allowing them to disable default playlist creation (default: true).

[Changes]

  • Updated LL-HLS legacy mode to use a lower HLS version (HLS version 6).
  • Modified H.264/H.265 decoding to use a different multithreading type.
  • Changed the policy so that if a track registered in an HLSv3 playlist rendition does not exist, TS files are still generated.
  • Dynamic app auto-deletion in Edge can now be disabled with the <Modules><DynamicAppRemoval> option (default: false).

[Improvements]

  • Improved Origin to continuously attempt stream registration in OriginMapStore.
  • Made ome_docker_launcher compatible with non-GNU awk.
  • Improved Docker container shutdown to properly terminate when receiving a SIGTERM signal (#1531).

[Fixes]

  • Fixed an issue where HLSDump would not write old segments to files under certain conditions.
  • Resolved a crash that occurred when applications were shutting down.
  • Fixed an issue where thumbnails were not displaying correctly when using the JPEG codec.
  • Fixed an issue where the application would suddenly stop when using Push.
  • Corrected an issue where the playback time of recorded files was displayed incorrectly.
  • Fixed Xilinx driver installation failure on Ubuntu 20.x.
  • Resolved an issue where HLSv3 could hang and continue consuming memory.
  • Modified X-TARGETDURATION to be the nearest integer number of seconds (#1700).
  • Fixed an issue where the application occasionally failed to shut down properly.
  • Corrected the use of HlsChunklistPathDepth instead of HLSChunklistPathDepth in the Mux Provider (#1694).

v0.16.8

18 Jul 15:38

Choose a tag to compare

Urgent Patch - 0.16.7 is unusable and has been removed.

[Compatibility]

  • Compatible with dependencies(prerequisites.sh) installed in 0.14.9 or later
  • Compatible with Server.xml used in 0.12.6 or later
  • Compatible with version 0.15.12 or higher of Origin or Edge

[Added]

  • Supports the following proxy values in AdmissionWebhooks and SignedPolicy
    • Nginx's X-Forwarded-For and X-Real-IP
  • Added NVIDIA Driver installation script for Rocky Linux

[Improved]

  • Improved smooth transitions in Scheduled Channel

[Fixed]

  • Fixed an issue where Edge could crash when it was running as a Dynamic Application
  • Fixed an issue where Scheduled Channels might not play in certain situations
  • Removed code for debugging that prevented WebRTC playback in 0.16.7 release

v0.16.6

05 Jul 10:20

Choose a tag to compare

[Compatibility]

  • Compatible with dependencies(prerequisites.sh) installed in 0.14.9 or later
  • Compatible with Server.xml used in 0.12.6 or later
  • Compatible with version 0.15.12 or higher of Origin or Edge

[Added]

[Changed]

  • Deprecated DASH, LLDASH, HLS
  • Changed the default number of decoder threads for S/W H.264, H.265

[Improved]

  • Improved Get Stream API to also respond with Default Playlist
  • Improved support for dynamic resolution input in XMA Codec and NV Codec
  • Supported for MPEG-2 TS containers in ScheduledChannel (#1611)
  • Supported aac in TS file and opus in MP4 file in ScheduledChannel (#1618)
  • Added various statistics to the GET Stream API (e.g. bitrateConf, bitrateAvg, bitrateLatest)
  • Improved Keyframe Interval stability in encoders
  • Supported SRT access control style streamid
  • Enhanced AppWorker distribution algorithm
  • Improved Stream Action API to work with mux and scheduled as well
  • Improved Mux Provider to not drop initial packets

[Fixed]

  • Fixed an issue where Output Stream was not created when Framerate was not set
  • Fixed issue potentially causing deadlock (#1633)
  • Fixed crash issue when unable to obtain tc_url from RTMP stream (#1631, #1639)
  • Fixed RTMP compatibility issue (#1631)
  • Fixed MPEG-2 TS buffer not being consumed under certain conditions
  • Fixed AUD NAL code

v0.16.5

15 Mar 06:22

Choose a tag to compare

[Compatibility]

Compatible with dependencies(prerequisites.sh) installed in 0.14.9 or later
Compatible with Server.xml used in 0.12.6 or later
Compatible with version 0.15.12 or higher of Origin or Edge

[Added]

[Changed]

  • Change the root of the relative path of Multiplex Provider and Scheduled Provider from the path where the existing binary was located to the path where Server.xml is located
  • Changed the base image of Dockerfile to Ubuntu 22.04 (#1527)

[Improved]

  • Improved to change the output resolution to a multiple of 4 for XMA compatibility
  • Improved RTSP Pull Provider to ignore unsupported codecs during negotiation (#1394)
  • Improved to not overwrite existing files during ``make install``` (#1536)

[Fixed]

  • Fixed compatibility issues in RTMP provider (#1541)
  • Fixed "Extention failed" error in XMA scaler
  • Fixed libnppig.so library could not be found in docker (#1508)
  • Fixed an issue where filter resources were not released intermittently
  • Fixed an issue where files recorded with passthrough were corrupted (#1551)
  • Fixed issue where RTSP Pull stream sometimes does not start (#1516)
  • Fixed a regression bug where LLHLS Dump's chunklist was generated incorrectly (#1509)

v0.16.4

16 Jan 08:42

Choose a tag to compare

[Compatibility]

  • Compatible with dependencies(prerequisites.sh) installed in 0.14.9 or later
  • Compatible with Server.xml used in 0.12.6 or later
  • Compatible with version 0.15.12 or higher of Origin or Edge

[Added]

  • Added Netint VPU for H264/H265 (thanks to nums Link)
  • Added SkipFrames option for Video/Image encoding
  • Added keyframe interval by time
  • Added Scheduled Channel feature (Link)
  • Added netint hardware encoder support
  • Integrated with Pallycon DRM
  • FairPlay DRM supported

[Changed]

  • Changed Xilinx Video SDK version from 2.0 to 3.0
  • Changed OpenH264 to 2.4.0

[Improved]

  • Improved validation of Image Output Track to be immediate [#1417]
  • Improved to avoid locking when using the Pushes Action API [#1443]
  • Improved to enable Zero Copy on the same GPU
  • Simultaneous support for multiple XMA devices

[Fixed]

  • Fixed filter initialization issue when using SW decoder and NV encoder [#1493]
  • Fixed an issue where filtering by ID was not possible when calling the pushes API [#1474]
  • Fixed an issue where OCSP renewal logs were displayed even when OCSP stapling was not needed
  • Fixed installation path of nvcc-hdr
  • Fixed issue with first requested stream not working in dynamic apps