void CEqualizerDlg::UpdateFX(int b){ int v = m_nArrEQ[b] / 50; CSyncSongDlg* pDlg = (CSyncSongDlg*)AfxGetMainWnd();
if (b<10)>m_BASSAudio.BASS_FXGetParameters(fx[b],¶mEQ); paramEQ.fGain=(float)10.0-v; pDlg->m_BASSAudio.BASS_FXSetParameters(fx[b],¶mEQ); } else { BASS_FXREVERB paramEQ; pDlg->m_BASSAudio.BASS_FXGetParameters(fx[10],¶mEQ); paramEQ.fReverbMix=(float)-0.012*v*v*v; pDlg->m_BASSAudio.BASS_FXSetParameters(fx[10],¶mEQ); }}
void CEqualizerDlg::SetBassFXParam(/*HSTREAM hStream*/){ //m_hStream = hStream; BASS_FXPARAMEQ paramEQ;
CSyncSongDlg* pDlg = (CSyncSongDlg*)AfxGetMainWnd();
fx[0]=pDlg->m_BASSAudio.BASS_ChannelSetFX(pDlg->m_BASSAudio.m_hStream,BASS_FX_PARAMEQ,0); //return effect's handle fx[1]=pDlg->m_BASSAudio.BASS_ChannelSetFX(pDlg->m_BASSAudio.m_hStream,BASS_FX_PARAMEQ,0); fx[2]=pDlg->m_BASSAudio.BASS_ChannelSetFX(pDlg->m_BASSAudio.m_hStream,BASS_FX_PARAMEQ,0); fx[3]=pDlg->m_BASSAudio.BASS_ChannelSetFX(pDlg->m_BASSAudio.m_hStream,BASS_FX_PARAMEQ,0); fx[4]=pDlg->m_BASSAudio.BASS_ChannelSetFX(pDlg->m_BASSAudio.m_hStream,BASS_FX_PARAMEQ,0); fx[5]=pDlg->m_BASSAudio.BASS_ChannelSetFX(pDlg->m_BASSAudio.m_hStream,BASS_FX_PARAMEQ,0); fx[6]=pDlg->m_BASSAudio.BASS_ChannelSetFX(pDlg->m_BASSAudio.m_hStream,BASS_FX_PARAMEQ,0); fx[7]=pDlg->m_BASSAudio.BASS_ChannelSetFX(pDlg->m_BASSAudio.m_hStream,BASS_FX_PARAMEQ,0); fx[8]=pDlg->m_BASSAudio.BASS_ChannelSetFX(pDlg->m_BASSAudio.m_hStream,BASS_FX_PARAMEQ,0); fx[9]=pDlg->m_BASSAudio.BASS_ChannelSetFX(pDlg->m_BASSAudio.m_hStream,BASS_FX_PARAMEQ,0);
paramEQ.fGain = 0; //-15 TO 15 paramEQ.fBandwidth=18; //1 TO 36
paramEQ.fCenter=80; //HERTZ 80 TO 16000 pDlg->m_BASSAudio.BASS_FXSetParameters(fx[0],¶mEQ); paramEQ.fCenter=170; pDlg->m_BASSAudio.BASS_FXSetParameters(fx[1],¶mEQ); paramEQ.fCenter=310; pDlg->m_BASSAudio.BASS_FXSetParameters(fx[2],¶mEQ); paramEQ.fCenter=600; pDlg->m_BASSAudio.BASS_FXSetParameters(fx[3],¶mEQ);
paramEQ.fCenter=1000; pDlg->m_BASSAudio.BASS_FXSetParameters(fx[4],¶mEQ);
paramEQ.fCenter=3000; pDlg->m_BASSAudio.BASS_FXSetParameters(fx[5],¶mEQ);
paramEQ.fCenter=6000; pDlg->m_BASSAudio.BASS_FXSetParameters(fx[6],¶mEQ);
paramEQ.fCenter=8000; pDlg->m_BASSAudio.BASS_FXSetParameters(fx[7],¶mEQ);
paramEQ.fCenter=12000; pDlg->m_BASSAudio.BASS_FXSetParameters(fx[8],¶mEQ);
paramEQ.fCenter=14000; pDlg->m_BASSAudio.BASS_FXSetParameters(fx[9],¶mEQ);
if(m_bUseEQ) //EQ를 사용할 경우에만 적용 { UpdateFX(0); UpdateFX(1); UpdateFX(2); UpdateFX(3); UpdateFX(4); UpdateFX(5); UpdateFX(6); UpdateFX(7); UpdateFX(8); UpdateFX(9); }}
没有评论:
发表评论