2009-12-09 1 views
5

웨이브에서 특정 인스투르먼트가 제공하는 멜로디/비트/리듬을 추출 할 수있는 프로그램을 작성할 수 있습니까? (또는 다른 음악 형식) 파일은 여러 악기로 구성됩니까?혼합 된 웨이브 (또는 다른 음악 포맷) 파일에서 특정 인스트르먼트의 특정 멜로디/비트/리듬 추출

이 알고리즘에는 어떤 알고리즘을 사용할 수 있으며 어떤 프로그래밍 언어가 가장 적합할까요?

+0

예 가능합니다. – Nifle

+0

좀 더 자세히 설명해야합니다. – Nifle

+0

Shane : 괜찮 았으면 좋겠다. 나는 대화를 기반으로 좀더 명확성을 더했고, 당신에게 더 많은 흥미와 더 유용한 대답을 줄 수있는 추가 태그를 추가했다. – BenAlabaster

답변

1

악기는 우리의 목소리와 동일한 방식으로 사운드 서명을 생성합니다. 군중에서 하나의 목소리를 선택하고 법의학에서 사용되는 데이터베이스에서 해당 서명의 음성을 식별 할 수있는 알고리즘이 있습니다. 똑같은 방법으로 단일 악기의 사운드 서명을 사운드 스케이프 (예 : 혼합 웨이브)에서 가져 와서 비트를 골라 내거나 자체 트랙에서 해당 악기의 복사본을 만드는 데 사용할 수 있습니다.

트랙 사본을 만들 때, 즉 악기 하나당 하나의 트랙으로 혼합 웨이브를 세분화하려는 경우 분명히 많은 작업이 필요합니다. 내 이해는 악기의 주파수 중복으로 인해 어떤 방법으로도 간단하지 않을 것입니다. 이미 말한 것처럼 불가능하지는 않습니다.

정보에 대한 탐구의 시작으로 유용 할 수 있습니다 소리와 일치하는 기술에 대한 Comparisonics하여 매우 흥미로운 블로그 게시물있다 : 가라오케 기계 알고리즘에 http://www.comparisonics.com/SearchingForSounds.html

+0

격려에 감사드립니다, 벤! "응답은 어떤 종류의 악기가 트랙에 있는지 알고 있다고 가정합니다 악기, 효과, 모두 함께 섞임 THEORETICALLY, 하나의 트랙에서 작업하는 사람이라면 어떤 종류인지 알 수 있습니다 그들 모두가있는 악기와 그 "소리 서명"을 할 수있다. 자동화 된 과정은 불가능하다. IMPOSSIBLE "-a hater – Shane

+0

악기가 서로 명확하게 구별 될 수있는 트랙 영역 만 있으면된다. 그들이 무엇인지 알아야합니다. 비교가들과 같은 것이 그들의 사운드 서명으로부터 무엇인지 말해 줄 것입니다. 악기를 모르더라도 식별 된 사운드 서명을 사용하여 나머지를 추출 할 수 있습니다. – BenAlabaster

+0

"추출"으로 명확히하기 위해 원래의 트랙에서 트랙을 지우는 것이 아니라 해당 "음색"이 포함 된 사본 트랙을 만들 것을 의미합니다. - 서명이 서로 전자적으로 식별 할 수없는 지점까지 겹치는 경우를 제외하고 . 비록 내가 색상과 같다고 생각할지라도, 기계는 인간의 귀와의 차이를 절대 구별 할 수없는 소리를 식별 할 수 있습니다. – BenAlabaster

0

봐가. 노래에서 음성을 제거 할 수 있다면 동일한 악기를 추출하는 데에도 동일한 원리를 적용 할 수 있습니다.

0

대부분의 악기는 특정 주파수 범위 내에서 사운드를 생성합니다.

가변 대역 통과 필터 - 특정 주파수 범위 만 허용하는 필터 - 사용자가 얻을 가능성이 거의 비슷합니다. 그것은 완벽에 가깝지 않을 것입니다. 당신은 흑 마술을 요구하고 있습니다. 트랙에서 하나의 악기를 완벽하게 추출하는 유일한 방법은 해당 악기가없는 트랙의 오디오 샘플을 가지고 두 파형의 차이를 만드는 것입니다.

C, C++, Java, C#, Python, Perl 모두 올바른 라이브러리로이 모든 작업을 수행 할 수 있어야합니다. 어느 것이 "최고"인지는 이미 알고있는 것에 달려 있습니다.

1

비트 또는 리듬을 추출하려면 대상 악기를 완벽하게 분리 할 필요가 없습니다. 일반적인 해결책은 어려울 수 있지만, 특정 부분에 대해 해결하려고한다면 가능할 수 있습니다. 밴드 패스 필터를 구현하고 나중에 튜닝 할 악기를 선택하기 위해 튜닝 할 수 있는지 확인하십시오.

또한 Mac 제품인 PhotoSounder을 발견했습니다. 블로그에는 isolating an individual instrument (수동 개입 포함) 등 다양한 방법을 보여주는 블로그가 있습니다.

0

원칙적으로 가능하지만 매우 어렵습니다. 개방 된 연구 영역이라 할지라도. StepMania의 단계 생성 프로그램 Dancing Monkeys에 대한 프로젝트 보고서에 관심이있을 수 있습니다. 그것은 꽤 정교한 비트 탐지 및 음악 분석을 수행합니다.이 분석은 문서 ​​하단에 자세히 설명되어 있습니다.

관련 문제