[delphi] analiza dźwieku

0

cześć,
potrzebuję kawałku kodu lub komponentu który działał by tak jak w winampie w wizualizacjach OnBit. ale chodzi mi o to żeby analizowało wszystko cy wychodzi z karty muzycznej a nie np tylko z winampa czy foobara... probowałem jakoś szukać ale nic nie wychodziło mi. chciałem pobawić się z ACS24 ale przy instalacji błąd występuje :/

0

o ile się nie mylę to biblioteka BASS ma taką opcję.

0

jak juz sie uporasz z zaladowaniem pliku i odtworzeniem go:

(część kodu noxx_sound_engine.pas)

type tspectrum_nfo=record
Data : TFFTData;
Beat : single;
max : single;
end;
Type TWaveData = array [0..2048]        of DWORD;
Type TFFTData  = array [0..512]         of Single;

function getinfoWAV(wav : twavesoundfle; od, zakres : integer) : tspectrum_nfo;
var// FFTFata : TFFTData;// WaveData  : TWaveData;
i:integer;
suma : single;
max:single;
begin
if zakres < 0 then exit;
if zakres > 512 then exit;
// if BASS_ChannelIsActive(wav.handle) <> BASS_ACTIVE_PLAYING then begin result := 0; Exit; end;
BASS_ChannelGetData(wav.handle, @result.Data, BASS_DATA_FFT1024);

max := 0;  suma:=0;

for i:=od to zakres do begin
if result.Data[i] > max then max := result.Data[i];
suma := suma + result.Data[i];
end;

result.max      := max;
result.Beat     := suma;

//suma := suma/41;
end;

Maksymalnie 512 wartosci moes pobrac. w winampie nie widac wszystkich 512 bo tylko mala czesc powaznie sobie skacze, kazdy indeks w tablicy to jakaś tam wielkość nie wiem za bardzo co to jets dokladnie, ale jezeli chodzi o analize dzwieku to na lajcie...

0

nie instalowałem BASSa, ale mam podstawowe pytanie, czy ta biblioteka potrafi przechwycić dźwięk z karty dźwiękowej? bo jak nie to odpuszczę sobie to a zabiorę się na sprzętową taka funkcję i do ewentualnie podłącze to do mikroprocesorka.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0