Releases: ant-media/Ant-Media-Server
Releases · ant-media/Ant-Media-Server
Ant Media Server Community 2.14.0
🎉 Ant Media Server 2.14.0 – New Update Highlights! 🚀
We’ve been busy behind the scenes making your real-time streaming even smoother, faster, and more reliable. Here’s what’s new:
🔧 Performance Improvements
- ⚡ MongoDB caching & locking = faster dashboard and queries
- 🧠 Removed subtrack polling – quicker cluster reactions
- 🚀 Faster startup with auto-reconnect enabled
🌐 Webhooks & API Enhancements
- ✅ Webhooks now include
subscriberId
, token
, and code
- ⏱️ Recording API returns the correct
timestamp
📡 Streaming Reliability Boosts
- 🎯 AV sync issues fixed under heavy packet loss
- 🕒 RTMP connections timeout and close gracefully
🔐 Security & Infrastructure
- 🔒 Apache version hidden from failed requests
- 📦 Gzip support added for HLS
- 📈 Increased systemd limits for heavy load
- 🔧 Easier RTMPS setup with SSL
🧪 SRT & HLS Enhancements
- 🎞️ SRT ingest now supports
mainTrack
- 🧹 HLS manifest cleaned up (no double ampersands, supports stream IDs ending with
_
)
🏢 Enterprise-Only Fixes
- 🎮 Multi-GPU encoder utilization bug fixed
- 🧰 Cluster stream filter logic improved
- 🕰️ Better timestamp handling for audio/video mismatches
Let us know your feedback, and thanks for streaming with Ant Media! 🧡
#AntMediaServer #StreamingUpdate #WebRTC #RTMP #SRT #HLS #Changelog #LowLatencyStreaming
Ant-Media-Server
7245 Get `acceptOnlyStreamsInDataStore` from AppsSettings directly - #7202
7220 Add domain parameter handling in renew_certificate function - #7219
7212 Fix not deleting app having underscore - #7209
7208 Add token, subscriberId and code to the Authorization WebHook - #7190
7205 Make rtmps.enabled placeholder not break upgrade operation - #7204
7193 Add subscriberId to the publish start/stop webhooks - #7194
7192 Add websocket constants for getting ice server config from server - #6975
7189 Fix Filter APIs Exception when Ingest protocol is RTMP and WebRTC playback is disabled - #7166
7185 Use separate locks for MongoDB queries to perform faster - #7173
7184 Add cache for MongoDB to have less query execution and work faster - #7174
7181 Do not append double ambersand(&) in the HLS manifest modifier - #7152
7162 Support mainTrack feature for SRT ingest - #7161
7146 Increase LimitNOFILE and TasksMax in systemd unit options - #7145
7143 Make it easy to enable RTMPS and enable RTMPS with SSL by default - #7115
7139 Log build number - #7128
7137 Set recording timestamp for all cases - #7102
7127 Don't set virtual false for broadcast update and refactor code - #7039
7120 Refactor code to update custom broadcasts easily - #7039
7102 Fix recording API not returning timestamp and returning 0 instead (#7079). -
7100 Resolve A/V synch issue when high packet loss and CPU is not fast enough to encode - #7021
7085 Fix HLS play when stream id ends with under score - #7066
7084 fix hls play when stream id ends with _ -
7083 Subtrack list ordering - #7082
7072 Add isVirtual check to saveUndefined streams - #7039
7071 Start playing faster when auto reconnection is enabled -
#6972
7058 Improve the recent developments to pass the enterprise tests - #6946
7056 Fix: stream source is not restarting after update - #7055
7053 Close RTMP connection if no audio/video packets are received during timeout - #7047
7052 Add subtrack notification definitions...
Read more
Ant Media Server Community 2.13.2
Ant Media Server Community 2.13.0
Highlights 🎸
- Provide insightful information on the web panel and through REST API 😎
- Stream resolution, bitrate, RTT, etc.
- GPU utilization/Database Performance
- Improve stability 💪
- Starting up the instance when receiving high number of requests
- Stopping WebRTC viewers when it is under high load
- Add integration test codes for some previous features to confirm
- Fix several vulnerabilities/issues and use system resources more efficiently 🚀
Ant-Media-Server
6994 Improve test stability for deleteSubtracks -
6993 Remove clusterNotifier in xml and code for TomcatLoader -
6991 Add integration test code for content security filter - #6934
6983 Support 'startTime' and 'endTime' parameters in HLS(m3u8 files) when httpForwarding is active - #6964
6982 Show stream health info and average db query time and gpu utilization - #6965, #6968, #6966, #6985, #6965, #6968, #6966
6959 add cluster delete rest call - ant-media/conference-call-application#451
6957 Fix server restart under high http load - #6933
6955 Fix Mp4 upload To S3 - #6927
6949 Try none loopback address first for localhost address - #6948
6931 Update subscriber to db if it requires for http viewer and tune some settings - #6914 #6929
6920 Add clientIP to WebSocket Communication to use it in WebRTC - #6894
6916 Add uninstall script - #6917
6912 Make it easy to configure encoders - #6911
6892 S3 transfer buffer size configuration - #6871
6888 Fix lost VoD fields values - #6877
6880 Remove session maps because we put tokens as query parameter by default - #6681
6873 Release/2.12.0 - #6872
6868 Support changing hls segment files' name with timestamps - #6863
6730 Forward auto start request to origin - #6712
6671 Add s3PathStyleAccessEnabled setting
5272 Add height bitrate parameter to CustomBroadcast - #5172
Ant-Media-Enterprise
Use the available GPU or switch back to CPU if no GPU is available- #6986
Delete subtracks when the broadcast is deleted- ant-media/conference-call-application#451
Revert back to aligning audio video in WebRTC ingest- #6954
Fix multiple public ip for licensing- #6948
Fix unexpected stream id format in SRT ingest- #6945
Fix rare crash on native OnEncodedFrame method- #6780
Fix same m3u8 download problem, improve stability- #6930 #6914
Set WebRTC Client IP address coming from WebSocket communication- #6894
Make it easy to configure encoders- #6911
Add backup stream integration test code- #3917
Make the codes run asynch to not block in any state- #6893
Make data channel registration synchronized- #6883
Remove sessions map because we put tokens as query parameter- #6681
Release/2.12.0- #6872
Parse streamId correctly if Hardware encoder prefix exists in SRT ingest- #6840
Add Viewer Info to Webhook Play Auth Payload- #6746
Support height and bitrate parameters for Filter output- #5172
StreamApp
530 Add contentSecurityFilter again to the web.xml - #6934
529 Fix webrtc undefined js error and UTF-8 support for html pages - #6990 #6988
528 Import whip-client.modern.js to resolve constructor issue -
527 Fix warning message in webrtc test tool and simple refactor - #6942
526 Get Client IP from WebSocket Communication - #6894
525 Limit Chart.js data points to play smoothly -
Read more
Ant Media Server Community 2.12.0
Highlights
- Update FFmpeg to 7.1
- Support WebP, JPEG previews
- Support ID3 in HLS HEVC streams
- Support USB stick licensing
- Optimize MongoDB utilization
Ant-Media-Server
6862 Refactor Subscriber & Add setting to write events to datastore #6860 #6861
6857 Fix big app installation in clusters - #6777
6852 Support WebP Previews - #6859
6849 Add user publish id constant - ant-media/conference-call-application#426
6844 Handle port number suffixes in IP filters - #6838 @jantekb
6842 Add JPG support for previews - #6841
6833 Add subFolder AppSettings with mainTrackId and streamId variable support - #6821
6829 Add Debian support to enable_ssl.sh - #6792
6828 Reconnect faster and shutdown faster - #6786
6822 Cache subscriber to decrease query count - #6783
6816 Add get subtrack count commands - ant-media/conference-call-application#403
6814 Add Spring Packages used in applications -
6811 Update FFmpeg to 7.1 - #6804
6784 Fix typo in getTOTP REST method output -
6769 Fix HLS Modifier Returning Wrong Content in Case of Https - #6308
6767 Fix allowable values in Broadcast definitions - thank you to @Himpoke - #6740
6764 Add stream name to the stream status webhook -
6763 Return error in getToken REST Method When token type is not valid - #6744
6752 Resolve CVE 202 13956 - #6750
6739 Add allowableValues expects an array to map to enum -
6735 Make encoding Q size configurable - #6705
6734 Fix Wrong Memory Display If AMS is running in a Container - #6626
6726 Upgrade FFmpeg to 7.1 - #6551
6721 Correct JWT function name in enable_ssl.sh -
6718 Call webhook for stream status & Make streamId unique index in MongoDB for Broadcasts - #3847
6717 Call webhook for stream status - #6711
6709 Split RTMP StreamId by slash(/) to parse Token and TOTP - #6704
6701 add getRemoteIpAddress into IWebRTCClient - #6638
6688 Add SRT latency configuration in application settings - #6665
6687 Add correct IP address in Docker cluster environments - #6707
6686 Fix enable_ssl.sh script warnings in Docker environment - #6706
6683 Add latitude, longitude, altitude, metadata and description fields to VoD - #6662
6676 Fix frame size format in ID3 header
6661 Fix unexpected null pointer exception for streamId in logs -
6656 Add custom text support in stream endpoints for VoD & HLS - #6650
6644 Support mp3 file upload - #6643
6630 Add getter for dbId field in AppSettings - #6629
6620 Improve rtmp overflow check because it causes a test fail in enterprise - #6427
6613 Improve VoD Upload API - #6612
6611 Get REST API JWT From Authorization Bearer - #6516
6610 Add Settings Field to Stop WebRTC Ingest if no audio/video packet is received for the timeout duration -
Read more
Ant Media Server Community 2.11.3
Ant-Media-Enterprise
Add products to website automatically: Update downloadable file in products-
Put audio packets in queue, update audio/video timing after restore- #5601
Fix Wrong Overflow Trigger in Audio & Video- #6632
Ant Media Server Community 2.11.2
Ant-Media-Server
6630 Add getter for dbId field in AppSettings - #6629Ant-Media-Enterprise
Delete old AppSettings's index if exists to not have IndexConflict in MongoDB 4.4- #6629
Ant Media Server Community 2.11.1
Ant-Media-Server
6620 Improve rtmp overflow check because it causes a test fail in enterprise - #6427 6613 Improve VoD Upload API - #6612 6610 Add Settings Field to Stop WebRTC Ingest if no audio/video packet is received for the timeout duration - #6605 6609 Reverted - Ignore this PR: Stop WebRTC Ingest if no audio packet is received for the timeout duration - #6605 6604 Relay RTMP metadata to Muxers writeMetadata method - #6550 6602 Allow RTSPS urls as stream source - Accept rtsps URLs as Stream Source 6601 Release/2.11.0 - 6598 Remove date extension from the access log filename to rotate the log files - 6559 Fix RTMP timestamp overflow after 24 days of non-stop streaming - #6486 6457 Fix logging statement - Hi,
We found a formatting issue in the logging messages.
It's an incremental commit but it can improve the quality of logging messages. 6352 Refactor Installing SSL in Marketplace Instances - Ant-Media-Enterprise
Stop connection(not immediately) when ICE is disconnected because it already waits 10 secs to let the client reconnect- #6427
Add Settings Field to Stop WebRTC Ingest if no audio/video packet is received for the timeout duration- #6605
Add Settings Field to Stop WebRTC Ingest if no audio packet is received for the timeout duration- #6605
Add metadata to HLS-
Release/2.11.0-
StreamApp
484 Reset websocket connections flags to re-connect faster - #6427 482 Release/2.11.0 - Ant-Media-Server-Parent
137 Release/2.11.0 - Ant-Media-Management-Console
260 Allow RTSPS urls while creating stream source - Accept rtsps URLs as Stream Source
Ant Media Server Community 2.11.0
Ant Media Server Community 2.10.1
Highlights
-
Improve stability in Conferencing under High Load: When there is an instant number of participants join/leave the video conference, some participants could not be heard or watched. It's fixed and with this fix, your conference calls are more stable under high number of attendees 🤙 🎸
-
Improve Stability in Cluster : Some nodes in the cluster rarely cannot get the secret-key for cluster communication and they should be restarted to work in a cluster. It's fixed and with this fix, all your nodes are more stable to join/leave the clusters on the fly. 💪 🚀
-
Better HLS playback in Bad networks: In bad network conditions, WebRTC ingest is missing some audio and video packets as expected. With this fix, We've handle the missed audio video packets better and we provide a better watching experience for HLS playback 🎉 🎦
Ant-Media-Server
6564 Fix: MongoDB database cannot be set in standalone mode -
6534 Add Redhat support to Enable SSL -
6501 Add Delete Session Method -
6495 Refactor interface to set resolution for subtracks - #6481
6493 Add query parameters in HLS manifest file - #6452
6489 Update owasp-suppressions.xml - #6488
6468 Release/2.10.0 - #6423
6420 multi app access permission for users - https://github.com/ant-media/Ant-Media-Server/issues/6302
Ant-Media-Enterprise
Fix: Stream does not disconnect when their is no audio/video data for sometime 6512
Fix: Improve stability in conference when high number of viewers join/leave instantly 6577
Fix: Some nodes cannot join the cluster in rare scenarios 5859
Improve HLS playback when ingesting with WebRTC
Improve backward compatibility about push notification service for apps-
Log for forcing the stream quality of subtracks-
Set resolution for subtracks in multitrack streaming- #6481
Clear previous track assignment in reservation- Fix missing tiles after pinning
Release/2.10.0- #6423
Add client IP address to webhook play auth- #6340
StreamApp
478 Update stream merger - #6492
477 Make getStats compatible with the multitrack play and multitrack conference - #6375
476 Release/2.10.0 - #6423
449 Add reconnection mechanism into conference.html - #6143
Ant-Media-Server-Parent
134 Upgrade tomcat version -
133 Release/2.10.0 - #6423
Ant-Media-Management-Console
259 Call logout rest method when logging out -
257 multi app access permission for users - #6302
Ant Media Server Community 2.10.0
Highlights
-
Better UX in Conferencing: Ant Media Server provides a better user experience in conferencing, it's faster, more stable and attracting new customers with Circle: Online Video Conferencing 🤙
-
WHIP Support: Ant Media Server Enterprise can ingest WebRTC streams with WHIP protocol. It's tested with OBS and @eyevinn/whip-endpoint. The sample is available in default applications as whip.html. It can be accessible with https:/{YOUR_AMS}:5443/live/whip.html
and WHIP endpoint is https:/{YOUR_AMS}:5443/live/whip/{STREAM_ID}
🎥
-
Analytics: Ant Media Server logs every stream related info as json to ant-media-server-analytics.log
including data transfer, key frame interval, used protocol, start and end time of publishing and playing along with subscriberId, tokens, streamId, and application name. ℹ️
-
Interactive Live Streaming(SEI and ID3 Tags): Add SEI messages(unregistered user data) and ID3 Tags to the HLS streams on the fly with REST API and parse them on the player to make streaming interactive and synched. 🎉
-
Multitrack Player: Play conference rooms in a player and it can be used by recording conference rooms or create PK with MediaPush plugin. Multitrack player is available in default applications on https:/{YOUR_AMS}:5443/live/multitrack-play.html
💯
PS: You need to update your Ant Media Server Installer for installation of v2.10.0
wget https://raw.githubusercontent.com/ant-media/Scripts/master/install_ant-media-server.sh -O install_ant-media-server.sh && chmod 755 install_ant-media-server.sh
Ant-Media-Server
6462 Set owasp security score to 7 and change default value of sendAudioLevelToViewers to false
6451 Fix test stability problem
6444 Fix SSL installation for Docker container - #6432
6436 Change hardware frame scaling default value to false
6434 Convert metadata field of webhook from string to json object if possible
6425 Add roomId field to webhook payload in addition to mainTrackId for backward compatibility
6421 Make hlsSegmentType(mpegts,fmp4) effective in direct muxing -
6413 Fix/proxy filter with cookie - #6412
6408 Add sei message(unregistered_user_data) directly with byte operations - #6407
6385 Add size control for corrupted db file - #6384
6382 Support AC3 audio codec in HLS - #6381
6365 Fix camera profile getter - #6259
6351 Fix webhookPlayAuthEnabled appearing on app settings with JsonIgnore
6349 Fix hls fmp4 init file naming and srt to hls direct conversion - #6342
6347 Add recording subfolder setting - #6334
6325 Remove conference room from database structure and add auto migration - #5755
6324 Add segment type(fmp4, mpegts) options for HLS - #6323
6314 Add duration rest method to get the duration of an stream URL - #6313
6309 Make ID3 headers compatible with the format -
6301 Add GCP SDK - StorageClient support -
6300 Add test codes, improve test stability, secure analytic enpoint -
6299 Refactor test and increase coverage -
6281 Webhook Authentication For WebRTC Play - https://github.com/ant-media/Ant-Media-Server/issues/6211
With this form this PR breaks backward compatability of webhook publish authentication because there is a new app setting webhookPublishAuthEnabled and webhookPlayAuthEnabled
previously webhook auth was only for publish and webhook publish was enabled if webhook auth url is not empty.
6275 Add webhooks for the subtracks when they are added, removed, first track, last track, etc. - #6253
6263 Release/2.9.0 - #6250
6248 Support SEI in HLS - #6247
6241 Log analytics for publishers and viewers - #6264
6145 Broadcast Level ABR Settings - https://github.com/ant-media/Ant-Media-Server/issues/6144
5857 WebRTC-HTTP ingestion protocol(WHIP) Implementation - https://github.com/ant-media/Ant-Media-Server/issues/4307
5824 Support HLS settings specific to broadcasts - #5769
5727 Add max participant capacity to conferences(aka. subtracks) - #5723
Ant-Media-Enterprise
Fix conference sample and refactor methods-
Change hardware frame scaling default value to false- #6436
Fix audio echo in conferencing if network fluctuates- ant-media/conference-call-application#253
Push docker images to the docker hub & Trigger Circle Deployment-
Remove calling se...
Read more