문제

MIDI 파일 작업을 포함하여 작은 프로젝트를 시작했습니다. MIDI와 WAV 파일 사이에 캐스팅하는 C# 또는 VB.NET 코드가 있습니까?

도움이 되었습니까?

해결책

당신은 어떻게 든 인터페이스하려고 시도 할 수 있습니다 소심한, 오픈 소스 :

Timity ++는 소프트웨어 신시사이저입니다. PCM 파형 데이터로 변환하여 MIDI 파일을 재생할 수 있습니다. Digital Instrument 데이터 파일과 함께 MIDI 데이터를 제공 한 다음 실시간으로 종합하고 재생합니다. 사운드를 재생할 수있을뿐만 아니라 생성 된 파형을 다양한 오디오 파일 형식으로 하드 디스크로 저장할 수 있습니다.

유체 최근에 비슷한 맥락에서 업데이트 된 오픈 소스 프로젝트입니다.

FluidSynth는 SoundFont 2 사양을 기반으로 한 실시간 소프트웨어 신시사이저입니다.

사이트에서 무료 사운드 폰트 (이 신디사이저에서 사용하는 실제 PCM 데이터)를 다운로드 할 수 있습니다. 이 목록.

다른 팁

미디 파일 음표와 컨트롤러 정보 만 포함합니다. MIDI 파일에서 사운드를 얻으려면 음악 신디사이저 또는 샘플러를 통해 파일을 전달해야하므로 메모 및 컨트롤러 정보를 실제 사운드로 변환합니다.

실제로 이것은 주어진 MIDI 파일에 특정 사운드가 없음을 의미합니다. MIDI 파일을 오디오로 변환 한 결과 사운드는 신시사이저 또는 샘플 라이브러리의 품질과 변환을 수행하도록 선택된 사운드에 따라 다릅니다.

많은 사운드 카드에는 MIDI 파일에서 사운드를 생성 할 수 있습니다. 많은 MIDI 파일이 일반 미디 사양. 일반 MIDI 사양은 특정 기기 할당을 매핑하는 표준화 된 방법을 제공합니다. MIDI 파일 이이 표준을 준수하는 경우 일반적인 MIDI 사운드 생성기를 통해 재생하고 스네어 드럼이 스네어 드럼처럼 들리며 트럼펫이 아닌 소리를 낼 수 있습니다.

정교한 음악 제작 패키지가 있다면 스텝 경기, MIDI 파일을로드 할 수 있으며 온보드 사운드 라이브러리를 사용하여 사운드 파일을 렌더링 할 수 있으며 실제로 실시간보다 빠르게 수행 할 수 있습니다 (즉, 사운드를 재생할 필요가 없습니다. 사운드 카드를 통해 출력을 캡처합니다).

내가 말하려고하는 것은 이것에 움직이는 부분이 많다는 것 같아요. 이를 수행하는 단일 코드 또는 클래스 모듈이 없습니다.

이 작업을 수행 할 수있는 여러 프로그램이 있습니다 (Google "MIDI로 변환 MIDI로 WAV").이 작업을 수행하는 공개적으로 사용할 수있는 .NET 코드를 발견 한 적이 없습니다 (이러한 프로그램 중 일부는 작성되었다고 생각합니다. NET이지만 소스 코드를 사용할 수 없습니다).

상업용 MIDI-to-Wav 컨버터를 작업중인 온라인 친구가 있지만 .NET에 있지 않으며 오픈 소스가 아닙니다. Robert Harvey가 언급했듯이, 기본적으로 자신의 소프트웨어 신디사이저 (내 마음의 과제)를 작성하는 것이 포함되므로 이것은 전혀 간단한 작업이 아닙니다.

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