2011-01-20 3 views
2

나는 mp3 파일에서 음악을 분석하려고합니다. 템포, 피치 및 기타 음악적 특성에 관한 정보를 얻고 싶습니다. 어떻게이 데이터를 얻을 수 있습니까? 이 정보 나 라이브러리를 제공하는 오픈 소스 소프트웨어가 있습니까?컴퓨터로 음악 분석

누구나 내가 무엇을해야할지 또는 어디에서부터 시작할지 힌트를 줄 수 있습니까? 감사합니다. .

답변

0

대담이 도움이 될 것입니다. 프로그램에서 사용하려는 경우 소스 코드를 체크 아웃 할 수 있습니다. http://audacity.sourceforge.net/download/source

참고 : 먼저 필요한 내용이 모두 있는지 확인하려면 대담을 다운로드하십시오.

0

어디서 시작 해야할지 모르겠다면 사운드 위조 나 이미 알고리즘이있는 전문 편집 프로그램을 구입하는 것이 좋습니다. 만약 당신이 정말로 결정되면 물리학 서적을 꺼내 올 것입니다. 사운드의 전체 피치를 찾는 것은 미적분 변환입니다. 템포와 같은 사운드에 대한 기타 정보는 임펄스 응답 필터 및 일부 AI를 사용하여 찾을 수 있습니다. 정말로 헌신적 인 느낌이 들지 않는 한, 편집인을 사주세요.

업데이트 : 만약 당신이 정말로 그것을 간다면 here's 훌륭한 자원.

+0

실용적이고 쉽게 수행되는 미적분 변환입니다. 파이썬은 질적 인 모듈을 가지고 있습니다. C++에는 많은 구현이 가능합니다. FFT는 요즘에는 시도하기를 원하지 않는 사람을 막을 수 없다는 것을 충분히 할 수 있습니다. – g19fanatic

+0

FFT는 찾기 쉽지만 필요한 fft가 아니라 fft의 결과를 이해하려면 AI가 필요합니다. – Rich

+0

그는 반드시 그가하려고하는 것을 말하지 않습니다. 그가하는 일이 매우 구체적인 일이라면 그 일을 제대로 수행했다면 AI가별로 필요하지 않습니다. – g19fanatic

1

LibMAD은 정말 잘 작동하는 opensource mp3 디코더 라이브러리입니다. 이렇게하면 수정할 원시 데이터가 생깁니다. 피치와 다른 '특성'을 얻으려면 수학에 뛰어 들어야합니다.

피치는 본질적으로 소리의 주파수입니다. 이것은 FFT를 사용하여 즉석에서 수행 할 수 있습니다. Python numpy에는 fft 함수가 있습니다 (원시 데이터가있는 경우). 대해 FFT 뒤에 here.

일부 '수학'을 찾을 수 있습니다 C++에서의 FFT의를위한 라이브러리는 here

를 찾을 수 있습니다

템포는 다음 데이터를 FFTing 원시 데이터에 일부 2 차 로우 패스 필터를 적용하여 계산 될 수있다 . 디지털 필터는 또한 위에 링크 된 dspguide에서 논의됩니다.

행운을 빈다. 좋은 준비가되어 있지만 수학이 필요하다.

+0

피치는 기본적으로 주파수와 같지 않습니다. 주파수는 소리의 한 구성 요소를 물리적으로 측정 한 것입니다. 피치는 복잡한 사운드의 심리 * 지각 *입니다.피치는 복잡한 사운드의 다양한 주파수와 진폭과 관련이 있지만 미묘한 사소한 관계입니다. –

+0

정확한 정의를 찾으려는 경우 올바른 것입니다. 그러나 여기서의 목적을 위해, 내가 제안한 것을하는 것은 mp3 (특정 시점에서)로부터 '피치를 얻는'작업을 할 것입니다. ffts를 사용하면 피크 (특정 음표에 해당)를 골라 내고 복잡한 사운드의 음높이를 얻기 위해 알려진 비율로 음원을 결합 (특정 비율로 다른 음높이 생성) 할 수 있습니다. 분명히 당신이하려고하는 것에 대해 무엇인가를 알아야하기 때문에, 그는 주파수와 관련된 주파수를 이해해야합니다. 참고 : http://www.physicsclassroom.com/class/sound/u11l2a.cfm – g19fanatic