tencent cloud

Game Multimedia Engine

릴리스 노트
제품 소개
제품 개요
장점 및 특징
제품 기능
응용 시나리오
보안 및 컴플라이언스 인증
사용자 튜토리얼
SDK 다운로드 가이드
제품 기능 데모
기본 기능 데모
시나리오 기반 Demo
콘솔 가이드
사용량 조회
서비스 활성화
시작하기
Quick Integration of SDK
Quick Integration of Sample Project
기본 기능 개발 가이드
인증 키
실시간 음성 채팅 역할 설정
음질 선택
고급 기능 개발 가이드
서버 녹음
레인지 보이스
3D 음향 효과
음향 효과 및 반주
네트워크 오디오 스트림 포워딩 라우팅
사용자 지정 메시지 채널
회사 방화벽 제한을 해결하는 방법
Language Parameter Reference List
GME 채팅방 관리 통합
클라이언트 API
Unity SDK
SDK for Unreal Engine
Cocos2D SDK
SDK for Windows
SDK for iOS
SDK for Android
SDK for macOS
H5 SDK
Electron SDK
SDK for Flutter
SDK Version Upgrade Guide
에러 코드
Toolchain
Server APIs
History
Introduction
API Category
Usage APIs
Recording APIs
Making API Requests
Voice Chat APIs
Application APIs
Data Types
Error Codes
FAQ
제품 기능
문제 해결 가이드
과금
Sample Project 사용 문제
일반 문제
인증
방 입장 실패
사운드 및 오디오
네트워크
음성을 텍스트로 변환
프로그램 내보내기
Service Agreement
Service Level Agreement
문의하기
용어집
GME 정책
데이터 처리 및 보안 계약
개인 정보 보호 정책

음성 변조

PDF
포커스 모드
폰트 크기
마지막 업데이트 시간: 2024-01-18 16:00:04
이 문서는 음성 변조 효과를 위해 GME(Game Multimedia Engine) API와 통합하고 디버깅하는 방법을 설명합니다.

시나리오





전제 조건

음성 채팅 서비스 활성화: 서비스 활성화를 참고하십시오.
음성-텍스트 변환 서비스 활성화: 서비스 활성화를 참고하십시오.
GME SDK 통합: 핵심 API 및 음성 채팅 API를 포함합니다. 자세한 내용은 Quick Integration of Native SDK, Quick Integration of SDK for Unity, Quick Integration of SDK for Unreal Engine을 참고하십시오.
GME SDK의 libgmesoundtouch 라이브러리 파일 통합: 프로젝트의 라이브러리 파일에 libgmesoundtouch가 포함되어 있는지 확인하십시오. 자세한 내용은 Library files' corresponding features를 참고하십시오.

실시간 음성 변조 통합

음성 변조 API

성공적인 방 입장 및 마이크 활성화 후, SetVoiceType API를 호출하여 음성 변조 효과를 설정합니다. API가 0을 반환하면 호출이 성공한 것이고 방에 있는 사용자에게 들리는 로컬 사운드가 음성 변조 효과를 갖습니다. 음성 변조 효과를 테스트하려면 인이어 모니터링 기능(API: EnableLoopBack)을 사용하십시오.

함수 프로토타입

Android
iOS
Unity
C++
public static class ITMG_VoiceType {
public static final int ITMG_VOICE_TYPE_ORIGINAL_SOUND = 0;
public static final int ITMG_VOICE_TYPE_LOLITA = 1;
public static final int ITMG_VOICE_TYPE_UNCLE = 2;
public static final int ITMG_VOICE_TYPE_INTANGIBLE = 3;
public static final int ITMG_VOICE_TYPE_DEAD_FATBOY = 4;
public static final int ITMG_VOICE_TYPE_HEAVY_MENTAL = 5;
public static final int ITMG_VOICE_TYPE_DIALECT = 6;
public static final int ITMG_VOICE_TYPE_INFLUENZA = 7;
public static final int ITMG_VOICE_TYPE_CAGED_ANIMAL = 8;
public static final int ITMG_VOICE_TYPE_HEAVY_MACHINE = 9;
public static final int ITMG_VOICE_TYPE_STRONG_CURRENT = 10;
public static final int ITMG_VOICE_TYPE_KINDER_GARTEN = 11;
public static final int ITMG_VOICE_TYPE_HUANG = 12;
};
public abstract int SetVoiceType(int type);

-(QAVResult)SetVoiceType:(ITMG_VOICE_TYPE) type

public abstract class ITMGAudioEffectCtrl{
public static int VOICE_TYPE_ORIGINAL_SOUND = 0;
public static int VOICE_TYPE_LOLITA = 1;
public static int VOICE_TYPE_UNCLE = 2;
public static int VOICE_TYPE_INTANGIBLE = 3;
public static int VOICE_TYPE_DEAD_FATBOY = 4;
public static int VOICE_TYPE_HEAVY_MENTAL = 5;
public static int VOICE_TYPE_DIALECT = 6;
public static int VOICE_TYPE_INFLUENZA = 7;
public static int VOICE_TYPE_CAGED_ANIMAL = 8;
public static int VOICE_TYPE_HEAVY_MACHINE = 9;
public static int VOICE_TYPE_STRONG_CURRENT = 10;
public static int VOICE_TYPE_KINDER_GARTEN = 11;
public static int VOICE_TYPE_HUANG = 12;
public abstract int SetVoiceType(int voiceType);
}

class ITMGAudioEffectCtrl {
public:
virtual ~ITMGAudioEffectCtrl(){};
virtual int SetVoiceType(ITMG_VOICE_TYPE voiceType) = 0;
}

매개변수
유형
설명
type
int
로컬 음성 변조 효과의 종류를 나타냅니다
유형 매개변수
설명
ITMG_VOICE_TYPE_ORIGINAL_SOUND
0
오리지널
ITMG_VOICE_TYPE_LOLITA
1
로리타
ITMG_VOICE_TYPE_UNCLE
2
삼촌
ITMG_VOICE_TYPE_INTANGIBLE
3
오묘한
ITMG_VOICE_TYPE_DEAD_FATBOY
4
통통이
ITMG_VOICE_TYPE_HEAVY_MENTA
5
헤비메탈
ITMG_VOICE_TYPE_DIALECT
6
외국인
ITMG_VOICE_TYPE_INFLUENZA
7
감기
ITMG_VOICE_TYPE_CAGED_ANIMAL
8
동물
ITMG_VOICE_TYPE_HEAVY_MACHINE
9
기계
ITMG_VOICE_TYPE_STRONG_CURRENT
10
강한 전류
ITMG_VOICE_TYPE_KINDER_GARTEN
11
유치원
ITMG_VOICE_TYPE_HUANG
12
미니언

예시 코드

ITMGContextGetInstance()->GetAudioEffectCtrl()->setVoiceType(0);

음성 메시지에 대한 음성 변조 통합

음성 메시지에 대한 음성 변조 프로세스




음성 변조 효과는 재생 중에만 반영되므로 음성 변조는 원본 음성 메시지에는 영향을 미치지 않습니다.

음성 메시지 재생

음성 메시지 재생 API 호출 시 음성 변조 매개변수를 추가합니다.
Android
iOS
Unity
C++
public abstract int PlayRecordedFile(String filePath,int voicetype);

-(int)PlayRecordedFile:(NSString*)filePath VoiceType:(ITMG_VOICE_TYPE) type

ITMGPTT PlayRecordedFile(string filePath,int voiceType);

public abstract int PlayRecordedFile(string filePath,int voiceType);

매개변수
유형
설명
filePath
string
로컬 오디오 파일 경로
voicetype
int
음성 변조 유형

오류 코드

오류 코드 값
원인
솔루션 제안
20485
재생이 시작되지 않습니다
파일의 존재와 파일 경로의 유효성을 확인하십시오


도움말 및 지원

문제 해결에 도움이 되었나요?

피드백