JMF с обработкой-аудио визуализатор


У меня есть этот удивительный аудио визуализатор, созданный с обработкой 2. 0a5 с помощью библиотеки minim, которая использует fft для анализа аудио данных.

import ddf.minim.*;
import ddf.minim.analysis.*;

Minim minim;
AudioPlayer song;
FFT fft;

int col=0; // color, oscillates over time.

void setup()
{
size(498, 89);

// always start Minim first!
minim = new Minim(this);

// specify 512 for the length of the sample buffers
// the default buffer size is 1024
song = minim.loadFile("obedear.mp3", 2048);

song.play();

// an FFT needs to know how
// long the audio buffers it will be analyzing are
// and also needs to know
// the sample rate of the audio it is analyzing
fft = new FFT(song.bufferSize(), song.sampleRate());


}

void draw()
{
colorMode(HSB);  
background(0);
// first perform a forward fft on one of song's buffers
// I'm using the mix buffer
// but you can use any one you like
fft.forward(song.mix);
col++;
if (255<col){col=0;} // loops the color
strokeWeight(8);
stroke(col, 255, 255);

// draw the spectrum as a series of vertical lines
// I multiple the value of getBand by 4
// so that we can see the lines better
for(int i = 0; i < fft.specSize(); i++)
{
line(i-160, height, i-160, height - fft.getBand(i)*2);
}


}

void stop()
{
song.close();
minim.stop();

super.stop();
}

Итак, теперь я хотел бы импортировать источник песни через url-адрес, например, из soundcloud. Url может выглядеть примерно так - http://api.soundcloud.com/tracks/46893/stream?client_id=759a08f9fd8515cf34695bf3e714f74b который возвращает поток mp3 128 kbps. Я знаю, что JMF 2.1 поддерживает URLDataSource для потоковой передачи аудио, но я не уверен, что JMF и обработка/minim/fft будут хорошо играть вместе. Я действительно Новичок в java и все еще не полностью знаком с входами и выходами. Я действительно привык к php и html. Я также видел, что Soundcloud имеет потоковую интеграцию Soundmanager2 в своем JavaScript SDK. Не уверен, что это предложит какие-либо возможные интеграционные решения.

В идеале я хотел бы предоставить пользователю список песен soundcloud с php и html, и по щелчку мыши я хотел бы воспроизвести песню с моим собственным визуализатором, предпочтительно тем, который я создал в процессе обработки. Мне очень трудно заставить это работать, и мое невежество с java определенно не помогает. Есть ли какие-либо предложения по наилучшему способу сделать это, если это вообще возможно?

1 2
fft

1 ответ:

Святой ш@т! LoadFile Minim принимает прямые URL-адреса, как тот, который я опубликовал выше, как имя файла param! Я нашел ответ здесь: code.compartmental.net/tools/minim/manual-minim было так много различных ссылок на документацию, что я, наверное, пропустил "руководство". В любом случае, это потрясающе. Если кто-то хочет классный аудиоплеер и визуализатор на основе java, не стесняйтесь украсть мой (в основном открыто доступный код в любом случае).