서버 측 오디오 믹서. 사용 가능한 것은 무엇입니까? (Csound가 이것을 할 수 있습니까?)

StackOverflow https://stackoverflow.com/questions/1803131

  •  05-07-2019
  •  | 
  •  

문제

다음과 같은 작업을 수행 할 수있는 프로그램이나 라이브러리가 있는지 확인하고 웹 사이트에서 서버 측 프로세스의 일부로 실행하는 데 적합합니다. (단일 페이지 요청에 합리적인 200 마일 최대보다 오래 걸리면 괜찮습니다. 비동기 프로세스로 실행할 수 있습니다.)

작업은 다음과 같습니다. 오디오 파일 세트를 입력하여 각 오디오 파일이 타임 라인에서 재생되기 시작하는시기에 대한 데이터가 있습니다. 이 프로그램은 타임 라인 데이터를 사용하여 결합 된 입력 오디오의 혼합 인 오디오 파일을 출력해야합니다. 즉, 작동하는 오디오 믹서를 원합니다. 배치 모드, 실시간이 아닙니다.

나는 Google 검색을 수행했지만 내가 무엇을 찾고 있는지 확실하지 않기 때문에 약간 좌절했습니다. 대부분의 오디오 믹서는 게임과 같은 실시간 응용 프로그램에 맞춰 보이는 것처럼 보이며,이 작업을 수행하는 작업을 명령 줄 유틸리티와 같은 것을 찾는 방법은 순수하게 입력하고 최대한 빨리 출력을 생성하는 방법을 잘 모르겠습니다.

이 질문이 의미가 있기를 바랍니다.

편집 : 누군가가 댓글을 달았습니다 csound, 그런 다음 삭제했습니다. CSound는 무엇입니까? 내가 묻는 일을하는 것이 비교적 간단합니까? 입력 사운드 파일의 길이는 10-50 초이며 피치 왜곡에 관심이 없습니다.

CSound에서 이것을 어떻게 달성 하시겠습니까?

이런 종류의 일을 할 수있는 CSound 이외의 다른 것이 있습니까?

도움이 되었습니까?

해결책

이를 위해 CSound를 사용할 수 있으며 여러 가지 방법으로 구현 될 수 있습니다. 불행히도, CSound에 대한 여전히 상당히 초기 연구는 샘플링 및 처리보다 오디오 합성 및 알고리즘 구성에 더 관여 했으므로 강력한 구현에 대한 제안을 제공 할 수 없습니다.

그러나 나는 당신의 프로젝트가 추측 할 것입니다 오케스트라 파일 (호출 된 모듈에 포함 된 오디오 합성 및 처리 정보가 포함 된 CSound 프로그램의 일부 악기)와 관련 될 것이다 soundin 오디오 파일에서 읽은 Opcode는 다양한 스트림의 진폭을 확장하고 출력으로 전달하기 전에 혼합합니다.

타임 라인은 아마도 점수 파일 (계측기 및 기능 테이블의 초기화를 처리하는 CSound 프로그램의 일부)는 타임 라인 데이터를 재생 타이밍으로 변환합니다.

Csound를 찾을 수도 있습니다 GEN01 서브 루틴은 파일에서 기능 테이블로 오디오 데이터를 읽습니다.

다른 팁

이 프로세스의 일부로 배치 스크립트를 실행하는 것을 기꺼이 고려하려면 삭스 유용한. "믹서"및 "리믹스"명령은 도움이 될 수있는 것처럼 보이지만 사운드 파일을 시작할 때 오프셋을 처리 할 때 빈 공간을 렌더링해야 할 수도 있습니다.

당신은 살펴 봐야합니다 슈퍼 콜 라이더. 어쩌면 그것은 당신을 위해 트릭을 할 것입니다.

PHP와 같은 것 개방형 바인딩?

당신은 베이스 오디오 라이브러리. 방화벽에서 막히기 때문에 실제보다 빨리 섞을 수 있는지 알 수는 없지만 과거에는 사용하기에 친숙하다는 것을 알았습니다.

당신은 당신의 질문을 표현한 방식 때문에 실시간 오디오 솔루션에 대한 많은 제안을 받고있을 것입니다.

이 프로그램은 타임 라인 데이터를 사용하여 결합 된 입력 오디오의 혼합 인 오디오 파일을 출력해야합니다.

"입력 오디오"는 매우 모호합니다. 나에게 그것은 라이브 입력 스트림처럼 들린다 (마이크와 같은). 라이브 I/O 스트림을 전혀 다루지 않는다면 CSound가 후보가 될 것입니다. 온라인으로 CSound 자습서가 많이 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top