|
Вопрос # 1 110/ вопрос открыт / |
|
Доброго времени суток, уважаемые эксперты!
Использую BASSPlayer, ioPlug, PluginCtrl;
В на ниже приведённом участке кода загружаю input плагины от винампа - это получается успешно. Дальше, нужно вызвать окно конфигурации этого плагина, но увы, оно не появляется, подскажите, пожалуйста, где у меня ошибка.
Приложение: Переключить в обычный режим-
- procedure TForm1.Button1Click(Sender: TObject);
- var
- imod : ^TIn_module;
- omod : ^TOut_module;
- begin
- info_input.Lines.Clear;
- if (BassPlayer1.Mode=plmPlaying) or (BassPlayer1.Mode=plmPaused) then
- begin
- info_input.Lines.Add('plug-in cannot be selected while playing or paused state !');
- exit;
- end;
-
- if not OpenPlug.Execute then
- exit;
-
- if not initInputDll(OpenPlug.FileName) then
- begin
- info_input.Lines.Add('Failed to load input plug-in !');
- exit;
- end;
-
- imod := getInModule;
- imod.hMainWindow := Form1.Handle;
- {imod.hDllInstance :=InputDllHandle; }
- imod.outMod := omod;
- imod.init;
- imod.SetInfo := SetInfo1;
- imod.dsp_IsActive := dsp_isactive1;
- imod.dsp_dosamples := dsp_dosamples1;
- imod.SAVSAInit := SAVSAInit1;
- imod.SAVSADeInit := SAVSADeinit1;
- imod.SAAddPCMData := SAAddPCMData1;
- imod.SAGetMode := SAGetMode1;
- imod.SAAdd := SAADD1;
- imod.VSASetInfo := VSASetInfo1;
- imod.VSAAddPCMData := VSAAddPCMData1;
- imod.VSAGetMode := VSAGetMode1;
- imod.VSAAdd := VSAAdd1;
-
-
-
- info_input.Lines.Add('Loaded '+ string(imod.description));
- if imod.UsesOutputPlug = 0 then
- info_input.Lines.Add('Note : Loaded Input plug-in sounds out directly.');
- end;
-
-
-
- procedure TForm1.Button2Click(Sender: TObject);
- begin
- if imod <> nil then
- imod.config(Form1.Handle);
- end;
-
-
-
-
-
- procedure SetInfo1(bitrate, srate, stereo, synched : integer); cdecl; // if -1, changes ignored? :)
- begin
- end;
-
- function dsp_isactive1 : integer; cdecl;
- begin
- result := 0;
- end;
-
- function dsp_dosamples1(samples : pointer; numsamples, bps, nch, srate : integer) : integer; cdecl;
- begin
- result := numsamples;
- end;
-
-
- procedure SAVSAInit1(maxlatency_in_ms : integer; srate : integer); cdecl; // call in omod.Play()
- begin
- end;
-
- procedure SAVSADeInit1;cdecl; // call in omod.Stop()
- begin
- end;
-
- procedure SAAddPCMData1(PCMData: pointer; nch: integer; bps: integer; timestamp: integer); cdecl;
- begin
- end;
-
- // gets csa (the current type (4=ws,2=osc,1=spec))
- function SAGetMode1: integer; cdecl;
- begin
- result := 0;
- end;
-
- // sets the spec data, filled in by winamp
- procedure SAAdd1(data: pointer; timestamp: integer; csa: integer); cdecl;
- begin
- end;
-
- // sets the vis data directly from PCM data
- procedure VSAAddPCMData1(PCMData: pointer; nch: integer; bps: integer; timestamp: integer); cdecl;
- begin
- end;
-
- // use to figure out what to give to VSAAdd
- function VSAGetMode1(var specNch : integer; var waveNch : integer) : integer; cdecl;
- begin
- result := 0;
- end;
-
- // filled in by winamp, called by plug-in
- procedure VSAAdd1(data : pointer; timestamp : integer); cdecl;
- begin
- end;
-
- procedure VSASetInfo1(srate : integer; nch : integer); cdecl;
- begin
- end;
 |
Вопрос задал: skvitek (статус: Посетитель)
Вопрос отправлен: 9 ноября 2007, 23:26
Состояние вопроса: открыт, ответов: 0.
|
Мини-форум вопроса
Мини-форум пуст.
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|