RTC Engine
  • 개요
  • Web
    • Demo 실행
    • SDK 빠른 실행
    • 기본 기능
      • 화면 공유
      • 라이브 방송
      • 미디어 장치
      • 볼륨
      • 인코딩 구성 파일 설정
      • 네트워크 품질 검사
      • 검출 능력
    • 고급 기능
      • AI 노이즈 캔슬링 활성화
      • 오디오 믹싱 활성화
      • 워터마크 활성화
      • Enable Virtual Background
      • 뷰티 및 특수효과 활성화
      • 데이터 메시지
      • 사용자 정의 수집 및 렌더링
    • 인터페이스 목록
    • 배포 설명
    • 플랫폼 지원
    • Web 관련 자주 받는 질문
      • 다중 사용자 비디오 통화 최적화
      • 자동 재생 제한 처리
      • 방화벽 제한 대응
      • 기타
  • Android
    • Run Sample Code
    • Integration
    • 통합
      • 7. 네트워크 품질 검사
      • 8. 화면 공유 활성화
      • 9. 비디오 품질 설정
      • 10. 비디오 회전
    • Advanced Features
      • 네트워크 품질 테스트
      • 사용자 정의 수집 및 렌더링
      • 사용자 정의 오디오 수집 및 재생
    • 고객 인터페이스
      • 개요
      • TRTCCloud
      • TRTCStatistics
      • TRTCCloudListener
      • TXAudioEffectManager
      • TXBeautyManager
      • TXDeviceManager
      • 유형 정의
      • 인터페이스 폐기
      • 에러코드
    • 솔루션
      • 실시간 합창 (TUIKaraoke)
        • 빠른 통합
        • 실시 절차
        • 노래 동기화
        • 가사 동기화
        • 음성 동기화
        • 혼합 스트림 솔루션
        • TRTCKaraoke 관련 인터페이스
        • 자주 받는 질문들
    • 배포 설명
  • iOS
    • Run Sample Code
    • Integration
    • 통합
      • 7. 네트워크 품질 검사
      • 8. 화면 공유 활성화
      • 9. 비디오 품질 설정
      • 10. 비디오 회전
    • Advanced Features
      • 네트워크 품질 테스트
      • 사용자 정의 수집 및 렌더링
      • 사용자 정의 오디오 수집 및 재생
    • 고객 인터페이스
      • 개요
      • TRTCCloud
      • TRTCCloudDelegate
      • TRTCStatistics
      • TXAudioEffectManager
      • TXBeautyManager
      • TXDeviceManager
      • 유형 정의
      • 인터페이스 폐기
      • ErrorCode
    • 솔루션
      • 빠른 통합
      • 실시 절차
      • 노래 동기화
      • 가사 동기화
      • 음성 동기화
      • 혼합 스트림 솔루션
      • TRTCKaraoke 관련 인터페이스
      • 자주 받는 질문들
    • 배포 설명
  • macOS
    • Run Sample Code
    • Integration
    • 통합
      • 7. 네트워크 품질 검사
      • 8. 화면 공유 활성화
      • 9. 컴퓨터 소리 공유
      • 10. 비디오 품질 설정
      • 11. 비디오 회전
    • Advanced Features
      • 하드웨어 장치 테스트
      • 네트워크 품질 테스트
      • 사용자 정의 수집 및 렌더링
      • 사용자 정의 오디오 수집 및 재생
    • 고객 인터페이스
      • 개요
      • TRTCCloud
      • TRTCCloudDelegate
      • TRTCStatistics
      • TXAudioEffectManager
      • TXBeautyManager
      • TXDeviceManager
      • 유형 정의
      • 인터페이스 폐기
      • ErrorCode
      • 배포 설명
    • 배포 설명
  • Windows
    • Run Sample Code
    • Integration
    • 통합
      • 7. 네트워크 품질 검사
      • 8. 화면 공유 활성화
      • 9. 비디오 품질 설정
      • 10. 비디오 회전
    • Advanced Features
      • 하드웨어 장치 테스트
      • 네트워크 품질 테스트
      • 사용자 정의 수집 및 렌더링
      • 사용자 정의 오디오 수집 및 재생
    • 고객 인터페이스
      • 개요
      • ITRTCCloud
      • ITRTCStatistics
      • TRTCCloudCallback
      • ITXAudioEffectManager
      • ITXDeviceManager
      • 유형 정의
      • 인터페이스 폐기
      • 에러코드
    • 배포 설명
  • Electron
    • 통합
      • 1. 인터페이스 예시
      • 2. SDK 가져오기
      • 3. 룸 들어가기
      • 4. 오디오/비디오 스트림 구독
      • 5. 오디오/비디오 스트림 배포
      • 6. 룸 퇴출
      • 7. 네트워크 품질 검사
      • 8. 화면 공유 활성화
      • 9. 컴퓨터 소리 공유
      • 10. 비디오 품질 설정
      • 11. 비디오 회전
    • 고객 인터페이스
      • 개요
      • 에러코드
  • Flutter
    • 통합
      • 1. 인터페이스 예시
      • 2. SDK 가져오기
      • 3. 룸 들어가기
      • 4. 오디오/비디오 스트림 구독
      • 5. 오디오/비디오 스트림 배포
      • 6. 룸 퇴출
      • 7. 네트워크 품질 검사
      • 8. 화면 공유 활성화
      • 9. 컴퓨터 소리 공유
      • 10. 비디오 품질 설정
      • 11. 비디오 회전
    • 고객 인터페이스
      • 개요
      • 에러코드
  • Unity
    • 통합
      • 1. 인터페이스 예시
      • 2. SDK 가져오기
    • 고객 인터페이스
      • 개요
      • 에러코드
  • QT
    • 통합
      • 1. SDK 가져오기
  • 개요
    • 개요
  • 개념
  • Features
  • 성능 통계
  • 가격
    • 무료시간
    • RTC-Engine 패키지
    • 구독 패키지 기간 과금 설명
    • 종량제
      • 오디오 및 비디오 시간 과금 설명
      • 클라우드 녹화 과금 설명
      • 믹스 트랜스코딩 및 CDN 중계 과금 설명
  • 자주 받는 질문들
    • 자주 받는 질문들
    • 마이그레이션 가이드
      • Twilio Video에서 TRTC로의 마이그레이션
      • 과금
      • Features
      • UserSig
      • 방화벽 제한
      • 설치 패키지 축소 방법
      • TRTCCalling Web 관련
      • 오디오/비디오 품질
      • 기타
RTC Engine

1. SDK 가져오기

본 문서에서는 Tencent Cloud TRTC SDK(QT의 Windows 및 Mac 버전)를 프로젝트에 빠르게 통합할 수 있는 방법에 대해 소개합니다. 다음 절차에 따라 설정하면 SDK 통합 작업을 신속하게 완료할 수 있습니다.




Windows 통합

개발 환경 요건

운영 체제: Windows 7 이상 버전
개발 환경: Visual Studio 2015 이상 버전, Visual Studio 2015 사용 권장. VS 관련 QT 개발 환경 설정이 완료되어 있어야 합니다.
설명
VS 관련 QT 개발 환경 설정에 익숙하지 않은 경우, README의 운영 단계 중 4단계를 참고하십시오.

작업 단계

본 섹션에서는 간단한 QT 프로젝트를 생성하는 예시를 통해 Visual Studio에 C++ SDK를 통합하는 방법을 소개합니다.

1단계: SDK 다운로드

1. SDK 다운로드 후, 압축을 풀고 엽니다. 본 문서의 예시에서는 SDK 디렉터리에 있는 C++ 버전의 SDK 파일만 참조하면 됩니다. 64비트를 예로 들면 SDK 위치는 ./SDK/CPlusPlus/Win64/이며 주로 다음 부분을 포함합니다.
디렉터리 이름
설명
include
자세한 인터페이스 주석이 있는 API 헤더 파일
lib
컴파일용 .lib 파일 및 실행 시 로딩하는 .dll 파일

2단계: 프로젝트 생성

Visual Studio 2015를 예로 들어 QT 및 VS 개발 플러그 인이 로컬에 설치되었다는 전제 하에 Visual Studio를 엽니다. 아래와 같이 'TRTCDemo'라는 새 QT 응용 프로그램을 만듭니다.

신속하게 통합하는 방법을 쉽게 소개하기 위해, 마법사에서 Qt Widgets Application 유형을 선택하고 확인을 클릭한 후 프로젝트가 생성될 때까지 다음 페이지에서 Next를 클릭합니다.

3단계: 파일 복사

다음 이미지와 같이 압축 해제한 SDK 폴더를 TRTCDemo.vcxproj가 있는 디렉터리에 복사합니다.
설명
현재는 C++ SDK만 필요하며 SDK 경로 아래의 CSharp 디렉터리는 삭제할 수 있습니다.




4단계: 프로젝트 구성 수정

TRTCDemo 속성 페이지를 열어 솔루션 리소스 관리자 > TRTCDemo 프로젝트 오른쪽 메뉴 > 속성을 선택하고 다음 순서에 따라 설정합니다.
1. 포함 디렉터리 추가:C/C++ > 일반 > 인클루젼 디렉터리 추가에 64비트를 예로 들어 SDK 헤더 파일 디렉터리 $(ProjectDir)SDK\CPlusPlus\Win64\include$(ProjectDir)SDK\CPlusPlus\Win64\include\TRTC를 추가합니다 아래와 같습니다:
설명
32비트인 경우 SDK 헤더 파일 디렉터리를 $(ProjectDir)SDK\CPlusPlus\Win32\include$(ProjectDir)SDK\CPlusPlus\Win32\include\TRTC로 설정해야 합니다.


2. 라이브러리 디렉터리 추가:링커 > 일반 > 라이브러리 디렉터리 추가에서 다음 이미지와 같이 64비트를 예로 들어 SDK 라이브러리 디렉터리 $(ProjectDir)SDK\CPlusPlus\Win64\lib를 추가합니다.
설명
32비트인 경우 SDK 라이브러리 디렉터리를 $(ProjectDir)SDK\CPlusPlus\Win32\lib 으로 설정해야 합니다.


3. 라이브러리 파일 추가:링커 > 입력 > 종속 항목 추가에서 아래와 같이 SDK 라이브러리 파일 liteav.lib를 추가합니다.

4. copy 명령어 추가:이벤트 생성 > 사후 이벤트 생성 > 명령 라인에 명령어 copy /Y $(ProjectDir)SDK\CPlusPlus\Win64\lib\*.dll $(OutDir)를 복사 및 추가하면 컴파일 완료 후 자동으로 SDK의 .dll 파일이 프로그램 실행 디렉터리에 복사됩니다. 다음 이미지와 같습니다.
설명
32비트인 경우 복사 명령을 copy /Y $(ProjectDir)SDK\CPlusPlus\Win32\lib\*.dll $(OutDir) 로 추가합니다.




5단계: SDK 버전 번호 출력

1. TRTCDemo.cpp 파일 상단에 헤더 파일 가져오기를 추가합니다. 코드는 다음과 같습니다.
#include "ITRTCCloud.h"
#include <QLabel>
2. TRTCDemo.cpp 파일의 TRTCDemo::TRTCDemo 구조 함수에서 다음 테스트 코드를 추가합니다.
ITRTCCloud * pTRTCCloud = getTRTCShareInstance();
std::string version(pTRTCCloud->getSDKVersion());

QString sdk_version = QString("SDK Version: %1").arg(version.c_str());
QLabel* label_text = new QLabel(this);
label_text->setAlignment(Qt::AlignCenter);
label_text->resize(this->width(), this->height());
label_text->setText(sdk_version);
3. F5를 눌러 실행하면 다음 이미지와 같이 SDK 버전이 출력됩니다.



Mac 통합

개발 환경 요건

운영 체제: Mac10.10 이상 버전
개발 환경: Qt Creator 4.10.3 이상 버전, Qt Creator 4.13.3 이상 사용 권장
개발 프레임워크: Based on Qt 5.10 이상

작업 단계

이 섹션에서는 QTTest 프로젝트 생성을 예시로 TRTC C++ SDK를 Qt Creator의 프로젝트에 통합하는 방법을 소개합니다.

1. C++용 크로스 플랫폼 SDK 다운로드
1.1 SDK를 다운로드한 후 파일의 압축을 풀고 엽니다.
1.2 QtTest 프로젝트 디렉터리에 SDK용 빈 폴더를 생성하고 SDK의 TXLiteAVSDKTRTCMacx.x.x/SDK/TXLiteAVSDKTRTC_Mac.framework를 해당 폴더에 복사합니다.
2. QTTest.pro 구성 QTTest 프로젝트의 디렉터리로 이동하여 텍스트 편집기로 QTTest.pro를 열고 다음 SDK 참조를 추가하십시오.
INCLUDEPATH += $$PWD/.
DEPENDPATH += $$PWD/.

LIBS += "-F$$PWD/base/util/mac/usersig"
LIBS += "-F$$PWD/../SDK"
LIBS += -framework TXLiteAVSDK_TRTC_Mac
LIBS += -framework Accelerate
LIBS += -framework AudioUnit

INCLUDEPATH += $$PWD/../SDK/TXLiteAVSDK_TRTC_Mac.framework/Headers/cpp_interface

INCLUDEPATH += $$PWD/base/util/mac/usersig/include
DEPENDPATH += $$PWD/base/util/mac/usersig/include
3. 카메라 및 마이크 권한 요청 TRTC SDK에서 카메라와 마이크를 사용하려면 Info.plist에 권한 요청을 추가해야 합니다. 권한 신청 설명은 다음과 같습니다.
NSMicrophoneUsageDescription: 마이크 사용 권한 신청
NSCameraUsageDescription: 카메라 사용 권한 신청
다음 이미지 참고:


4. TRTC SDK 참조
헤더 파일 #include "ITRTCCloud.h"를 사용하여 SDK를 참조하십시오.
네임스페이스 사용: 크로스 플랫폼 C++ API의 메소드 및 유형은 trtc 네임스페이스에 정의됩니다. 코드를 단순화하려면 trtc 네임스페이스를 사용하는 것이 좋습니다.
설명
이것으로 통합 프로세스가 완료되고 프로젝트 컴파일을 진행할 수 있습니다. QTDemo를 다운로드하여 SDK의 크로스 플랫폼 API 사용에 대해 참고하십시오.

FAQ

다음 오류가 발생하는 경우 상기 프로그램 설정에 따라 SDK 헤더 파일의 디렉터리를 정확하게 추가했는지 확인합니다.
fatal error C1083: 포함된 파일을 열 수 없습니다. “TRTCCloud.h”: No such file or directory
다음 오류가 발생하는 경우 상기 프로그램 설정에 따라 SDK 라이브러리 디렉터리 및 라이브러리 파일을 정확하게 추가했는지 확인합니다.
error LNK2019: 리졸브할 수 없는 외부 부호 "__declspec(dllimport) public: static class TXString __cdecl TRTCCloud::getSDKVersion(void)" (__imp_?getSDKVersion@TRTCCloud@@SA?AVTXString@@XZ), 해당 부호는 "protected: virtual int __thiscall CTRTCDemoDlg::OnInitDialog(void)" (?OnInitDialog@CTRTCDemoDlg@@MAEHXZ) 함수에 참조됩니다.