# Tencent RTC RTC Engine — Web > RTC Engine documentation for Web platform. ## Core SDK ### Get Started - [Activate Service](https://pre.trtc.io/document/73281.md): Tencent RTC-Engine is a real-time communication SDK offering audio and video call capabilities, cloud recording, mixed-stream transcoding, and live streaming relay. This guide helps users activate the trial service, create applications, run demos, purchase official subscriptions, renew or upgrade editions, and enable automatic renewal. Follow step-by-step instructions to quickly start using Tencent RTC-Engine for your audio and video communication needs. - [Run the Demo](https://pre.trtc.io/document/35607.md): Tencent RTC Web Quickstart guide provides step-by-step instructions to create an application using SDKAppID and SDKSecretKey for real-time audio and video communication. It enables users to login, turn on/off camera and microphone, share screens, and invite others to join calls through generated links. This guide helps developers quickly integrate Tencent RTC's core communication capabilities on the Web platform. - [Integration](https://pre.trtc.io/document/59649.md): The TRTC SDK Quick Start Guide provides step-by-step instructions for web developers to implement basic audio and video calls. It explains how to install the SDK, create a TRTC instance, enter and exit rooms, control local audio and video devices, and handle remote streams. This guide helps developers quickly integrate real-time communication features into their web applications using Tencent RTC technology. ### Basic Features - [UserSig Authentication](https://pre.trtc.io/document/35166.md): This guide explains how to calculate UserSig, a security signature for Tencent-RTC services, during the debugging phase. It covers obtaining SDKAppID and SDKSecretKey from the Tencent-RTC console and generating UserSig using client sample code on multiple platforms including Android, iOS, Web, Windows, Flutter, and Mac. The steps ensure secure authentication for developers testing Tencent-RTC SDKs before official deployment. - [Network Quality Probing](https://pre.trtc.io/document/59655.md): Tencent RTC SDK enables developers to detect network quality before or during audio and video calls. This guide explains how to implement network quality detection by monitoring uplink and downlink conditions through the NETWORK_QUALITY event. It covers creating TRTC instances, entering rooms, starting video streams, and calculating average network quality over a 15-second test period to ensure optimal call performance. - [Video Quality & Encoding Profiles](https://pre.trtc.io/document/59654.md): Tencent RTC SDK quickstart guide explains how to set video, audio, and screen sharing encoding profiles. It covers specifying predefined and custom profiles with resolution, frame rate, and bit rate parameters. The guide includes steps to set video profiles dynamically during calls, set audio profiles at start, and configure screen sharing profiles for optimal encoding performance. - [Video Rotation](https://pre.trtc.io/document/56861.md): TRTC Web SDK provides video rendering control for web platforms, enabling users to adjust mirror and fill modes for local and remote video streams. This guide explains how to set mirror effects to flip video rendering and configure fill modes such as contain, cover, and fill to control aspect ratio and cropping behavior. It is designed for developers integrating video rendering features using TRTC Web SDK version 5.x. - [Live Streaming Mode](https://pre.trtc.io/document/59650.md): Tencent RTC Live Streaming SDK guide explains how to implement live streaming using scene live mode on web platforms. It covers setting up anchor and audience roles, entering rooms, playing remote audio and video streams, handling autoplay restrictions, and switching roles between anchor and audience to enable publishing streams. This tutorial helps developers quickly integrate live streaming capabilities with detailed steps and sample code. - [Device Management](https://pre.trtc.io/document/59652.md): Tencent RTC Media Device SDK guide explains how to turn on/off the microphone and camera, switch microphone, camera, and speaker devices, detect media device states, and monitor user speaking status after muting. This tutorial covers key operations including using mute parameters, stopping local audio/video, publishing streams, and handling device change events to help developers implement comprehensive media device management. - [Volume Control](https://pre.trtc.io/document/59653.md): The TRTC SDK quickstart guide explains how to detect audio volume from local microphones and remote users, identify if a user is speaking after muting their microphone, and adjust both local and remote audio volumes. It provides step-by-step instructions to enable audio volume evaluation events, listen for volume changes, and modify capture and playback volumes on supported platforms. - [Screen Sharing](https://pre.trtc.io/document/59651.md): The TRTC Web SDK screen sharing quickstart guide explains how to start and stop screen sharing, play remote screen sharing streams, and capture system audio on supported browsers. It covers key steps such as initializing the SDK, entering a room, and handling main and sub video streams. This guide helps developers implement screen sharing functionality efficiently in web applications using TRTC. - [Device Capability Detection](https://pre.trtc.io/document/59656.md): The TRTC SDK provides a DeviceDetector plugin for testing user media devices such as cameras, microphones, and speakers, as well as network quality before entering a TRTC room. This guide covers supported platforms, usage steps for the plugin, and API details to help developers ensure optimal user experience by detecting browser capabilities and performing media device and network tests. ### Advanced Features - [Custom Video Capture & Rendering](https://pre.trtc.io/document/53621.md): The TRTC Web SDK provides advanced custom capture and custom rendering capabilities for audio and video streams. It enables developers to capture media from cameras, microphones, screen sharing, video elements, and canvas animations, and to render local and remote video streams using custom players. This guide is designed for web developers seeking flexible media stream handling and rendering solutions within the TRTC platform. - [Custom Audio Processing](https://pre.trtc.io/document/47629.md): Tencent RTC Web SDK guide for custom capture and rendering explains how to customize video and audio capture from various sources such as camera, screen, video tags, and canvas animations. It also details steps to implement custom rendering of local and remote video streams using your own video player, including handling video track events and lifecycle management. - [Virtual Background](https://pre.trtc.io/document/59659.md): The Virtual Background feature in the TRTC SDK enables users to apply image or blur effects to their camera background during calls. This quickstart guide covers prerequisites, resource deployment, browser support verification, plugin registration, camera initialization, and plugin usage steps including enabling, updating, and disabling the virtual background. It also addresses common issues and provides API usage examples for developers integrating this feature. - [Watermark](https://pre.trtc.io/document/59661.md): The TRTC Web SDK watermark plugin enables adding customizable image watermarks to camera streams for web applications. This quickstart guide covers prerequisites, installation, opening the camera, starting and stopping the watermark plugin, and configuring watermark position and size. It is designed for developers using TRTC Web SDK version 5.3.0 or later to enhance video streams with transparent PNG watermarks and control mirroring behavior. - [AI Noise Suppression](https://pre.trtc.io/document/59658.md): The AI Denoiser plugin for Tencent RTC reduces environmental noise during audio calls, effectively suppressing keyboard sounds and other transient noises. This quickstart guide explains the prerequisites, resource deployment, and step-by-step process to enable and disable the AI Denoiser plugin in TRTC applications on supported browsers including Chrome, Edge, Safari, and Firefox. Key steps include publishing static resources to a CDN and using the trtc.startPlugin and trtc.stopPlugin APIs. - [Background Music & Audio Mixing](https://pre.trtc.io/document/59660.md): The AudioPlayer plugin is a flexible SDK component that enables background music playback during calls by mixing audio into the publishing stream. This quickstart guide details step-by-step instructions for installing the plugin, entering a room, creating and controlling the audio player instance, and properly destroying the player to avoid memory leaks. Supported platforms include major desktop and mobile browsers on Mac OS, Windows, iOS, and Android. - [Voice Changer](https://pre.trtc.io/document/69472.md): The Voice Changer Plugin is a feature of the TRTC Web SDK that enables users to apply various voice changing effects during audio communication. This quickstart guide is designed for developers using TRTC Web SDK version 5.10 or above on supported browsers such as Chrome, Edge, Safari, and Firefox. It covers the essential steps including importing and registering the plugin, enabling the microphone, and activating or updating voice changer effects using the provided APIs. - [CDN Relay Streaming](https://pre.trtc.io/document/76908.md): The CDNStreaming plugin for TRTC SDK enables cloud-based stream mixing, relaying audio and video streams to CDN, and pushing mixed streams back to TRTC rooms. This guide provides detailed steps for installing and registering the plugin, selecting relay modes, starting and stopping stream relay, updating stream IDs, and mixing multiple streams. It is designed for developers using TRTC SDK version 5.1 or above with Tencent Cloud Live service enabled, helping them implement efficient CDN streaming workflows. - [Client-side Video Mixing](https://pre.trtc.io/document/74270.md): The VideoMixer plugin for TRTC Web SDK enables mixing multiple input sources like camera, screen sharing, text, and images into a single video track. This guide is designed for web developers using TRTC Web SDK version 5.12.0 or above on desktop browsers such as Chrome, Safari, Firefox, and Edge. It covers installation, starting the plugin with canvas configuration, updating various input sources dynamically, and stopping the mixing process, providing essential steps to integrate video mixing functionality efficiently. - [Cross-room Calls](https://pre.trtc.io/document/69471.md): The Cross-Room plugin for Tencent RTC SDK enables audio and video communication across different rooms, supporting both room-level and user-level connection modes. This quickstart guide provides step-by-step instructions to start a cross-room connection, update the mute status of anchors in the target room, and stop the connection. It is designed for developers using TRTC SDK version 5.8.0 or above to implement cross-room interactive live streaming scenarios. - [Custom Messages / SEI Messages](https://pre.trtc.io/document/59662.md): Tencent RTC Data Messages SDK enables application data transfer within rooms using Custom Messages and SEI Messages. Custom Messages allow anchors to send ordered, reliable messages with size and frequency limits after entering a room. SEI Messages embed additional data into video frames, requiring local video to be started and supporting only H264 encoding. Both methods provide event-based reception but may experience message loss in poor networks. This overview guides developers on sending and receiving these message types effectively. ### Client APIs - [Overview](https://pre.trtc.io/document/41664.md): The TRTC SDK API reference details the main entry point and methods for implementing real-time audio and video calls. It covers static and instance methods for device management, room control, media stream handling, screen sharing, and messaging. The document also explains error codes for troubleshooting API usage issues, enabling developers to integrate TRTC capabilities on supported browsers effectively. - [Error Codes](https://pre.trtc.io/document/41665.md): The TRTC Web SDK v5 provides a set of 8 error codes through the RtcError object to help developers identify and handle issues during API calls. This guide explains each error code, its cause, and recommended handling methods to resolve common problems such as invalid parameters, unsupported environments, device access errors, server exceptions, and operation failures. ### FAQ - [FAQs for Beginners](https://pre.trtc.io/document/38104.md): Tencent Real-Time Communication (TRTC) FAQs provide essential information for beginners about the TRTC SDK, including UserSig security, supported platforms, room capacity, live streaming roles, screen sharing, and troubleshooting common issues. This guide helps developers understand how to use TRTC features effectively and resolve typical problems encountered during integration and usage. - [Billing](https://pre.trtc.io/document/42298.md): Tencent Real-Time Communication (TRTC) Billing FAQ provides detailed answers on billing methods, discounts for high-demand customers, usage tracking, and cost estimation. It explains how TRTC services are billed, how to view bills and usage details, and clarifies billing for audio and video durations. The FAQ also covers how free minutes and Monthly Active Users (MAU) are calculated across multiple subscription packages with the same SDKAppID, helping users manage and estimate their TRTC service expenses effectively. - [Features](https://pre.trtc.io/document/36057.md): Tencent Real-Time Communication (TRTC) SDK offers a comprehensive platform for developing interactive audio and video communication applications. Designed for developers needing group audio/video calls and low-latency live streaming, TRTC supports diverse scenarios such as video calls, live streaming, and voice chat rooms. Key features include flexible role management, manual stream subscription, support for large concurrent audiences, and multi-platform demos for rapid deployment. - [Firewall Restrictions](https://pre.trtc.io/document/35164.md): Tencent TRTC SDK firewall restriction FAQ provides detailed guidance on the ports and domain names to add to firewall allowlists for native SDK and WebRTC clients. It also explains how to configure proxies using Nginx and Coturn to enable client access to the TRTC SDK from private networks, ensuring smooth connectivity and compliance with network security requirements. - [How to Downsize Installation Package](https://pre.trtc.io/document/35165.md): This FAQ document addresses how to reduce the installation package size after integrating the TRTC SDK for iOS and Android platforms. It explains the file size increments caused by the SDK and provides detailed methods such as packaging only specific architectures for iOS, enabling Bitcode, and selectively packaging or downloading .so files for Android. These solutions help developers optimize app size while maintaining TRTC SDK functionalities. - [TRTCCalling for Web](https://pre.trtc.io/document/43096.md): TRTCCalling for Web is a real-time communication SDK based on TRTC and TIM that enables one-to-one and group audio/video calls. This FAQ page helps developers and users resolve common issues such as browser compatibility, network quality testing, device permission errors, and integration challenges. It provides detailed explanations and solutions for errors encountered during audio/video calls and SDK operations to ensure smooth communication experiences. - [Audio and Video Quality](https://pre.trtc.io/document/43094.md): Tencent Real-Time Communication (TRTC) SDK offers comprehensive troubleshooting guidance for audio and video quality issues. This FAQ helps developers and users resolve common problems such as black bars in video images, video stutter, low-quality or blurry videos, audio volume and echo issues, and device status errors. It also explains how to monitor network status and adjust video orientation and mirroring settings to optimize call and streaming experiences. - [Others](https://pre.trtc.io/document/36058.md): Tencent Real-Time Communication (TRTC) FAQ provides solutions to common issues and questions related to live streaming, interactive live streaming, relayed live streaming, and TRTC usage. It covers topics such as differences between streaming types, user ID conflicts, playback stuttering, room entry errors, log viewing, error codes, and cross-room calls. This guide helps developers and users troubleshoot and optimize their TRTC and live streaming experience across multiple platforms including iOS, Android, Windows, and Web. - [Optimize Multi-Person Video Calls](https://pre.trtc.io/document/59665.md): Tencent RTC SDK provides optimization solutions for multi-person video calls by enabling small stream publishing and subscribing. This guide helps developers reduce bandwidth consumption and improve call quality on low-end devices by encoding and dynamically switching between high-resolution big streams and low-resolution small streams. Key steps include enabling small stream on the publisher, subscribing to small streams on the subscriber, and managing stream switching to enhance user experience. - [Handle Autoplay Restriction](https://pre.trtc.io/document/59666.md): This guide explains how to handle browser autoplay restrictions affecting audio and video playback in the TRTC Web SDK. It is intended for developers who want to enable automatic stream playback without requiring user interaction. The document provides two main solutions: using the SDK's built-in autoplay popup to prompt user interaction, and implementing custom handling by disabling the default popup, listening for autoplay failure events, and actively resuming playback. Important notes cover browser-specific behaviors and iframe embedding scenarios. - [Handle Firewall Restriction](https://pre.trtc.io/document/59667.md): The TRTC Web SDK solution guide explains how to handle firewall restrictions that may prevent normal use of audio and video calls in enterprise or restricted network environments. It provides two main approaches: monitoring SDK errors to prompt users to adjust network or firewall settings, including whitelisting specific ports and domain names, and deploying proxy servers using Nginx and coturn to relay signaling and media data. This guide is intended for developers integrating TRTC Web SDK in environments with firewall constraints to ensure reliable media connections. - [Others](https://pre.trtc.io/document/37340.md): The TRTC Web SDK FAQ provides answers to common questions about browser support, device testing, network quality, permissions, and advanced features such as dual-stream mode and watermarking. It helps developers troubleshoot issues related to media device access, video stream management, and platform-specific behaviors to ensure smooth audio and video communication experiences.