본문으로 건너뛰기

오디오 재생

기본 재생​

가져온 사운드 웨이브를 재생하려면 일반 사운드 웨이브와 동일한 함수를 사용하면 됩니다. 예를 들어 Sound Cue와 같은 오디오 컴포넌트에서 PlaySound2D 또는 Play 함수를 사용하세요.

Various examples of playing a sound wave

재생 제어​

재생 시간 되감기​

사운드 웨이브의 재생 시간을 되감으려면 RewindPlaybackTime 함수를 사용하세요.

An example of rewinding playback of a sound wave for 12.5 seconds

노트

UE 4.27 이하 버전에서는 0보다 큰 특정 시간부터 재생을 시작하려면 RewindPlaybackTime 함수를 먼저 사용해야 할 수 있습니다. 그렇지 않으면 엔진 내부에서 절차적 웨이브를 처리하는 문제로 인해 사운드가 올바르게 재생되지 않을 수 있습니다. 이 문제는 엔진 버전 5.0부터 해결되었습니다.

재생 정보 가져오기​

사운드 웨이브의 현재 재생 시간을 얻으려면 GetPlaybackTime 또는 GetPlaybackPercentage 함수를 사용하세요. 또한 GetDuration 함수를 사용하여 사운드 웨이브의 길이를 얻을 수도 있습니다.

Get Playback Time and Get Playback Percentage nodes

재생 상태 확인 중​

현재 재생 중입니까?​

사운드 웨이브가 현재 재생 중인지 확인하려면 IsPlaying 함수를 사용할 수 있습니다.

Is Playing node

재생이 완료되었는지​

사운드 웨이브의 재생이 완료되었는지 확인하려면 IsPlaybackFinished 함수를 사용하면 됩니다.

Is Playback Finished node

재생 중지​

StopPlayback 함수를 사용하여 사운드 웨이브 재생을 중지할 수 있습니다.

Stop Playback node

정보

일반적으로 외부 수단(예: 오디오 컴포넌트에서 Stop을 호출하는 방식)을 사용하여 사운드 웨이브 재생을 중지하는 것이 권장되며, 외부 수단을 사용할 수 없는 경우에 이 함수를 사용하십시오. 또한 이 함수는 MetaSounds에서의 재생에는 작동하지 않는다는 점에 유의하십시오.

이벤트 처리​

재생 완료 추적​

오디오 재생의 끝을 추적하려면 OnAudioPlaybackFinished 델리게이트에 바인딩하세요.

An example of binding to the OnAudioPlaybackFinished delegate

메모리 관리​

메모리 해제​

ReleaseMemory 함수를 사용하여 오디오 데이터를 수동으로 지울 수 있습니다.

Release Memory node

경고

특정 메모리 관리 요구 사항이 있거나 가비지 컬렉터를 비활성화한 경우가 아니라면 수동 메모리 해제는 권장되지 않습니다.

재생된 오디오 데이터 해제​

재생 중 이미 재생된 오디오 버퍼 부분을 자동으로 해제하려면 SetPlayedAudioDataReleaseSettings 함수를 사용하여 해제 설정을 구성하세요.

Set Played Audio Data Release Settings node

  • bReleasePlayedAudioData - 릴리스 활성화 여부입니다. 기본적으로 비활성화됩니다.
  • ReleaseCallbackFrequency - 릴리스 확인 사이의 오디오 생성 요청 수(OnGeneratePCMAudio 호출 횟수)입니다.
  • MinFramesToRelease - 릴리스를 트리거하는 데 필요한 최소 재생 프레임 수입니다.
경고

이를 활성화하면 이미 릴리스된 지점 이전으로 되감기/탐색이 제한됩니다. 해당 오디오 데이터는 물리적으로 해제되어 더 이상 재생할 수 없기 때문입니다.