Częstotliwość - Plugin do Winampa

0

Witam!

Jestem właśnie w trakcie pisania pluginu do Winampa i mam malutki problem. Nie wiem skąd pobrać częstotliwość aktualnie odtwarzanego dźwięku :-/ Wie ktoś może skąd to "wytrzasnąć" ?

TIA,
bdz

0

Sprecyzuj, jaki plugin chcesz napisać. Jeśli chodzi o wizualizację, to dane, które przekazuje winamp, wyglądają tak:

type
  PWinampVisModule = ^TwinampVisModule;
  TwinampVisModule = record
    description  : PChar;        // description of module
    hwndParent   : HWND;         // parent window (filled in by calling app)
    hDllInstance : HINST;        // instance handle to this DLL (filled in by calling app)
    sRate        : Cardinal;     // sample rate (filled in by calling app)
    nCh          : Cardinal;     // number of channels (filled in...)
    latencyMs    : Cardinal;     // latency from call to Render to actual drawing
    delayMs      : Cardinal;     // delay between calls to Render (in ms)

    // the data is filled in according to the respective Nch entry
    spectrumNCh  : Cardinal;     // Number of channels
    waveformNCh  : Cardinal;     // Number of channels
    spectrumData : Array [0..1, 0..575] of Byte;     // waveform data   (values from 0-255)
    waveformData : Array [0..1, 0..575] of Byte;     // spectrum data   (values from 0-255)

    // functions that winamp calls to configure the plugin, initialise ...
    Config       : procedure(const PVisModule : PwinampVisModule); cdecl;
    Init         : function (const PVisModule : PwinampVisModule) : Integer; cdecl;
    Render       : function (const PVisModule : PwinampVisModule) : Integer; cdecl;
    Quit         : procedure(const PVisModule : PwinampVisModule); cdecl;
    userData     : procedure; cdecl;  // user data, optional
  end;

I chyba w sRate powinieneś mieć częstotliwość.

0

To ma być plugin który w zależności od częstotliwości dźwięku zapali którąś z 8 diód podłączonych do LPT. Mam już coś w stulu VU Meter'a i chciałem się teraz czestotliwościami pobawić (zrobić coś w stylu kolorofonu).


dopisane

a sRate to częstotliwość próbkowania i to chyba nie to...

0

Więc potrzebujesz widma, czyli spectrumData.

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