반응형

'Voice Capture'는 마이크와 같은 외부 사운드 입력장치를 통하여 얻은 데이터를 사용할 수 있게 해주는 모듈이다.


'Voice Capture'를 사용하기 위해서는 'Project.Build.cs' 파일에 'OnlineSubsystem', 'OnlineSubsystemUtils', 'Voice' 모듈을 추가해야한다.


// Project.Build.cs


PublicDependencyModuleNames.AddRange(

            new string[] { "Core", "CoreUObject", "Engine", "InputCore", "HeadMountedDisplay", "OnlineSubsystem", "OnlineSubsystemUtils", "Voice" });


그리고 .ini 파일들을 수정해야 한다.


// DefaultEngine.ini


[Voice]

bEnabled=true


[OnlineSubsystem]

bHasvoiceEnabled=true


// DefaultGame.ini


[/Script/Engine.GameSession]

bRequiresPushToTalk=false


.ini 파일까지 수정한 다음에 Voice Capture를 사용할 수 있다.





위 코드는 마이크에 입력된 소리가 그대로 전달되는 코드이다.


다만 'BeginPlay' 함수 안에 있는 38 ~ 64 번째 줄의 코드는 생성자에 존재해야한다.


이유는 모르지만 'Procedural'을 생성하는 과정에서 에러가 뜨기 때문에 나는 'BeginPlay' 함수 내에 사용했다.


'Voice Capture'은 마이크에 입력된 소리만을 잡아주기 때문에 값을 사용하는건 프로그래머의 재량에 달려있는 듯 하다.


'VoiceCaptureTick' 함수의 110번째 줄 까지가 마이크에 입력된 소리를 데이터화 시키는 작업이고, 112 ~ 113 번째 줄을 통해 데이터화 시킨 소리를 사운드로 출력할 수 있게 세팅해준다.


'PlayVoiceCapture' 함수가 마이크에 입력된 소리를 그대로 들려주는 함수이다.

반응형

'게임 개발 끄적 > Unreal (C++)' 카테고리의 다른 글

[UE4] Unreal C++ 한글 출력 에러  (1) 2018.11.07
[UE4] Thread  (0) 2018.06.21
[UE4] Render Capture Scene  (0) 2018.03.19
[UE4] File Copy & Explorer  (0) 2018.03.19
[UE4] Send HTTP  (3) 2018.03.19

+ Recent posts