FMOD 라이브러리를 사용하기 시작했는데, C# 응용 프로그램에서 갭이없는 사운드를 재생해야하기 때문입니다 (루프의 한 사운드와 시퀀스의 많은 사운드). 누구든지 저에게 올바른 방법을 보여줄 수 있습니까? 나는 예제를 기반으로 무언가를 만들려고했지만 작동하지 않기 때문에 효과가 없습니다. 나는 소리가 반복되는 경우, 설정하려고하면 첫째, 그것은FMOD gapless 루프 및 시퀀스 재생
if (value)
sound1.setMode(FMOD.MODE.LOOP_NORMAL);
else
sound1.setMode(FMOD.MODE.LOOP_OFF);
아무것도 진행되지 않으며, 놀고있다. 그것은 재생을 시작하기 전에, 내가 모드를 설정하면 잘 작동합니다.
두 번째 문제는 다음과 같습니다. 어떻게 소리가 끝났다는 알림을받을 수 있습니까? 채널에()하지 않을 때 트랙 끝을 eofCallback가 기준입니다
channel.setCallback(eofCallback);
이
private FMOD.RESULT SoundEndCallback(IntPtr channelraw, FMOD.CHANNEL_CALLBACKTYPE type, IntPtr commanddata1, IntPtr commanddata2)
{
FMOD.RESULT result;
if (type == FMOD.CHANNEL_CALLBACKTYPE.END)
{
//logic here
}
return FMOD.RESULT.OK;
}
을 SoundEndCallback하기 그러나이 콜백 내가 수동으로 정지를 호출 할 경우에만 도달 : 나는이 방법을 시도 .
결국 내가 필요한 것을 쉽게 줄 수있는 다른 라이브러리를 알고 있습니까? FMOD를 선택했는데, 꽤 인기가 있었지만, 나는 oldschool C++과 같은 코딩 방법 (이벤트 나 예외는 아님)을 좋아하지 않는다.