OfflineContext.suspend
은 OfflineContext.currentTime
의 진행을 멈추지 만 렌더링하는 동안 어떤 효과가 있습니까? (OfflineContext.startRendering
)? 내가하고 싶은 일은 렌더링 프로세스를 시작하고, 일시 중지하고, 다른 작업을 수행하고, 다른 작업이 완료되면 다시 시작하는 것입니다. 렌더링 프로세스가 일시 중지 된 동안 임박한 AudioBuffer
이 커지지 않아야합니다. 즉, AudioBuffer
을 wav 파일로 내보내고 재생할 때 렌더링 프로세스에서 일시 중지 된 부분에 대한 무음이 없어야합니다.오프라인 렌더링을 일시 중지하는 방법은 무엇입니까?
나는 렌더링하는 동안 OfflineContext.suspend
을 시도했으며, 결과로 나오는 wav 파일에 약간의 침묵을 추가하는 것처럼 보일지 모르지만, 아마도 나는 잘못된 것을하고 있습니다.
- 어떻게 렌더링 프로세스를 일시 중지 할 수 있습니까?
OfflineContext.suspend
은 무엇인가요?
그래서 'suspend'는 렌더링을 시작하고, 렌더링을 일시 중지하고, 작업을 수행하고, 오디오에 무음을 추가하지 않고 렌더링을 다시 시작할 수있게합니까? 그렇다면 렌더링을 시작한 후에'suspend'를 호출하기 때문에 아마 오디오에 침묵 할 것입니다. 'startRendering'을 호출 한 후 코드 실행이'suspend'에 도달하는 데 필요한 몇 밀리 초는 1 분간의 침묵을 삽입하기에 충분합니다. – maximedupre
예. 'suspend'와'resume'을 호출해서 당신이해야 할 일을하고 나서'startRendering'을 호출해야합니다. 렌더링하는 동안 컨텍스트는 요청 된 시간에 멈추고 코드를 실행하고 요청 된 경우 다시 시작할 수 있습니다. 주의해야 할 점은 일시 중단 시간이 이전 (?) 128 프레임 경계로 양자화된다는 것입니다. –