求 Winamp 插件开发的规范或示例程序?(200分)

  • 主题发起人 主题发起人 Lera
  • 开始时间 开始时间
L

Lera

Unregistered / Unconfirmed
GUEST, unregistred user!
Winamp的插件非常精彩, 想自己做几个试试,却苦于找不到相应的规范,于是向大家求助,
哪位能告知一二?
 
www.winamp.com
 
示范如何制作 WinAmp 的 Plugin
http://www.vclxx.com/DELPHI/D32SAMPL/WINAMP_PLUGIN.ZIP
 
zjlcc,Xinglong:
以上地址我连不上去,你们可否发我一份? mailto: chemhawk@sina.com
Kingron:
我在www.winamp.com 与 www.nullsoft.com 上均找不到,你真的找过吗?
 
己发,查收。
 
另外,你的回答对了一半:)你很会蒙
 
谢谢Xinglong &
zjlcc,我已经收到邮件.
刚才我找到另一个东西, 作为回报公布给大家.

WINAMP_V.ZIP 35K
作 者 : Denis S. Chanzhiev。
版 本:( 1.0 版,附源码 )
说 明:知名的播放 .MP3 文件的 Winamp Plug-In 介面 vis.h 的 Object Pascal 宣告文件

unit winamp_vis;

// Winamp visualisation library plugin interface for Deplhi
// written by Denis S. Chanzhiev http://denisove.misto.cz
// chaden@mail.cz

// Based on vis.h from NullSoft.
// notes:
// any window that remains in foreground should optimally pass
// keystrokes to the parent (winamp's) window, so that the user
// can still control it. unless escape is hit, or some option
// key specific to the vis is hit. As for storing configuration,
// Configuration data should be stored in <dll directory>/plugin.ini

// Tested with Delphi 4.

interface
uses windows;
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 of RenderFrame to actual drawing/
// (calling app looks at this value when getting data)
delayMs :Cardinal;
// delay between calls in ms

// the data is filled in according to the respective Nch entry

spectrumNch :Cardinal;
waveformNch :Cardinal;
spectrumData : Array [1 .. 2,1 .. 576] of Byte;
waveformData : Array [1 .. 2,1 .. 576] of Byte;
Config : function (this_mod:PwinampVisModule):Cardinal
cdecl;
// configuration dialog
Init : function (this_mod:PwinampVisModule):Cardinal
cdecl;
// 0 on success, creates window, etc
Render : function (this_mod:PwinampVisModule):Cardinal
cdecl;
// returns 0 if successful, 1 if vis should end
Quit : function (this_mod:PwinampVisModule):Cardinal
cdecl;
// call whendo
ne

userData :procedure;
cdecl;
// user data, optional

end;


TwinampVisHeader = record
version : Cardinal;
description : PChar;
// description of library
getModule : function (A : Cardinal):PwinampVisModule;cdecl;
end;



end.



 
希望还有其它的高手再指点指点,我意犹未尽...
分数不够可以另开贴子再加,特别听到有过这方面经验大虾的发言.
 
WINAMP_V.ZIP 35K 在哪里能下到啊?
要不给我发一份可好?谢了先

guestwind@21cn.com
 
我这有七八个例子,不过delphi.antdown.com怎么不让上载了呢?
 
Hubdog:
你的《葵花宝典》2.1做得很不错,我可获益匪浅。这回能不能给我寄几个我要的例子?
先谢你了,分数也不会少你的
mailto: chemhawk@sina.com
 
VIS 插件的另一个例子,刚找到:
http://www.csdn.net/dev/Tools/SDK_Lib/winampsdk.zip
 
lera:

已经上传到了delphi.antdown.com了
 
Hubdog:
谢谢你的上传,我已经成功下载.
冰火: 你要的东西我已经发了,请查收.
 
多人接受答案了。
 
以下为官方提供的提供的插件开发包,我刚刚找到:

http://ftp.winamp.com/winamp/nsdn/vis_minisdk.zip
http://ftp.winamp.com/winamp/nsdn/dsp_minisdk.zip
http://ftp.winamp.com/winamp/nsdn/gen_minisdk.zip
http://ftp.winamp.com/winamp/nsdn/out_minisdk.zip
http://ftp.winamp.com/winamp/nsdn/in_minisdk.zip
http://www.winamp.com/nsdn/winamp2x/dev/plugins/language_pack_sdk_271.zip

 
To Lera:

你找到的那个Vis的例子编译有问题啊,为什么?是D6不支持D4的变量了吗?

To all:

我想写一个Dsp插件,根据上面那个例子声明了变量,过程和函数也写成了,可是就是不能被Winamp认出来,这是怎么回事啊?
哪位大侠可以帮我编写一份Dsp插件的声明吗?或者我把我的声明给您看看,看哪里不对,ok?
 
后退
顶部