# Tencent RTC RTC Engine — macOS > RTC Engine documentation for macOS 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/61686.md): The TRTC macOS SDK Quick Start Guide provides step-by-step instructions for developers to download, configure, and run the demo application. It covers prerequisites such as Xcode 11.0+, developer signature, and Qt Creator 4.13.3+. The guide explains how to obtain SDKAppID and SDKSecretKey from the TRTC Console, configure the demo project files, and run both Objective-C and Swift demos. It also advises on secure UserSig generation via server-side integration for production environments and HTTPS deployment requirements. - [Integration](https://pre.trtc.io/document/62043.md): The TRTC SDK for Mac provides developers with the tools to implement basic audio and video call functionality using Objective-C. This quickstart guide walks through prerequisites including Xcode and macOS versions, SDK integration via CocoaPods or Swift Package Manager, project configuration, TRTC instance creation, and key operations such as entering rooms, toggling camera and microphone, and streaming audio and video. It is designed for developers building real-time communication applications on Mac. ### 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/48272.md): Tencent RTC SDKs for Android, iOS, Windows, and macOS enable developers to detect network quality before and during video calls. This guide explains how to perform speed testing using the startSpeedTest API, interpret key parameters such as packet loss, latency, and bandwidth, and use the results to optimize server selection and enhance call experience. Step-by-step instructions and sample code snippets are provided to help you integrate network quality detection into your applications. - [Video Quality & Encoding Profiles](https://pre.trtc.io/document/35153.md): TRTCCloud SDK provides video quality configuration options for multiple platforms including iOS, Android, macOS, Windows, Web, Electron, and Flutter. It supports scenario-based settings through TRTCAppScene, encoding parameters via TRTCVideoEncParam, and network policies using TRTCNetworkQosParam to optimize video call and live streaming experiences. This overview details recommended configurations for resolution, frame rate, and bitrate tailored to scenarios such as video calls, conferencing, and online education to meet diverse project needs. - [Video Rotation](https://pre.trtc.io/document/35154.md): Tencent RTC TRTC SDK quickstart guide for Android, iOS, Windows, and macOS explains how to implement portrait and landscape video modes. It covers setting app orientation, configuring video encoder parameters, and customizing local and remote image rotation and rendering. This guide helps developers deliver video call and live streaming experiences with correct page orientation and image adaptation. - [Live Streaming Mode](https://pre.trtc.io/document/64695.md): Tencent Real-Time Communication (TRTC) provides a live streaming SDK supporting iOS, Android, Mac OS, Windows, Web, Electron, and Flutter platforms. This guide explains how to implement live streaming in the TRTC_APP_SCENE_LIVE scenario by managing user roles as Host or Audience. Key steps include entering the room with appropriate roles, publishing streams as a Host, and subscribing as an Audience, enabling scalable live broadcasting with up to 100,000 audience members. - [Device Management](https://pre.trtc.io/document/64696.md): Tencent Real-Time Communication (TRTC) Live Streaming SDK provides developers with comprehensive media device control capabilities. This guide explains how to turn on/off the microphone and camera, control the camera preview, toggle the flash, enable or disable face focus, and detect speaking status after mute, enabling flexible media management during live streaming on Android, iOS, Mac, and Windows platforms. - [Volume Control](https://pre.trtc.io/document/64697.md): The TRTC SDK quickstart guide demonstrates how to detect and adjust the volume levels of local and remote microphones across Android, iOS, Mac, and Windows platforms. It provides step-by-step instructions to enable audio volume evaluation, receive real-time volume feedback through callbacks, and configure volume parameters to manage audio input effectively for interactive audio and video communication scenarios. - [Screen Sharing](https://pre.trtc.io/document/37336.md): The TRTC Screen Sharing SDK on macOS enables developers to implement screen sharing functionality using primary and substream modes. This guide explains how to enumerate sharable sources, select sharing targets, and control screen sharing with APIs such as startScreenCapture, pauseScreenCapture, and resumeScreenCapture. It is designed for developers integrating screen sharing into macOS applications to enhance real-time communication experiences. - [System Audio Sharing](https://pre.trtc.io/document/39694.md): The TRTC macOS audio sharing SDK enables capturing and sharing system audio during screen sharing by installing a virtual sound card plugin. This guide explains how to integrate the TRTCPrivilegedTask library to obtain root access, disable App Sandbox, package the virtual sound card plugin, and use APIs to start, stop, and adjust system audio capturing volume on Mac computers. ### Advanced Features - [Custom Video Capture & Rendering](https://pre.trtc.io/document/35158.md): The TRTC SDK provides custom video capturing and rendering capabilities for Android, iOS, Windows, and macOS platforms. This guide explains how to enable custom video capturing, send custom video frames, and set up local and remote video rendering callbacks. It includes platform-specific API examples and details on video data formats to help developers implement customized video processing and rendering workflows. - [Custom Audio Processing](https://pre.trtc.io/document/47635.md): The TRTC SDK guide for Android, iOS, Windows, and macOS demonstrates how to enable custom audio capturing, send custom audio frames, and set audio callbacks. This quickstart helps developers integrate custom audio capturing features across multiple platforms, providing step-by-step API usage examples to capture and render audio data effectively. - [Basic Beauty Effects](https://pre.trtc.io/document/64698.md): This tutorial explains how to enable and configure beauty effects in TRTC live broadcast SDK. It guides users through setting up skin smoothing, whitening, ruddy, and facial special effects such as enlarging eyes and slimming face. The guide covers applying beauty algorithms, adjusting whitening and ruddy levels, adding color filters, and using animated effects across Android, iOS, Mac, and Windows platforms. Prerequisites include having an SDKAppID and ensuring RTC service availability. - [AI Noise Suppression](https://pre.trtc.io/document/66040.md): AI Noise Suppression is a feature within the Tencent RTC Engine that leverages AI algorithms from Tencent Tianlai Laboratory to intelligently detect and eliminate noise interference in transmitted audio signals. Designed for diverse environments such as offices, internet cafes, malls, and outdoor settings, it significantly enhances voice quality and clarity to improve user listening experience. Users can try this feature online through the Tencent RTC Demo, and it is enabled by default when using TRTCAudioQualitySpeech in the RTC Engine, providing high-quality noise suppression without additional configuration. - [Background Music & Audio Mixing](https://pre.trtc.io/document/64699.md): Tencent RTC Engine provides a background music SDK that enables developers to play, pause, resume, and stop background music during live streaming sessions. This guide covers the essential steps to integrate background music playback on Android, iOS, Mac, and Windows platforms, including setting playback parameters, handling playback events, adjusting volume and pitch, and controlling playback speed. - [Custom Messages / SEI Messages](https://pre.trtc.io/document/47866.md): The TRTC SDK is a real-time communication SDK that enables anchors in a video room to send custom messages to other participants. This guide covers the steps to send custom messages on supported platforms including iOS, Android, Web, macOS, Windows, Electron, and Flutter. It explains how to use the sendCustomCmdMsg API with required parameters such as message ID, data content, and reliability options to ensure ordered and reliable message delivery. - [Media Stream Encryption](https://pre.trtc.io/document/61828.md): Tencent Real-Time Communication (TRTC) SDK offers media stream private encryption to secure user data transmission in sensitive industries like finance. This guide explains how developers on iOS, Android, Windows, and macOS can enable private encryption by generating keys and salts on the server, configuring the SDK, and ensuring all users in a room use consistent encryption settings. It covers prerequisites, implementation steps, and example code to integrate this enhanced security feature. - [Hardware Device Testing](https://pre.trtc.io/document/47863.md): Tencent RTC device testing SDK supports Android, iOS, Windows, and Mac platforms to help users verify camera, microphone, and speaker functionality before video calls. This guide provides step-by-step instructions on using APIs to test cameras with preview and switching, measure microphone volume with real-time callbacks, and play test audio for speaker verification. ### Client APIs - [Overview](https://pre.trtc.io/document/35119.md): The TRTCCloud API overview provides a comprehensive reference for real-time audio and video communication SDK functionalities. It includes detailed descriptions of instance creation, event callbacks, room management, CDN streaming, video and audio controls, device management, screen sharing, and other advanced features. This API documentation is designed for developers integrating Tencent RTC capabilities on iOS and macOS platforms to build interactive communication applications. - [TRTCCloud](https://pre.trtc.io/document/50754.md): TRTCCloud is the core API of Tencent Real-Time Communication SDK, designed for developers to implement real-time audio and video communication features across multiple platforms such as iOS and macOS. It offers extensive capabilities including room management, stream publishing, local and remote media control, network quality adjustment, and custom audio/video processing. This reference details the methods available for managing user roles, video previews, audio routing, screen sharing, and more to enable seamless interactive communication experiences. - [TRTCCloudDelegate](https://pre.trtc.io/document/50755.md): TRTCCloudDelegate is an interface within the TRTC Video Call SDK that provides comprehensive event callback APIs for managing video call features. It enables developers on iOS and macOS platforms to handle room entry and exit, user media stream availability, network quality, device status changes, and publishing events. This delegate facilitates real-time monitoring and control of video and audio streams, ensuring seamless interactive communication experiences. - [TRTCStatistics](https://pre.trtc.io/document/50756.md): TRTCStatistics is a read-only API module in the TRTC SDK that provides developers with real-time audio and video metrics such as frame rate, bitrate, lag, and network performance. It supports detailed local and remote statistics reporting to help monitor media quality on platforms including iOS and macOS. This API enables precise tracking of audio/video stream quality and network conditions every two seconds. - [TXAudioEffectManager](https://pre.trtc.io/document/50757.md): TXAudioEffectManager is an API class for managing background music, short audio effects, and voice effects within Tencent RTC. It enables developers to control voice reverb, voice changing, in-ear monitoring, and background music playback with detailed parameters such as volume, pitch, speed, and track selection. This API supports platforms including iOS and macOS, providing comprehensive audio effect management for real-time communication applications. - [TXBeautyManager](https://pre.trtc.io/document/50758.md): TXBeautyManager is a beauty filter and image processing SDK module that provides APIs to adjust beautification effects, color filters, and green screen settings on iOS and macOS platforms. It enables developers to configure skin smoothing styles, filter strengths, facial feature modifications, and animated effects with precise parameter controls to enhance video and image quality in real time. - [TXDeviceManager](https://pre.trtc.io/document/50759.md): TXDeviceManager is an audio/video device management SDK module that provides APIs to control and monitor cameras, microphones, and speakers on desktop and mobile platforms. It supports device switching, zoom control, autofocus, torch mode, audio routing, volume adjustment, mute control, and device testing. This reference details the key methods, callbacks, and data structures for managing media devices effectively. - [Type Definition](https://pre.trtc.io/document/50760.md): The TRTC Type Definitions document provides detailed enumerated types and constant values essential for configuring video resolution, encoding parameters, network quality, audio settings, and transcoding in the TRTC SDK. It is designed for developers working on iOS and macOS platforms to accurately implement and control real-time communication features with precise parameter settings. - [Deprecated Interface](https://pre.trtc.io/document/50761.md): The TRTCCloud Deprecated Interface List provides a comprehensive reference of legacy APIs for the Tencent RTC TRTCCloud SDK. It details deprecated methods related to video beauty effects, camera and microphone controls, audio playback, screen sharing, and event callbacks. This documentation is intended for developers maintaining or migrating applications using older versions of the TRTCCloud SDK on iOS and macOS platforms. - [Error Codes](https://pre.trtc.io/document/54573.md): The TRTC SDK error code reference documents warning and error codes encountered during the use of Tencent RTC's TRTC SDK across platforms such as Windows, macOS, iOS, and Android. It helps developers identify causes of issues like camera or microphone access failures, permission denials, encoding errors, and API call rejections, providing detailed descriptions to facilitate troubleshooting and resolution. ### 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.