현재 Klatt를 사용하여 모음을 작성했으며 C http://www.cs.cmu.edu/afs/cs/project/ai-repository/ai/areas/speech/systems/klatt/으로 작성되고 컴파일되었습니다. .wav 파일을 출력하는 터미널 명령을 호출하여 파이썬 프로그램을 사용하여 자동으로 모음을 만듭니다. 이 웨이브 파일은 파이썬 프로그램에 의해 디스크에서 읽혀집니다. 나는 Python으로 Klatt 코드를 작성하거나 Klatt 코드를 쉽게 확장 할 수 있다면 .wav 파일을 numpy 배열에 반환하므로 액세스 할 수도 있습니다. 이 방법 또는 최선의 방법에 대한 제안.numpy를 사용하여 스크립트와 인터페이스하도록 현재 작성된 Klatt C 프로그램을 확장합니다.
0
A
답변
0
LPC 계수와 여기 신호를 사용하여 음성을 합성하는 LPC 보코더에 대한 코드 예제를 찾으려고합니다. 이론 상으로는 모두 훌륭하지만 예제 소스 코드를 찾기가 어렵습니다. Klatt는 동일하지는 않지만 아주 비슷한 방식으로 작동합니다. 누군가 LPC 합성에 대해 유용한 정보를 알고 있다면 도와주세요.
Python에서 LPC 디코더를 잘 구현하면 Klatt를 완전히 대신 사용할 수 있습니다. 그러나 공유 라이브러리 객체 나 DLL로 컴파일하거나 파이핑을 사용하여 출력을 잡아 내면 바인딩 할 수 있습니다.
공유/동적 라이브러리에 ctypes 모듈을 사용하여 바인딩 할 수 있습니다. 그것을 실행하고 stdout을 읽으려면 서브 프로세스 모듈을 제안하십시오. 그러나 os.popen을 사용하여이 작업을 수행 할 수도 있습니다. 그러면 출력물을 잡아서 질 낮은 배열로 저장하고 원하는대로 할 수 있습니다.
그러나 파이썬에서 Klatt를 다시 작성하는 것은 나쁜 생각이 아닙니다. 그렇게하지 않으면 아마 가능할 것입니다.