2012-06-01 3 views
1

"fmod"또는 "cwave"를 사용하여 .mp3 또는 .wav 또는 다른 사운드 형식과 같은 오디오 파일에서 각 프레임의 빈도를 가져 오는 방법을 찾을 수 있습니까? "도서관 또는 다른 도서관? C/C++에서 어떻게이 주파수를 찾을 수 있습니까?.mp3 .wav와 같은 오디오 파일의 각 프레임의 오디오 주파수

+2

MPEG 오디오 레이어 III이 "프레임"이라고 부르는 것은 1152 개의 샘플 블록입니다. 즉, "각 프레임의 빈도"와 같은 것은 없습니다. 몇 가지 독서 (예 : MP3 또는 WAV가 실제로 제작 된 방법, 선택한 라이브러리의 API 문서)를 한 다음 더 구체적인 질문을 할 수있을 때 돌아 오는 것이 좋습니다. – DevSolar

+0

질문은 다음과 같습니다. 특정 비디오 프레임의 색상은 어떻게 얻을 수 있습니까? –

+0

감사합니다. 그러나 나는 mp3 또는 wav 건축을위한 좋은 근원을 찾아 내지 않았다. 그리고 오디오 파일의 밀리 초 (또는 그와 비슷한 것)의 빈도를 가질 수 있습니까? –

답변

2

FFTW 라이브러리는 다양한 푸리에 변환의 매우 빠른 구현 세트입니다.

0

디지털화 된 오디오 샘플을 가지고 있다면 샘플을 가지고있는만큼 많은 주파수가 전체적으로 개의 위상을 갖습니다. 오디오 샘플이 두 개인 경우를 가정 해 보겠습니다. 그것들을 충실하게 표현하기 위해서는 하나의 빈도와 한 단계가 필요합니다. 다시 한 번, 두 개의 값이 필요합니다. 디지털 오디오의 여러 샘플을 나타 내기위한 "단일"주파수는 없습니다.

"물론 특정 비디오 프레임의 색상을 얻을 수 있습니까?"라는 질문에 대한 질문과 유사하게 평균 주파수는 무엇입니까? 또는 가장 중요한 주파수 (진폭이 가장 큰 주파수)를 물을 수 있습니다. 또는 신호의 고조파가 가장 많은 에너지를 전달하는 주파수가 무엇인지 물어볼 수 있습니다 (신호가 시간적으로 샘플링 된 전류와 같이 물리적 인 것으로 가정).

이러한 모든 경우에 FFT 또는 비슷한 이산 변환을 사용하는 내부 라이브러리를 사용하여 시간 도메인에서 주파수 또는 유사한 도메인으로 신호를 가져 오는 것이 좋습니다 (예 : quefrency domain, 그리고 오타가 아닙니다.) 일반 FFT에서 원하는 것을 얻는 것은 어렵습니다. 원시 FFT 결과를 처리하기 위해 수학 교육이 필요합니다. 나는 그것을위한 도서관이 있다고 확신한다, 나는 지금 당장 생각할 수 없다. 아마도 그러한 일을 처리하는 누군가가 대답을 편집 할 수 있습니다.

관련 문제