2016-09-13 8 views
0

JUCE를 사용하는 VST 플러그인 빌드에서 VST 호스트의 재생 위치/템포를 제어하는 ​​방법을 찾으려고합니다.JUCE 오디오 VST 플러그인에서 제어 호스트 재생

이것이 가능한지 확실하지 않습니다.

나는 AudioProcessorsetPlayHead 함수를 발견했으며 이것이 내가 찾고있는 것이라고 생각합니다.

https://www.juce.com/doc/classAudioProcessor#a9015f8476c07b173e3c9919b3036339d

그러나

setPlayHead의 문서에 나는이 글을 읽고 오전 : 이것이 뜻하는 경우

Tells the processor to use this playhead object. 

그래서 아무도 말해 줄 수 있다는 AudioProcessor에 설정되어 새로운 AudioPlayHead 것 호스트 재생 (zb Cubase)에 사용되거나 내 VST 플러그인의 AudioProcessor만이 AudioPlayHead를 사용하고 호스트의 AudioPlayHead가 영향을받지 않음을 의미합니까?

도움/입력하십시오.

답변

1

이러한 방식으로 VST 플러그인으로 시퀀서를 제어 할 수 없습니다. VST API는 이와 같은 것을 허용하지 않습니다. 발견 한 방법은 실제로 Juce API의 일부로, 시퀀서가 재생 헤드 구조 ~에 플러그인을 전달할 수 있습니다.

공정하게 말해서, 플러그인이 이것을 할 수 없다는 기술적 인 이유는 없습니다. 호스트는 비공식적 인 사용자 정의 opcode와 해당 기능에 대한 canDo을 제공해야합니다. 그러나 VST 표준의 일부가 아니며 특정 호스트에서만 작동합니다.

내가 아는 한, 주요 VST 호스트 (Ableton Live, Cubase 등)에는 이것을 허용하는 메커니즘이 없습니다. 호스트의 입장에서 생각해 보면 이러한 메커니즘을 제공하는 것은 다소 미친 일입니다. 동시에 여러 플러그인이 호스트 재생을 중지/재생하려고하는 것을 상상해보십시오!

그래, 미안하지만, 당신이 생각하고있는 방식으로는 불가능합니다. 그러나 VST 플러그인이 Ableton Link을 통해 호스트의 템포를 제어 할 수는 있지만 재생 상태는 제어 할 수 없습니다. Link가 로컬 네트워크 소켓을 통해 작동하고 마스터/슬레이브의 개념이 없기 때문에 VST 플러그인은 이론적으로 템포 변경을 이러한 방식으로 호스트에 보낼 수 있습니다.

Ableton Live는 Link를 지원하는 유일한 시퀀서이지만 Ableton은 다른 회사와 함께 Link에 대한 지원을 추가로 지원하고 있다고 말했기 때문에 ' 가까운 시일 내에 더 많은 시퀀서가 링크 지원을 추가하기 시작하면 놀라지 않을 것입니다.

+0

감사합니다. 정말로 내가 찾던 대답은 아니지만 나에게 의미가 있습니다. 여기에 질문을 게시하는 것이 최후의 수단 이었지만 이미 성공하지 못했다고 생각했습니다. – 80prozent