Key Concepts

Building the Perfect 1v1 Video Call: TRTC Quick Start Guide

20 min read
Dec 31, 2024

Welcome to the Best Practices Guide for 1v1 Video Calls with Tencent  Real-Time Communication (TRTC)!

This article provides you with a clear and concise roadmap to quickly build the core functionality of 1v1 video calls. Whether you're a newcomer to TRTC or a developer looking to optimize existing applications, this guide will help you easily implement basic features such as real-time audio and video calls, muting, and turning off the camera.

By reading this article, you will:

  • Understand the key steps needed to build a 1v1 video call MVP
  • Obtain detailed technical documentation links for each step, covering various client platforms
  • Master best practices for quickly implementing core functions
  • Avoid common integration pitfalls and improve development efficiency

Let's begin this exciting TRTC journey! By following this guide, you'll soon be able to build professional-grade 1v1 video call applications.

Web

0. General Guide

https://trtc.io/document/39386

This document is a beginner's guide for Tencent Real-Time Communication (TRTC), providing a clear onboarding path for developers who wish to integrate TRTC product features. It covers product introduction, product experience, SDK integration, and other guidance. Reading this document will help developers quickly implement TRTC product functionalities.

1. Introduction to TRTC Basic Concepts 

https://trtc.io/document/37714?&

This document aims to introduce some basic concepts that developers may encounter when using the Real-Time Audio and Video (TRTC) service, such as SDKAppID, room, etc. Reading this document can help developers quickly understand the key concepts of TRTC, laying the foundation for smooth integration and use of video call functionality.

2. Quick Overview of Features

https://trtc.io/demo/homepage/#/detail?scene=callkit

In the Demo Experience Center, you can quickly try and experience various features in the 1v1 video call scenario.

Selection Tips: When you need to quickly launch a product or service without enough time or resources for deep customization, the UI-included solution can help you go live quickly, reduce development workload, rapidly implement required functions, and quickly validate market demand. When you already have a mature product or application and want to seamlessly integrate the call product into your existing system, the UI-free solution can provide a higher degree of freedom and customization, helping you customize according to your company's brand standards and user experience requirements.

  • With UI

https://trtc.io/document/60415?platform=web&product=call

This document will introduce how to quickly implement a 1v1 video call demonstration with a UI interface. Developers will complete several key steps within 10 minutes and ultimately obtain a video call function with a comprehensive user interface.

  • Without UI

https://github.com/Tencent-RTC/TRTC_Web/blob/main/README.md

This document will introduce how to quickly implement a 1v1 video call demonstration without a UI interface. Developers only need to complete a few key steps according to the guide to integrate our video call SDK into your product and implement the video call function.

4. Implementation Guide for Specific Features

With UI Implementation Guide

  • Real-time Audio and Video Calls: 

https://trtc.io/document/58484?platform=web&product=call#step5

This document introduces the steps to implement making a video call using the Call product API in a UI interface.

https://trtc.io/document/50997#

This document introduces how to set the initial state of the camera button in a UI interface, as well as the steps to implement turning the camera on and off.

Without UI Implementation Guide

  • Real-time Audio and Video Calls: 

https://web.sdk.qcloud.com/trtc/webrtc/v5/doc/en/tutorial-12-basic-live-video.html

This document introduces the steps to implement making a video call using the Call product API without a UI interface.

  • Mute/Turn off Camera:

https://web.sdk.qcloud.com/trtc/webrtc/v5/doc/en/tutorial-15-basic-dynamic-add-video.html

This document introduces how to set the initial state of the camera button without a UI interface, as well as the steps to implement turning the camera on and off.

6. Common Questions 

https://trtc.io/document/51024?platform=web&product=call

This document provides developers with solutions and usage guidelines for common issues encountered while running the Demo, covering various problems that may be encountered from configuration to the development process.

7. Console Usage Guide

https://trtc.io/document/39077?product=consoleguide

This document primarily introduces the creation and management process of Tencent RTC (Real-Time Communication) applications. It provides detailed instructions on how to create a new application in the console, including steps such as selecting a product, setting the application name, and choosing the data storage region. The document also describes how to view and manage created applications, including viewing basic application information, SDKAppID, secret key, and other important data. Additionally, it briefly introduces application version types, service status, and some related configuration options. Overall, this is a user-oriented operation guide aimed at helping users effectively use the Tencent RTC console to manage their real-time audio and video projects.

https://trtc.io/document/35166?product=call&platform=web

This document introduces the user authentication mechanism of Tencent RTC service, focusing on explaining the concept and generation method of UserSig. It provides detailed instructions on how to generate UserSig at different stages of development and offers sample code in various programming languages. For developers, this authentication mechanism enhances security, protects resources and privacy, while providing flexibility and multi-language support, helping to control costs and simplify the development process.

9. Client Demo or SDK Usage Guide (Integration)

https://trtc.io/document/58484

This document is a client-side quick integration guide, specifically addressing how developers can integrate the TUICallKit component into their applications to implement video call functionality. Through concise steps and sample code, the document guides developers to complete the integration in a short time, quickly achieving video call functionality with a complete UI interface, providing an intuitive and practical reference for client-side development.

10. Privacy Terms

https://trtc.io/document/48827?product=privacysla

This privacy policy addresses the privacy concerns most important to developers, such as whether user information, usage data, and other data will be stored by TRTC, and how it will be utilized. It helps developers understand how users' personal information will be processed and protected when integrating and using video call functionality.

11. Data Processing and Security Agreement

https://trtc.io/document/48828?product=privacysla

This agreement provides developers with clear data processing and security guidelines, covering the issues of most concern to developers, such as whether user data passing through the TRTC service provider can be guaranteed not to leak during transmission, and how TRTC's own data security capabilities are. The content in this agreement helps ensure the compliance and security of video call functionality.

iOS

0. General Guide

https://trtc.io/document/39386

This document serves as a beginner's guide for Tencent Real-Time Communication (TRTC), providing a clear onboarding path for developers who wish to integrate TRTC product features. It covers product introduction, product experience, SDK integration, and other guidance. Reading this document will help developers quickly implement TRTC product functionalities.

1. Introduction to TRTC Basic Concepts 

https://trtc.io/document/37714?&

This document aims to introduce some basic concepts that developers may encounter when using the Real-Time Audio and Video (TRTC) service, such as SDKAppID, room, etc. Reading this document can help developers quickly understand the key concepts of TRTC, laying the foundation for smooth integration and use of video call functionality.

2. Quick Overview of Features

https://trtc.io/demo/homepage/#/detail?scene=callkit

In the Demo Experience Center, you can quickly try and experience various features in the 1v1 video call scenario.

Selection Tips: When you need to quickly launch a product or service without enough time or resources for deep customization, the UI-included solution can help you go live quickly, reduce development workload, rapidly implement required functions, and quickly validate market demand. When you already have a mature product or application and want to seamlessly integrate the call product into your existing system, the UI-free solution can provide a higher degree of freedom and customization, helping you customize according to your company's brand standards and user experience requirements.

  • With UI:

https://trtc.io/document/60416?platform=ios&product=call

This document will introduce how to quickly implement a 1v1 video call demonstration with a UI interface. Developers will complete several key steps within 10 minutes and ultimately obtain a video call function with a comprehensive user interface.

  • Without UI: 

https://trtc.io/document/51012?platform=ios&product=call

This document will introduce how to quickly implement a 1v1 video call demonstration without a UI interface. Developers only need to complete a few key steps according to the guide to integrate our video call SDK into your product and implement the video call function.

4. Offline Message Push

Selection Tips: VoIP (Voice over Internet Protocol) push is designed for instant messaging applications, supporting waking up the application for voice or video calls when the application is closed. APN (Apple Push Notification Service) is Apple's push service for sending text, sound, or image notifications, but cannot directly wake up the application for calls. In short: VoIP push is more suitable for communication applications that require immediate response, while APN push is suitable for general notification needs.

VOIP Notifications

https://trtc.io/document/54923?product=call&platform=ios

This document primarily introduces how to implement VoIP push functionality in iOS applications. It first explains that VoIP Push is a notification mechanism provided by Apple for responding to VoIP calls, which needs to be used in conjunction with the PushKit and CallKit frameworks. It then details the four main steps to implement VoIP Push: applying for a VoIP Push certificate, uploading the certificate to the Chat console, completing project configuration, and integrating the TUICallKitVoIPExtension component. The document also provides sample code for making VoIP calls and making calls through system call records. Finally, it lists some common issues and solutions, such as troubleshooting steps for not being able to obtain VoIP Push.

APN Notifications

https://trtc.io/document/51000?platform=ios&product=call

This document explains how to implement offline push functionality in iOS applications, primarily using the TIMPush plugin. It details the steps for configuring offline push, including integrating the TIMPush component, enabling remote push for the app, generating and uploading push certificates, completing project configuration, setting push parameters, and how to make offline push calls. The document also provides relevant code examples and concludes with a list of common issues and their solutions, such as how to handle not receiving pushes or device token registration failures in the development environment.

5. Implementation Guide for Specific Features

With UI Implementation Guide

  • Real-time Audio and Video Calls: 

https://trtc.io/document/60416?platform=ios&product=call#aa9a7377-586a-44ca-a039-a90c9639b39c

This document introduces the steps to implement making a video call using the Call product API in a UI interface.

  • Mute/Turn off Camera: 

https://trtc.io/document/50996?platform=ios&product=call

This document introduces how to set the initial state of the camera button in a UI interface, as well as the steps to implement turning the camera on and off.

Without UI Implementation Guide

  • Real-time Audio and Video Calls: 

https://trtc.io/document/51012?platform=ios&product=call#call

This document introduces the steps to implement making a video call using the Call product API without a UI interface.

  • Mute/Turn off Camera: 

https://trtc.io/document/51012?product=call&platform=ios#opencamera#opencamera

This document introduces how to set the initial state of the camera button without a UI interface, as well as the steps to implement turning the camera on and off.

6. Common Questions 

https://trtc.io/document/53565?platform=web&product=call

This document provides developers with solutions and usage guidelines for common issues encountered while running the Demo, covering various problems that may be encountered from configuration to the development process.

7. Console Usage Guide

https://trtc.io/document/39077?product=consoleguide

This document primarily introduces the creation and management process of Tencent RTC (Real-Time Communication) applications. It provides detailed instructions on how to create a new application in the console, including steps such as selecting a product, setting the application name, and choosing the data storage region. The document also describes how to view and manage created applications, including viewing basic application information, SDKAppID, secret key, and other important data. Additionally, it briefly introduces application version types, service status, and some related configuration options. Overall, this is a user-oriented operation guide aimed at helping users effectively use the Tencent RTC console to manage their real-time audio and video projects.

https://trtc.io/document/35166?product=call&platform=web

This document introduces the user authentication mechanism of Tencent RTC service, focusing on explaining the concept and generation method of UserSig. It provides detailed instructions on how to generate UserSig at different stages of development and offers sample code in various programming languages. For developers, this authentication mechanism enhances security, protects resources and privacy, while providing flexibility and multi-language support, helping to control costs and simplify the development process.

9. Client Demo or SDK Usage Guide (Integration)

https://trtc.io/document/50992?platform=ios&product=call

This document is a client-side quick integration guide, specifically addressing how developers can integrate the TUICallKit component into their applications to implement video call functionality. Through concise steps and sample code, the document guides developers to complete the integration in a short time, quickly achieving video call functionality with a complete UI interface, providing an intuitive and practical reference for client-side development.

10. Privacy Terms

https://trtc.io/document/48827?product=privacysla

This privacy policy addresses the privacy concerns most important to developers, such as whether user information, usage data, and other data will be stored by TRTC, and how it will be utilized. It helps developers understand how users' personal information will be processed and protected when integrating and using video call functionality.

11. Data Processing and Security Agreement

https://trtc.io/document/48828?product=privacysla

This agreement provides developers with clear data processing and security guidelines, covering the issues of most concern to developers, such as whether user data passing through the TRTC service provider can be guaranteed not to leak during transmission, and how TRTC's own data security capabilities are. The content in this agreement helps ensure the compliance and security of video call functionality.

Android

0. General Guide

https://trtc.io/document/39386

This document is a beginner's guide for Tencent Real-Time Communication (TRTC), providing a clear onboarding path for developers who wish to integrate TRTC product features. It covers product introduction, product experience, SDK integration, and other guidance. Reading this document will help developers quickly implement TRTC product functionalities.

1. Introduction to TRTC Basic Concepts

https://trtc.io/document/37714?&

This document aims to introduce some basic concepts that developers may encounter when using the Real-Time Audio and Video (TRTC) service, such as SDKAppID, room, etc. Reading this document can help developers quickly understand the key concepts of TRTC, laying the foundation for smooth integration and use of video call functionality.

2. Quick Overview of Features

https://trtc.io/demo/homepage/#/detail?scene=callkit

In the Demo Experience Center, you can quickly try and experience various features in the 1v1 video call scenario.

Selection Tips: When you need to quickly launch a product or service without enough time or resources for deep customization, the UI-included solution can help you go live quickly, reduce development workload, rapidly implement required functions, and quickly validate market demand. When you already have a mature product or application and want to seamlessly integrate the call product into your existing system, the UI-free solution can provide a higher degree of freedom and customization, helping you customize according to your company's brand standards and user experience requirements.

  • With UI: 

https://trtc.io/document/60417?platform=android&product=call

This document will introduce how to quickly implement a 1v1 video call demonstration with a UI interface. Developers will complete several key steps within 10 minutes and ultimately obtain a video call function with a comprehensive user interface.

  • Without UI: 

https://trtc.io/document/51006?platform=android&product=call

This document will introduce how to quickly implement a 1v1 video call demonstration without a UI interface. Developers only need to complete a few key steps according to the guide to integrate our video call SDK into your product and implement the video call function.

4. VOIP Notifications

https://trtc.io/document/50999?product=call&platform=android

This document explains how to implement offline call push functionality in Android applications using the TIMPush plugin. It details the integration steps, including downloading and adding configuration files, integrating the TIMPush plugin, completing project configuration, implementing automatic login, and more. The document also provides methods for customizing ringtones and lists some common issues and their solutions, such as how to handle the inability to pop up the incoming call UI when the application is killed. Additionally, the document emphasizes the importance of enabling certain permissions (such as notifications, floating windows, and background UI activation) for achieving a good call experience.

5. Implementation Guide for Specific Features

With UI Implementation Guide

  • Real-time Audio and Video Calls: 

https://trtc.io/document/60417?platform=android&product=call#aa9a7377-586a-44ca-a039-a90c9639b39c

This document introduces the steps to implement making a video call using the Call product API in a UI interface.

  • Mute/Turn off Camera: 

https://trtc.io/document/50995?product=call&platform=android#TUICallEngine

This document introduces how to set the initial state of the camera button in a UI interface, as well as the steps to implement turning the camera on and off.

Without UI Implementation Guide

  • Real-time Audio and Video Calls: 

https://trtc.io/document/51006?product=call&platform=android#opencamera#call

This document introduces the steps to implement making a video call using the Call product API without a UI interface.

  • Mute/Turn off Camera:

https://trtc.io/document/51006?product=call&platform=android#opencamera

This document introduces how to set the initial state of the camera button without a UI interface, as well as the steps to implement turning the camera on and off.

6. Common Questions

https://trtc.io/document/53565?platform=web&product=call

This document provides developers with solutions and usage guidelines for common issues encountered while running the Demo, covering various problems that may be encountered from configuration to the development process.

7. Console Usage Guide

https://trtc.io/document/39077?product=consoleguide

This document primarily introduces the creation and management process of Tencent RTC (Real-Time Communication) applications. It provides detailed instructions on how to create a new application in the console, including steps such as selecting a product, setting the application name, and choosing the data storage region. The document also describes how to view and manage created applications, including viewing basic application information, SDKAppID, secret key, and other important data. Additionally, it briefly introduces application version types, service status, and some related configuration options. Overall, this is a user-oriented operation guide aimed at helping users effectively use the Tencent RTC console to manage their real-time audio and video projects.

https://trtc.io/document/35166?product=call&platform=web

This document introduces the user authentication mechanism of Tencent RTC service, focusing on explaining the concept and generation method of UserSig. It provides detailed instructions on how to generate UserSig at different stages of development and offers sample code in various programming languages. For developers, this authentication mechanism enhances security, protects resources and privacy, while providing flexibility and multi-language support, helping to control costs and simplify the development process.

9. Client Demo or SDK Usage Guide (Integration)

https://trtc.io/document/58484

This document is a client-side quick integration guide, specifically addressing how developers can integrate the TUICallKit component into their applications to implement video call functionality. Through concise steps and sample code, the document guides developers to complete the integration in a short time, quickly achieving video call functionality with a complete UI interface, providing an intuitive and practical reference for client-side development.

10. Privacy Terms

https://trtc.io/document/48827?product=privacysla

This privacy policy addresses the privacy concerns most important to developers, such as whether user information, usage data, and other data will be stored by TRTC, and how it will be utilized. It helps developers understand how users' personal information will be processed and protected when integrating and using video call functionality.

11. Data Processing and Security Agreement

https://trtc.io/document/48828?product=privacysla

This agreement provides developers with clear data processing and security guidelines, covering the issues of most concern to developers, such as whether user data passing through the TRTC service provider can be guaranteed not to leak during transmission, and how TRTC's own data security capabilities are. The content in this agreement helps ensure the compliance and security of video call functionality.

Flutter

0. General Guide

https://trtc.io/document/39386

This document is a beginner's guide for Tencent Real-Time Communication (TRTC), providing a clear onboarding path for developers who wish to integrate TRTC product features. It covers product introduction, product experience, SDK integration, and other guidance. Reading this document will help developers quickly implement TRTC product functionalities.

1. Introduction to TRTC Basic Concepts 

https://trtc.io/document/37714?&

This document aims to introduce some basic concepts that developers may encounter when using the Real-Time Audio and Video (TRTC) service, such as SDKAppID, room, etc. Reading this document can help developers quickly understand the key concepts of TRTC, laying the foundation for smooth integration and use of video call functionality.

2. Quick Overview of Features

https://trtc.io/demo/homepage/#/detail?scene=callkit

In the Demo Experience Center, you can quickly try and experience various features in the 1v1 video call scenario.

Selection Tips: When you need to quickly launch a product or service without enough time or resources for deep customization, the UI-included solution can help you go live quickly, reduce development workload, rapidly implement required functions, and quickly validate market demand. When you already have a mature product or application and want to seamlessly integrate the call product into your existing system, the UI-free solution can provide a higher degree of freedom and customization, helping you customize according to your company's brand standards and user experience requirements.

  • With UI: 

https://trtc.io/document/60414?platform=flutter&product=call

This document will introduce how to quickly implement a 1v1 video call demonstration with a UI interface. Developers will complete several key steps within 10 minutes and ultimately obtain a video call function with a comprehensive user interface.

  • Without UI:

https://trtc.io/document/54907?platform=flutter&product=call

This document will introduce how to quickly implement a 1v1 video call demonstration without a UI interface. Developers only need to complete a few key steps according to the guide to integrate our video call SDK into your product and implement the video call function.

4. VOIP Notifications

https://trtc.io/document/60458?platform=flutter&product=call

This document primarily introduces how to implement VoIP call functionality on Android and iOS platforms. For iOS, since TIMPush doesn't support VoIP push, the document provides an alternative solution. For Android, the document details how to use the TIMPush plugin to implement VoIP notifications, including integration steps, adding configuration files, project configuration, registering the push plugin, implementing automatic login, and more. The document also provides code examples for making offline push calls and lists some common issues and solutions, such as how to handle the inability to display the incoming call UI when the application is terminated.

5. Implementation Guide for Specific Features

With UI Implementation Guide

  • Real-time Audio and Video Calls: 

https://trtc.io/document/60414?platform=flutter&product=call#aa9a7377-586a-44ca-a039-a90c9639b39c

This document introduces the steps to implement making a video call using the Call product API in a UI interface.

  • Mute/Turn off Camera: 

https://trtc.io/document/54906#enableMuteMode%23enableMuteMode#enableMuteMode

This document introduces how to set the initial state of the camera button in a UI interface, as well as the steps to implement turning the camera on and off.

Without UI Implementation Guide

  • Real-time Audio and Video Calls: 

https://trtc.io/document/54907?platform=flutter&product=call

This document introduces the steps to implement making a video call using the Call product API without a UI interface.

  • Mute/Turn off Camera: 

https://trtc.io/document/54907?platform=flutter&product=call#opencamera

This document introduces how to set the initial state of the camera button without a UI interface, as well as the steps to implement turning the camera on and off.

6. Common Questions 

https://trtc.io/document/56860?platform=flutter&product=call

This document provides developers with solutions and usage guidelines for common issues encountered while running the Demo, covering various problems that may be encountered from configuration to the development process.

7. Console Usage Guide

https://trtc.io/document/39077?product=consoleguide

This document primarily introduces the creation and management process of Tencent RTC (Real-Time Communication) applications. It provides detailed instructions on how to create a new application in the console, including steps such as selecting a product, setting the application name, and choosing the data storage region. The document also describes how to view and manage created applications, including viewing basic application information, SDKAppID, secret key, and other important data. Additionally, it briefly introduces application version types, service status, and some related configuration options. Overall, this is a user-oriented operation guide aimed at helping users effectively use the Tencent RTC console to manage their real-time audio and video projects.

https://trtc.io/document/35166?product=call&platform=web

This document introduces the user authentication mechanism of Tencent RTC service, focusing on explaining the concept and generation method of UserSig. It provides detailed instructions on how to generate UserSig at different stages of development and offers sample code in various programming languages. For developers, this authentication mechanism enhances security, protects resources and privacy, while providing flexibility and multi-language support, helping to control costs and simplify the development process.

9. Client Demo or SDK Usage Guide (Integration)

https://trtc.io/document/54896

This document is a client-side quick integration guide, specifically addressing how developers can integrate the TUICallKit component into their applications to implement video call functionality. Through concise steps and sample code, the document guides developers to complete the integration in a short time, quickly achieving video call functionality with a complete UI interface, providing an intuitive and practical reference for client-side development.

10. Privacy Terms

https://trtc.io/document/48827?product=privacysla

This privacy policy addresses the privacy concerns most important to developers, such as whether user information, usage data, and other data will be stored by TRTC, and how it will be utilized. It helps developers understand how users' personal information will be processed and protected when integrating and using video call functionality.

11. Data Processing and Security Agreement

https://trtc.io/document/48828?product=privacysla

This agreement provides developers with clear data processing and security guidelines, covering the issues of most concern to developers, such as whether user data passing through the TRTC service provider can be guaranteed not to leak during transmission, and how TRTC's own data security capabilities are. The content in this agreement helps ensure the compliance and security of video call functionality.

Purchase Guide Section

1. Prepaid Package Guide

Currently, TRTC's billing adopts a prepaid package + postpaid model, which can bring you flexible cost management and budget control, ensuring that you can effectively estimate and control expenses when using the service. For details, please see the Billing Overview document

2. Prepaid Packages

TRTC's prepaid packages are divided into Starter and Official packages.

The Starter package helps users launch projects at an extremely low cost. The Call Start plan package costs only $39.9/month, enjoying a 93% discount. Its features are comparable to the standard version and can meet the functional requirements of most scenarios. To purchase, please visit the Starter Package Purchase Guide

The Official package is suitable for customers who are already familiar with our products and wish to continue using them. It includes various plans and usually contains higher resource quotas and priority support to meet users' long-term needs and more complex project requirements. To purchase, please visit the Official Package Purchase Guide

For specific rules, please see the billing documents:

 Starter Package

 Official Package

3. Postpaid Guide

TRTC defaults to prepaid package billing. When service usage cannot be deducted from a package or exceeds the prepaid package balance, billing will be based on your actual business usage according to the postpaid model. TRTC's postpaid model includes billing items such as audio and video duration, cloud recording and recording delivery, stream mixing and transcoding, and stream pushing. For detailed billing rules, please see the latter part of the Billing Overview document

If you have any questions or need assistance online, our support team is always ready to help. Please feel free to Contact us or join us on Telegram or Discord.

Want to build a similar app or platform? Get your free 10,000 minutes now

Get Started for Free