rtoss - Diff between revs 181 and 182

Subversion Repositories:
Rev:
Show entire file - Ignore whitespace
Rev 181 Rev 182
Line 1... Line -...
1 -  
-   1 #ifndef NULLSOFT_OUTH
-   2 #define NULLSOFT_OUTH
-   3 #include <windows.h>
-   4 #include <stddef.h>
2 // ids: 5 // ids:
3 // waveout: 32 6 // waveout: 32
4 // gapless: 64 7 // gapless: 64
5 // xfade: 63 8 // xfade: 63
6 // disk: 33 9 // disk: 33
7 // dsound: 38 10 // dsound: 38
8 // NULL: 65 11 // NULL: 65
9 // mm2: 69 12 // mm2: 69
-   13
-   14 #if (_MSC_VER <= 1200)
-   15 typedef int intptr_t;
-   16 #endif
10 17
11 #define OUT_VER 0x10 18 #define OUT_VER 0x10
12 19
13 typedef struct 20 typedef struct
14 { 21 {
15 int version; // module version (OUT_VER) 22 int version; // module version (OUT_VER)
16 char *description; // description of module, with version string 23 char *description; // description of module, with version string
17 int id; // module id. each input module gets its own. non-nullsoft modules should -  
-   24 intptr_t id; // module id. each input module gets its own. non-nullsoft modules should
18 // be >= 65536. 25 // be >= 65536.
19 26
20 HWND hMainWindow; // winamp's main window (filled in by winamp) 27 HWND hMainWindow; // winamp's main window (filled in by winamp)
21 HINSTANCE hDllInstance; // DLL instance handle (filled in by winamp) 28 HINSTANCE hDllInstance; // DLL instance handle (filled in by winamp)
22 29
Line 26... Line 33...
26 void (*Init)(); // called when loaded 33 void (*Init)(); // called when loaded
27 void (*Quit)(); // called when unloaded 34 void (*Quit)(); // called when unloaded
28 35
29 int (*Open)(int samplerate, int numchannels, int bitspersamp, int bufferlenms, int prebufferms); 36 int (*Open)(int samplerate, int numchannels, int bitspersamp, int bufferlenms, int prebufferms);
30 // returns >=0 on success, <0 on failure 37 // returns >=0 on success, <0 on failure
-   38
31 // NOTENOTENOTE: bufferlenms and prebufferms are ignored in most if not all output plug-ins. 39 // NOTENOTENOTE: bufferlenms and prebufferms are ignored in most if not all output plug-ins.
32 // ... so don't expect the max latency returned to be what you asked for. 40 // ... so don't expect the max latency returned to be what you asked for.
33 // returns max latency in ms (0 for diskwriters, etc) 41 // returns max latency in ms (0 for diskwriters, etc)
34 // bufferlenms and prebufferms must be in ms. 0 to use defaults. 42 // bufferlenms and prebufferms must be in ms. 0 to use defaults.
35 // prebufferms must be <= bufferlenms 43 // prebufferms must be <= bufferlenms
-   44 // pass bufferlenms==-666 to tell the output plugin that it's clock is going to be used to sync video
-   45 // out_ds turns off silence-eating when -666 is passed
36 46
37 void (*Close)(); // close the ol' output device. 47 void (*Close)(); // close the ol' output device.
38 48
39 int (*Write)(char *buf, int len); 49 int (*Write)(char *buf, int len);
40 // 0 on success. Len == bytes to write (<= 8192 always). buf is straight audio data. 50 // 0 on success. Len == bytes to write (<= 8192 always). buf is straight audio data.
Line 58... Line 68...
58 int (*GetWrittenTime)(); // returns time written in MS (used for synching up vis stuff) 68 int (*GetWrittenTime)(); // returns time written in MS (used for synching up vis stuff)
59 69
60 } Out_Module; 70 } Out_Module;
61 71
62 72
-   73 #endif