Release Notes - Javascript
This page will provide you with updates on all releases of the Javascript SDK.
v0.3.7
Release Date : 17th October 2025
Bug Fixes:
- Resolved an issue where streams sent from iOS browsers were rendered rotated in Firefox.
v0.3.6
Release Date : 13th October 2025
Change Log :
- Deprecated the
getNetworkStatsmethod.
Bug Fixes:
- Fixed issue with multiple webcam producers getting created.
- Fixed simulcast layers for all custom tracks.
v0.3.5
Release Date : 29th September 2025
Change Log :
- Internal dependency update.
v0.3.3
Release Date : 10th September 2025
Change Log :
DataStream Messaging: Enabled the ability to send data through DataStream, allowing participants to exchange messages, signals, and binary data alongside audio and video.
Docs:
v0.3.2
Release Date : 8th September 2025
Change Log :
Chrome & Edge v140 Compatibility: Fixed an issue where users were unable to enable audio and video on the latest Chrome and Edge (v140).Camera Switching: Resolved an issue in Chrome v140 that prevented users from changing the camera device.PubSub Error Handling: PubSub Publish method now throw an error if there is a problem while sending a message, making it easier to detect and handle failures.
Docs:
This update is critical to ensure smooth functionality on the latest Chrome and Edge (v140). We strongly recommend upgrading to this version to maintain compatibility and avoid disruptions in meetings.
If you are using Virtual Background from VideoSDK via @videosdk.live/videosdk-media-processor-web, it is also important to update the package to version 0.0.22 for full compatibility.
v0.2.12
Release Date : 30th July 2025
Change Log :
Quality Limitation Event: Introduced aquality-limitationevent on theMeetingobject to detect and handle bandwidth, congestion, or CPU-related issues.Stream State Event: Added astateevent on theStreamobject to track video or screen-share stream states such as active, stuck, freeze-detected, and ended.Transport Stats API: AddedgetTransportStats()method on theParticipantobject to fetch transport-level network metrics like available and target bitrate.Improved Network Cleanup: Enhanced cleanup handling during network disconnectivity and when switching networks.
Docs:
v0.2.11
Release Date : 16th July 2025
Change Log :
Webcam Switching Issue Resolved: Fixed an issue where switching to an camera after disconnecting external camera devices had unexpected behaviour.Improved Error Handling: The SDK now emits aFAILEDevent when it fails to establish a connection with the VideoSDK server.
Docs:
v0.2.9
Release Date : 18th June 2025
Change Log :
- Fixed issue for React Native SDK: resolved error where the document property was not found when invoking the
setQualitymethod.
v0.2.7
Release Date : 19th May 2025
Change Log :
-
End-to-End Encryption (E2EE) Support – Added support for E2EE to ensure secure media transmission between participants.
-
Fast Channel Switching – Fast Channel Switching feature enables instant transitions between live streams with minimal latency.
-
Media Relay Support – Introducing Relay Media, enabling hosts to share their media (audio, video, screen) with other live streams. Perfect for creating engaging "PK battles" and collaborative broadcasts.
Docs:
v0.2.5
Release Date : 9th May 2025
Change Log :
-
Added
setScreenShareQuality()on Participant class to customize screen share quality settings. -
Custom Screen share track is supported
multiStream.
v0.2.1
Release Date : 21st April 2025
Change Log :
-
New Methods in
MeetingClass:pauseAllStreams(): Pauses all media streams (audio, video, and screen share) or a specific stream type if provided.resumeAllStreams(): Resumes all paused media streams (audio, video, and screen share) or a specific stream type if provided.
Docs: Meeting Class - Methods
-
New/Updated Event Listeners in
Meetingclass:onPausedAllStreams: Triggered when media streams is paused.onResumedAllStreams: Triggered when media streams is resumed.
Docs: Meeting Class - Events
v0.1.6
Release Date : 10th April 2025
Change Log :
1. Adaptive Subscriptions (BETA)
Optimize bandwidth usage and call quality in large meetings with our new Adaptive Subscriptions feature:
Toggle functionality with simple methods:
// Enable adaptive subscriptions
meeting.enableAdaptiveSubscriptions();
// Disable adaptive subscriptions
meeting.disableAdaptiveSubscriptions();
2. Stream Pause/Resume Events
Track when video streams are automatically paused or resumed:
// Listen for video stream pause events
participant.on("stream-paused", ({ kind, reason }) => {
console.log(`Stream ${kind} paused due to: ${reason}`);
// reason: "muted" or "leastDominance"
});
// Listen for video stream resume events
participant.on("stream-resumed", ({ kind, reason }) => {
console.log(`Stream ${kind} resumed due to: ${reason}`);
// reason: "adaptiveSubscriptionsDisabled" or "networkStable"
});
3. Player Components (BETA)
Intelligently manages video streams based on viewport visibility to reduce bandwidth usage.
Video Rendering
const videoElement = participant.renderVideo({
type: "video", // or "share" for screen sharing
maxQuality: "auto", // auto-adjusts based on container size
videoStyle: {},
containerStyle: {
width: "1280px",
height: "720px",
},
});
document.getElementById("video-container").appendChild(videoElement);
Audio Rendering
const audioElement = participant.renderAudio({
type: "audio", // or "shareAudio" for screen share audio
});
document.body.appendChild(audioElement);
Benefits
- Reduced bandwidth consumption for large meetings
- Smart prioritization of active speakers
- Improved call quality for users with network constraints
- Automatic quality adjustment based on container size
For detailed documentation, please visit our Scalability Guide for Large Participant Meetings.
v0.1.5
Release Date : 20th Feb 2025
Change Log :
1. Enhanced Meeting Connection Flow:
- The
CONNECTEDstate will now trigger only after both WebSocket and media connections are successfully established, ensuring a more accurate meeting state. Previously, it was triggered upon WebSocket connection alone.
2. New RECONNECTING State:
- Introduced a
RECONNECTINGstate that activates if the network connection is lost during a meeting. The SDK will automatically attempt to rejoin, improving reliability.
3. Simplified Disconnection States:
- The
FAILED,CLOSING, andCLOSEDstates have been removed. All disconnection scenarios will now be handled by theDISCONNECTEDstate for a more streamlined experience.
Docs: Meeting Connection State Events
v0.1.4
Release Date : 21st Jan 2025
Change Log :
- Deprecated Modes: Replaced
CONFERENCEwithSEND_AND_RECVandVIEWERwithSIGNALLING_ONLY. - New Mode: Added
RECV_ONLYfor live streaming, allowing participants to receive media only. - Role Switching: Enabled seamless role switching between
SEND_AND_RECV(host) andRECV_ONLY(audience) usingmeeting.changeMode().
Docs: Quick Start for Interactive Live Streaming
v0.0.100
Release Date : 27th Nov 2024
Bug Fixes:
- Fixed an issue where a second participant joining a meeting would encounter an error if the first participant left before the second participant joined
v0.0.99
Release Date : 1st Nov 2024
Change Log :
- Update Room Stats Library to track pause_count, pause_duration, freeze_count, and total_freeze_duration for remote participant video.
v0.0.98
Release Date : 30th Sept 2024
Bug Fixes:
- Fixed an issue where the media collector stats would error during network reconnection.
v0.0.97
Release Date : 17th Sept 2024
Change Log :
Whiteboard Feature:
- Start:
meeting.startWhiteboard()→whiteboard-startedevent (returns URL) - Stop:
meeting.stopWhiteboard()→whiteboard-stoppedevent - Use: Embed URL in iframe or app component
- Benefit: Real-time visual collaboration in meetings
Docs: Whiteboard
v0.0.96
Release Date : 7th Sept 2024
Bug Fixes:
-
Fixed video rotation issue in Mozilla browser.
-
Fixed Video status issue when removing an external camera.
v0.0.94
Release Date : 30th July 2024
Bug Fixes:
- Fixed mic stream issue which was occurring initially at the time of joining the meeting.
v0.0.93
Release Date : 26th July 2024
Change Log :
- Added getShareAudioStats method for retrieving audio sharing statistics on Chromium-based browsers (e.g., Chrome, Brave).
Bug fix :
- Upgraded the getAudioStats, getVideoStats, and getShareStats methods of
useParticipanthook to deliver detailed insights for audio, video, and screen sharing. These statistics are now accessible on all browsers.
v0.0.89
Release Date : 22nd June 2024
Change Log :
-
The SDK now supports a maximum frame rate of 30 FPS for screen sharing, providing a smoother user experience.
-
The
requestPermissionmethod has been enhanced to allow requesting audio and video permissions in a single pop-up window, streamlining the permission granting process for users.
v0.0.88
Release Date : 24th May 2024
Bug fix :
-
Fix stream not getting disposed on Firefox.
-
Microphone track ended handled.
v0.0.87
Release Date : 21st May 2024
Change Log :
-
The default value of the
preferredProtocolproperty ininitMeeting()has been changed to UDP_OVER_TCP. This means meetings will attempt to use UDP for faster data transfer, but will gracefully fallback to TCP if UDP encounters issues in your network environment. -
A new option, TCP_ONLY, has been added to the
preferredProtocolparameter ofinitMeeting(). This option allows you to force meetings to use the TCP protocol only. TCP prioritizes reliable data delivery over speed, making it ideal for networks prone to packet loss.
Bug fix :
- Enhanced error handling to gracefully handle situations where the WebSocket is not available.
v0.0.86
Release Date : 30th April 2024
Change Log :
- Removed unnecessary logs to improve performance and reduce clutter in logs.
- Added types for parameters in the
startTranscription()method for better code clarity and type safety. - Enabled the
summaryfeature in thestartTranscription()method, allowing users to generate summarized transcripts after the meeting ends.
v0.0.85
Release Date : 24th April 2024
Change Log :
-
Introducing real-time transcription capabilities with the following methods:
Methods:
-
startTranscription:Easily begin real-time transcription with a single method call.SDK Reference : startTranscription
-
stopTranscription:Stops ongoing transcription processes seamlessly when necessary.SDK Reference : stopTranscription
Events:
-
transcription-state-changed:Receive updates on transcription states, including started, stopped, and failed states.SDK Reference : transcription-state-changed
-
transcription-text:Get real-time updates of transcription text as it is generated, ensuring a responsive transcription experience.SDK Reference : transcription-text
-
-
Introducing post-meeting transcription and summary capabilities with the recording and HLS methods:
-
startRecording():Begins recording the meeting and supports post-transcription and summary configuration.SDK Reference : startRecording
-
startHls():Starts HLS streaming with options for post-transcription and summary settings.SDK Reference : startHls
-
Docs: Realtime Transcription
Docs: Post Transcription & Summary
v0.0.84
Release Date : 23rd April 2024
Change Log :
- Internal Dependency Update.
v0.0.83
Release Date : 7th April 2024
Bug fix :
- Fixed the issue of being unable to connect to a meeting on the iOS Firefox browser.
v0.0.82
Release Date : 18th Mar 2024
Change Log :
-
More Precise Media-Related Errors on
errorEvent:This update includes detailed error codes and messages for media-related issues. Listen to these error messages on the
errorevent to diagnose and resolve issues more effectively.
Docs : Error Event
| Constant | Code | Message |
|---|---|---|
| ERROR_CAMERA_ACCESS_DENIED_OR_DISMISSED | 3017 | Oops! It seems like camera access was denied or dismissed. To proceed, kindly grant access through your browser settings. |
| ERROR_MICROPHONE_ACCESS_DENIED_OR_DISMISSED | 3018 | Oops! It seems like microphone access was denied or dismissed. To proceed, kindly grant access through your browser settings. |
| ERROR_CAMERA_PERMISSION_DENIED_BY_OS | 3019 | Camera permission denied by OS system settings. Please check the system settings and grant permission for this browser. |
| ERROR_MICROPHONE_PERMISSION_DENIED_BY_OS | 3020 | Microphone permission denied by OS system settings. Please check the system settings and grant permission for this browser. |
| ERROR_CAMERA_NOT_FOUND | 3021 | Please ensure your camera is connected and turned on, and that the camera driver is installed and up-to-date. |
| ERROR_MICROPHONE_NOT_FOUND | 3022 | Please ensure your microphone is connected and turned on. |
| ERROR_CAMERA_IN_USE | 3023 | The camera is being used by another application. Please close any programs utilizing the camera, such as video conferencing tools, screen recording software, or other browsers. Restart your browser and attempt again. |
| ERROR_MICROPHONE_IN_USE | 3024 | The microphone is being used by another application. Please close any programs utilizing the microphone, such as video conferencing tools, screen recording software, or other browsers. Restart your browser and attempt again. |
| ERROR_CAMERA_PERMISSION_OR_AUTOPLAY_ISSUE | 3025 | It seems like there's an issue with camera permission or video autoplay, you can check out this link for details: http://tinyurl.com/autoplay-issue |
| ERROR_VIDEO_SOURCE_INITIATION_FAILED | 3026 | Unable to initiate video source. Please verify browser settings for video permissions. |
| ERROR_WEBCAM_TRACK_ENDED | 3027 | Webcam track has ended or the webcam is disconnected. Please ensure your webcam is properly connected and try restarting it. |
| ERROR_MICROPHONE_TRACK_ENDED | 3028 | Microphone track has ended or the microphone is disconnected. Please check your microphone connection and try again. |
| ERROR_INVALID_CUSTOM_VIDEO_TRACK | 3029 | The provided custom video track is invalid; reverting to the default video track. Please ensure that the video track meets the required specifications. |
| ERROR_INVALID_CUSTOM_AUDIO_TRACK | 3030 | The provided custom audio track is invalid; reverting to the default audio track. Please ensure that the audio track meets the required specifications. |
| ERROR_CUSTOM_VIDEO_TRACK_ENDED | 3031 | The provided custom video track is in an ended state. Please verify the video track's status, and try again. |
| ERROR_CUSTOM_AUDIO_TRACK_ENDED | 3032 | The provided custom audio track is in an ended state. Please verify the audio track's status, and try again. |
| ERROR_CAMERA_ACCESS_UNAVAILABLE | 3033 | Camera access unavailable: Please ensure your device is compatible and that you're on a secure website (https://). |
| ERROR_MICROPHONE_ACCESS_UNAVAILABLE | 3034 | Microphone access unavailable: Please ensure your device is compatible and that you're on a secure website (https://). |
| ERROR_ACTION_PERFORMED_BEFORE_MEETING_JOINED | 3035 | Oops! Something went wrong. The room was in a connecting state, and during that time, an action encountered an issue. Please try again after joining a meeting. |
| MAX_SPEAKER_LIMIT_REACHED_ON_ORGANIZATION | 4026 | You have reached max speaker limit on organization. To increase contact at support@videosdk.live |
| MAX_VIEWER_LIMIT_REACHED_ON_ORGANIZATION | 4027 | You have reached max viewer limit on organization. To increase contact at support@videosdk.live |
| MAX_RECORDING_LIMIT_REACHED_ON_ORGANIZATION | 4028 | You have reached max limit of recording on organization. To increase contact at support@videosdk.live |
| MAX_HLS_LIMIT_REACHED_ON_ORGANIZATION | 4029 | You have reached max limit of hls on organization. To increase contact at support@videosdk.live |
| MAX_LIVESTREAM_LIMIT_REACHED_ON_ORGANIZATION | 4030 | You have reached max limit of livestream on organization. To increase contact at support@videosdk.live |
v0.0.80
Release Date : 19th January 2024
Change Log :
-
Provide
getNetworkStats()method inVideoSDKclass to getdownloadSpeedanduploadSpeedof network.Docs : getNetworkStats()
-
Change
Permissionparameter toOptionalinrequestPermission()andcheckPermissions()methods ofVideoSDKclass.
v0.0.79
Release Date : 5th January 2024
Change Log :
-
Provide Pre-Call Screen's features.
-
Provide
getDevices()method inVideoSDKclass to get list of media input/output devices.Docs : getDevices()
-
Provide
getCameras()method inVideoSDKclass to get list of camera input devices.Docs : getCameras()
-
Provide
getMicrophones()method inVideoSDKclass to get list of audio input devices.Docs : getMicrophones()
-
Provide
getPlaybackDevices()method inVideoSDKclass to get list of audio output devices.Docs : getPlaybackDevices()
-
Provide
device-changedevent inVideoSDKclass, which gets triggered whenever a media device is connected to or removed from the system.Docs : device-changed
-
Provide
requestPermission()method inVideoSDKclass to request a media permission.Docs : requestPermission()
-
Provide
checkPermission()method inVideoSDKclass to check status of a media permissions.Docs : checkPermission()
-
-
Provide Getter for currently used webcam and mic device
-
Provide
selectedCameraDeviceproperty inMeetingclass to get currently used camera device in the meeting.Docs : selectedCameraDevice
-
Provide
selectedMicrophoneDeviceproperty inMeetingclass to get currently used microphone device in the meeting.Docs : selectedMicrophoneDevice
-
-
Optimized Reconnection Logics.
v0.0.78
Release Date : 30th Dec 2023
Change Log :
- Reduce SDK size.
v0.0.75
Release Date : 1st Dec 2023
Change Log :
-
Added
captureImagemethod in theParticipantobject to capture the image of the user from MediaStream.Docs : captureImage()
-
Added methods
uploadBase64FileandfetchBase64Fileto upload and download a temporary file.Docs : uploadBase64File
Docs : fetchbase64file
v0.0.74
Release Date : 27th Oct 2023
Change Log :
- Added
metaDataproperty associated withParticipantto pass additional information. - Added
payloadfeature in PubSub to pass additional payload data. - Added
sendOnlyfeature to PubSub to Publish data for only Participants mentioned.
v0.0.73
Release Date : 7th Oct 2023
Bug Fix :
- Fixed
trackEndedissue while removing wired headset.
v0.0.67
Release Date : 4th May 2023
Bug Fix :
-
Updated type definations
-
Fixed
changeMicnot switching mic issue. -
Fixed
deviceIdignored if device had a virtual camera.
v0.0.66
Release Date : 29th April 2023
Change log :
- Added Typescript Support.
Bug Fix :
-
The Remote participant audio levels remain consistent even when the local participant mutes or unmutes their microphone.
-
RTC stats are now available on the latest browser versions.
v0.0.63
Release Date : 31st March 2023
Change log :
HLS_PLAYABLEstate added inhls-state-changedevent.livestreamState,recordingState,hlsStateandhlsUrlsgetters added in Meeting.hlsUrlsgetter added in Meeting
v0.0.62
Release Date : 3rd March 2023
Change log :
-
Updated Types.
-
Updated Internal Dependencies.
v0.0.61
Release Date : 10th February 2023
Change log :
- Improve bitrate logic in the
multiStreamfeature so that user's CPU and the network are optimise.
v0.0.60
Release Date : 6th February 2023
Change log :
- Replace custom track in
changeWebcammethod.
v0.0.59
Release Date : 3rd February 2023
Change log : none
Bug Fix :
- Network switch & reconnection issue fixes (covered all possible edge cases that were causing interruptions during the meeting)
v0.0.57
Release Date : 28th December 2022
Change log : none
Bug Fix :
- Network switch & re connection issue fixes in meeting-state-changed event.
v0.0.56
Release Date : 20th December 2022
Change log :
-
Participant can toggle between the
CONFERENCEandVIEWERmode by usingchangeMode()method.Docs : Change Mode
v0.0.55
Release Date : 14th December 2022
Change log : None
Bug Fix :
- Fix
failed: DOMException: Answer tried to enable an m-section that was disabled in the offererror on Enable Webcam in Firefox browser.
v0.0.54
Release Date : 25th November 2022
Change log :
- To obtain screen sharing statistics, the
Participantclass now has agetShareStatsfunction.
v0.0.53
Release Date : 11th November 2022
Change log :
-
Provide
multistreamparameter for sending multiple resolution layers or single resolution layer.Docs : Multi Stream
-
Provide
video-quality-changedin Participant class to listen video quality changes.SDK Reference : video-quality-changed
-
Provide meeting
CONFERENCEandVIEWERmode on initMeeting.SDK Reference : Meeting Mode
v0.0.52
Release Date : 4th November 2022
Change log :
- Provide Types support.
v0.0.50
Release Date : 23rd September 2022
Change log :
-
Added Error Event for,
- If someone is denying media controls permissions such as
Video,MicandScreen Share - Previous Recording, RTMP or HLS is being processed.
- If someone is denying media controls permissions such as
Error Code Table :
| Type | Code | Message |
|---|---|---|
| ERROR_GET_VIDEO_MEDIA_PERMISSION_DENIED | 3014 | Video capture permission denied. |
| ERROR_GET_AUDIO_MEDIA_PERMISSION_DENIED | 3015 | Audio capture permission denied. |
| ERROR_GET_DISPLAY_MEDIA_PERMISSION_DENIED | 3016 | Screen sharing permission denied. |
| PREV_RECORDING_PROCESSING | 4018 | Previous recording session is being processed, please try again after few seconds! |
| PREV_RTMP_RECORDING_PROCESSING | 4019 | Previous RTMP recording session is being processed, please try again after few seconds! |
| PREV_HLS_STREAMING_PROCESSING | 4020 | Previous HLS streaming session is being processed, please try again after few seconds! |
-
Event added for HLS state (starting, started, stopping and stopped)
SDK Reference : hls-state-changed
This version will store timeline of the session, session stats and participant stats. This will be available in your VideoSDK Session Dashboard
v0.0.49
Release Date : 21st August 2022
Change log : None
Bug Fix :
- Fix
reading s.data on undefinederror.
v0.0.47
Release Date : 11th August 2022
Change log : None
Bug Fix :
-
Fixed issues with Custom audio and video tracks.
-
Updated types indicating optional value or not.
v0.0.44
Release Date : 05th August 2022
Change Log:
-
Added support for screenshare with Audio.
-
Custom audio, video and share track now accepts
MediaStreaminstead ofMediaStreamTrack. -
Added types for better IDE support.
v0.0.42
Release Date : 29th July 2022
Change log:
-
Added
getVideoStatsandgetAudioStatsmethods for getting particular participant streams statistics.SDK Reference : getVideoStats
SDK Reference : getAudioStats
-
Added
meeting-state-changedevent for getting state of meeting changes.SDK Reference : meeting-state-changed
v0.0.41
Release Date : 23rd July 2022
Change log :
-
Set Audio packet priority high.
-
Internal dependency update.
v0.0.40
Release Date : 19th July 2022
Change log :
-
Recording and Livestream status event added.
Docs : Recording Events
v0.0.36
Release Date : 1st July 2022
Change log :
-
Add the ViewPort method for better video quality based on view container.
Docs : How to Set Viewport?
-
Provide Echo Cancellation on the audio stream.
Bug Fix :
-
Remove googDsp dependency warn.
-
Resolve
changeWebcamandchangeMiccustomTrack issue.
v0.0.34 & v0.0.35
Release Date : 7th June 2022
Change log : None
Bug Fix :
- Resolve UDP port blocking and video blackout issue.
v0.0.32 & v0.0.33
Release Date : 16th May 2022
Change log :
- Update Internal dependency.
v0.0.31
Release Date : 14th May 2022
Change log : None
Bug Fix :
-
Custom track issue on initMeeting fix.
-
Throw error when device or browser does not support audio or video communication.
-
Resolved error
No peers found for the Data consumerwhile start recording/ livestream/hls.
v0.0.30
Release Date : 29th April 2022
Change log :
-
Applied custom video track on
changeWebcammethod. -
Applied custom audio track on
changeMicmethod.
Bug Fix :
- Resolve Mozila browser (Mac OS) localParticipant Video blackout issue.
v0.0.29
Release Date : 23rd April 2022
Change log :
-
Release Custom Video track feature
-
Release Custom Audio track feature
-
Release Custom Screen Share track feature
v0.0.24
Release Date : 12th February 2022
Change log :
-
Release Pubsub message feature for text communication.
Docs : How to use Pubsub feature?
-
Customise recording layout for Cloud Recording / HLS and RTMP out.
SDK Reference : Start Recording
SDK Reference : Start HLS
SDK Reference : Start RTMP
v0.0.23
Release Date : 10th January 2022
Change log :
-
Connect Meetings (BETA): This new feature enables you to fetch participant data between two or more meetings and make participants switch meetings.
-
Added
meeting.on(“error”)event listener to subscribe to all meeting errors occurring in the SDK.Docs : Error Event
-
Add custom participantId in
initMeetingmethodSDK Reference : Custom ParticipantId
Got a Question? Ask us on discord

