2014-05-20 12 views
1

방금 ​​두 번째 Processing 스크립트를 작성했으며 HTML5 페이지에서 가져 오려고합니다. 내 스크립트는 입력 곡 (mp3)에서 주파수의 강도를 감지하고 각 주파수를 이미지의 색조 범위에 할당하여 이미지에 애니메이션을 적용합니다. processing.js와 Pomax의 minim.js를 포함 시켰습니다. 나는 다음과 같은 오류를 받고 있어요 : 내 처리 스케치의 라인processing.js 및 minim.js에서 Beat/Hz 감지가 작동하지 않습니다.

FFT fft; 

을 칠 때 이런 일이 발생 같은

Uncaught ReferenceError: FFT is not defined 

보인다. 나는 minimal.js를보고 미니 도서관의 작은 조각처럼 보입니다. 페이지가 상자를 그리기 때문에 오디오 분석을위한 FFT 기능이 누락 된 것 같습니다. 그러나 나는이 모든 것의 시각 예술 측면에 더 가깝기 때문에, minim.js가 내가 생각하는 것보다 훨씬 더 많은 것이 누락 될 수있다.

누구든지 minim.js로 FFT를 구현하는 방법을 알고 있습니까? HTML5 컨텍스트에서 정말 강력 할 수 있습니다. 나는 대안을 무엇을 할 지 모르겠다. 그러나 나는 다른 오디오 분석 라이브러리를 찾을 수있을 것 같다.

저는이 세상에 새로운 소식을 전합니다. 궁금한 사항이 있거나 코드가 필요한 경우 알려주십시오.

감사합니다.

답변

1

이것은 실제로 라이브러리가없는 오디오 API를 사용하는 javascript의 코드 6 줄입니다. 따라서 6 줄의 코드 없이도 exta 라이브러리의 오버 헤드가 왜 필요합니까?

var sfx = new AudioContext(); 
var mediaSourceNode = sfx.createMediaElementSource(document.getElementById("yourAudio")); 
var analyser = sfx.createAnalyser(); 
var timeDomainData = new Uint8Array(analyser.frequencyBinCount); 
mediaSourceNode.connect(analyser); 
analyser.connect(sfx.destination); 

당신은 당신이 HTML5 <audio> 요소에서 재생 및 오디오 재생을위한 기본 사용자 인터페이스를 얻기 위해 원하는 오디오를 넣습니다. 드로우 루프에서 분석기 호출

analyser.getByteTimeDomainData(timeDomainData); 

에서 데이터를 얻기 위하여

. 귀하의 데이터는 processing.js가

+0

1 http://processingjs.org/articles/PomaxGuide.html, 내 대답을 삭제 표시와 함께 자바 스크립트를 사용하는 방법에 대한 정보를 정기적으로 들어 var timeDomainData

에있을 것입니다. 너의 것이 더 나은 해결책이다. –

+0

와우 감사합니다 :) – Winchestro