Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: FMOD DSP

kayttaja-3842 [05.03.2007 09:18:42]

#

Eli tuli vaan tässä mieleen, että miten tätä http://www.musicdsp.org/archive.php?classid=3#236 EQ:ta voi käyttää yhdesttä FMOD DSP:n kanssa? Itse olen yrittänyt saada toimimaan, mutta olen aina epäonnistunut.

pieslice [06.03.2007 00:09:32]

#

FMOD Ex esimerkkikoodeissa on custom DSP esimerkki, jossa tehdään yksinkertainen dsp joka vaan kertoo äänen amplitudin 0.2:lla.
Esimerkin soveltaminen omaan käyttöön on helppoa.
FMOD Ex systeemissä on myös valmiina vino pino efektejä, mm. EQ ja niistä on esimerkit FMOD SDK:n mukana.

DSPstä sen verran että DSP:hän itse asiassa on vaan funktio jossa on audio sisään buffer ja audio ulos buffer, ja audio ulos bufferin arvo on se mikä loppuviimein tulee torvesta ulos (tai menee toiselle DSP:lle jos niitä on ketjutettu).

kayttaja-3842 [06.03.2007 22:32:39]

#

Noh, tässä olisi seuraava EQ teko yritykseni. Eli eikös tuon pitäisi asettaa 1600hz pienemmälle?

...tosin minusta tuo ei toimi!

    #include <fmod/fmod.h>
    #include <iostream>
    using namespace std;


int main (int argc, char *argv[ ])
{
    FSOUND_SAMPLE * son;
    int kanava;
    long eqid;
    FSOUND_DSPUNIT*cdsp;



    cout << "Aluestetaan...\n" << endl;
    FSOUND_SetOutput ( FSOUND_OUTPUT_DSOUND );
    FSOUND_SetBufferSize(200);
    FSOUND_SetDriver ( 0 );
    FSOUND_SetMixer ( FSOUND_MIXER_AUTODETECT );
    FSOUND_Init ( 44100, 32, FSOUND_INIT_GLOBALFOCUS );

    cout << "Ladataan\n" << endl;;
    son = FSOUND_Sample_Load ( FSOUND_FREE, "kit.mp3", FSOUND_HW2D, 0, 0);
    kanava = FSOUND_PlaySoundEx ( FSOUND_FREE, son, NULL, false );

    cdsp = FSOUND_DSP_Create(NULL, FSOUND_DSP_DEFAULTPRIORITY_USER+100, 0);
    FSOUND_DSP_SetActive(cdsp, true);
    FSOUND_SetPaused(FSOUND_SYSTEMCHANNEL, true);
    eqid = FSOUND_FX_Enable(FSOUND_SYSTEMCHANNEL, FSOUND_FX_PARAMEQ);
    FSOUND_FX_SetParamEQ(eqid, 1600, 0, -15);
    FSOUND_DSP_SetActive(cdsp, false);
    cout << "Soitetaan\n" << endl;
system("PAUSE");
return 0;
}

pieslice [07.03.2007 21:43:25]

#

Noi DSP:t ei toimi kuin software voiceilla eli ota toi HW2D softamiksatuksi.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta