Video Linux SDK Release Notes
v2.35.1 — August 2026
Added
-
This version adds a new API that allows publishers to explicitly set the target scalability mode, giving developers fine-grained control over the number of spatial (resolution) and temporal (frame rate) layers used during encoding. This enables applications to better balance video quality, adaptability, and resource usage based on their specific needs. For more information, see this documentation. This is a beta feature.
-
This version of the SDK now uses WebRTC M145, a recent milestone from Google's WebRTC library. The upgrade brings improvements in performance, stability, and security across all supported native platforms. It includes bug fixes and performance enhancements to audio and video media codecs, better network adaptation, and improved compatibility with modern platform environments. This update ensures the SDK remains aligned with the current WebRTC specification and maintains a strong foundation for future feature development. As a result of this upgrade, version 2.35.1+ of the SDK only supports systems with GLIBC 2.38 or higher on arm7 and arm64 architectures.
-
This version includes an update to the bundled CA certificates used by the SDK for establishing secure connections. This file contains trusted Certificate Authority certificates that the SDK uses to verify SSL/TLS connections, ensuring secure communication with external services. This file serves as a fallback and is only used when the SDK cannot locate a CA certificate bundle in the system. This routine update adds newly trusted CAs and removes outdated certificates.
-
The
otc_video_frame_set_metadata()andotc_video_frame_get_metadata()functions, deprecated in 2.33.0, have been removed in this version.
Fixed
- Fixed an issue where calling otc_session_publish() inside the on_session_connected callback could fail due to a race condition caused by the session's internal connected state not being updated before the callback fired.
v2.35.1 — August 2026
Added
-
Promise support for async SDK methods (non-breaking). The JS SDK now supports modern
async/awaitand promise-based patterns alongside the existing callback-based API. This change is fully backward compatible — all existing callback-based code continues to work without modification. For more information, see this documentation. -
Scalability Mode API. This version adds a new API that allows publishers to explicitly set the target scalability mode, giving developers fine-grained control over the number of spatial (resolution) and temporal (frame rate) layers used during encoding. This enables applications to better balance video quality, adaptability, and resource usage based on their specific needs. For more information, see this documentation. This is a beta feature.
-
Performed Android 17 validation. The Vonage Web SDK has been validated on Android 17, confirming smooth operation across Android mobile browsers and WebView applications.
Fixed
- Fixed an issue where, in some cases, subscribing to a VP9 stream failed when the publisher had set
videoContentHintto "detail" or "text".
- Fixed a memory leak in audio processing across subscribe/unsubscribe and publish/unpublish cycles that in some cases could lead to unbounded heap growth and audio degradation over time.
- Fixed an issue where in some cases retrying to publish after a failed attempt resulted in a false positive, causing the session.publish callback to report success when the publish had not actually succeeded.
- Fixed an issue where in some cases relay ICE candidates were not included when establishing a connection, which could result in connectivity failures in networks that require TURN relay.
- Fixed an issue where in some cases applying or clearing a video filter after changing the publisher's resolution produced an unexpected zoom effect.
- Fixed an issue where
OT.hasMediaProcessorSupport()incorrectly returned false on iOS 26 WKWebView due to Apple's frozen user agent string, blocking the use ofPublisher.applyVideoFilter()on affected devices. Additionally, a new asynchronous variantOT.hasMediaProcessorSupport.promise()has been added, which performs a more thorough check of the browser's capabilities and is recommended over the static version for a more accurate and future-proof result.
- Fixed an issue where end-to-end encryption did not work on Safari when the developer tools were opened.
- Fixed an issue introduced in version 2.34.0 where applications enforcing a strict Content Security Policy (CSP) could experience violations when using background blur or background replacement on Safari and Firefox, due to the use of an inline web worker. The inline web worker has been removed, eliminating these CSP violations.
- Fixed an issue in the JS SDK where calling
publishVideo(false)aftersetPreferredResolution()orsetPreferredFrameRate()would incorrectly return a constraint error on Firefox and Safari.
v2.35.1 — August 2026
Added
-
This version adds a new API that allows publishers to explicitly set the target scalability mode, giving developers fine-grained control over the number of spatial (resolution) and temporal (frame rate) layers used during encoding. This enables applications to better balance video quality, adaptability, and resource usage based on their specific needs. For more information, see this documentation. This is a beta feature.
-
This version of the SDK now uses WebRTC M145, a recent milestone from Google's WebRTC library. The upgrade brings improvements in performance, stability, and security across all supported native platforms. It includes bug fixes and performance enhancements to audio and video media codecs, better network adaptation, and improved compatibility with modern platform environments. This update ensures the SDK remains aligned with the current WebRTC specification and maintains a strong foundation for future feature development. As a result of this upgrade, version 2.35.1+ of the SDK only supports iOS 17 or higher.
-
Added a new Installation section to the iOS SDK overview documentation covering:
- Swift Package Manager (SPM) as the recommended installation method (available since v2.25.1).
- CocoaPods (
VonageClientSDKVideopod) as a maintained but deprecated alternative. - A migration guide for projects moving from CocoaPods (
VonageClientSDKVideo) to SPM.
-
The
[OTVideoFrame setMetadata:data error:error]method andOTVideoFramemetadata property, deprecated in 2.33.0, have been removed in this version.
v2.35.1 — August 2026
Added
-
This version adds a new API that allows publishers to explicitly set the target scalability mode, giving developers fine-grained control over the number of spatial (resolution) and temporal (frame rate) layers used during encoding. This enables applications to better balance video quality, adaptability, and resource usage based on their specific needs. For more information, see this documentation. This is a beta feature.
-
This version of the SDK now uses WebRTC M145, a recent milestone from Google's WebRTC library. The upgrade brings improvements in performance, stability, and security across all supported native platforms. It includes bug fixes and performance enhancements to audio and video media codecs, better network adaptation, and improved compatibility with modern platform environments. This update ensures the SDK remains aligned with the current WebRTC specification and maintains a strong foundation for future feature development.
-
This version adds support for Android 17 (API level 37), updating the SDK's
compileSdkandtargetSdkto 37. All Android 17 behavior changes have been analyzed and validated:ACCESS_LOCAL_NETWORKpermission: Not required. WebRTC ICE uses raw UDP/TCP sockets, which are not subject to this permission. P2P connections establish correctly on Android 17 without it.- Background audio hardening: The SDK's internal audio focus handling has been updated from the deprecated
AudioManager.requestAudioFocus()API to theAudioFocusRequestAPI (the recommended non-deprecated API for API 26+). No changes are needed in your app. - Certificate Transparency: All Vonage server endpoints are already compliant. No changes are needed in your app.
-
The
BaseVideoRenderer.Frame#getMetadata()method and severalBaseVideoCapturermethods that provide video frame metadata, deprecated in 2.33.0, have been removed in this version.
Fixed
- Fixed an issue on Android where rapid background-to-foreground transitions during an active video session could cause the publisher video to freeze or the application to crash.
v2.35.1 — August 2026
Added
-
This version adds a new API that allows publishers to explicitly set the target scalability mode, giving developers fine-grained control over the number of spatial (resolution) and temporal (frame rate) layers used during encoding. This enables applications to better balance video quality, adaptability, and resource usage based on their specific needs. For more information, see this documentation. This is a beta feature.
-
This version of the SDK now uses WebRTC M145, a recent milestone from Google's WebRTC library. The upgrade brings improvements in performance, stability, and security across all supported native platforms. It includes bug fixes and performance enhancements to audio and video media codecs, better network adaptation, and improved compatibility with modern platform environments. This update ensures the SDK remains aligned with the current WebRTC specification and maintains a strong foundation for future feature development.
-
The Metadata property of
VideoFrame, deprecated in 2.33.0, has been removed in this version.
Known issues
- Setting a non-default target scalability mode may affect the behaviour of
setPreferredResolution()andsetPreferredFrameRate()for subscribers. For more information, see the Interaction with subscriber preferred resolution and frame rate note.