source: roaraudio/doc/new-cmds @ 4528:98747bc86f9b

Last change on this file since 4528:98747bc86f9b was 4528:98747bc86f9b, checked in by phi, 13 years ago

some more specs

File size: 7.8 KB
Line 
1#($Revision$)
2!SECTION: Commands
3+DEVCTL = 33
4 +:version (uint8)
5 +:type (uint8)
6 +:vendor (uint8)
7 +VENDOR_ROARAUDIO = 0
8 +VENDOR_BASICDEV  = 1
9 +:subtype (uint8)
10 +:flags (uint8)
11 +:ot (uint8)
12 +:(id) (uint16) #(if not UNIID or SID)
13 +:data... (vardata)
14+CAPS = 34
15 +:version (uint8)
16 +:type (uint8)
17 +:flags (uint16)
18 +CF_REQUEST   = 0x0001
19 +CT_CAPS      = 0
20 +::data... (dataarray)
21 +:::captype (TODO)
22 +:::... (TODO)
23 +CT_STANDARDS = 1
24 +::data... (dataarray)
25 +:::stdvendor (uint8)
26 +STDV_ROARAUDIO = 0
27 +STDV_PROTO     = 1
28 +STDV_RFC       = 2
29 +:::stdversion (uint8)
30 +:::standard (uint16)
31+WAIT = 35
32 +:version (TODO)
33 +:flags (TODO)
34 :(TODO)
35+NOTIFY = 36
36 #(+=structof(WAIT))
37 #(Notify Types)
38 +NT_PROTO = NEEDS_CONST
39 +NT_SOCKET = NEEDS_CONST
40 +NT_SIGNAL = NEEDS_CONST
41 +NT_MSGQUEUE = NEEDS_CONST
42 +NT_FLOCK = NEEDS_CONST
43 +NT_FUTEX = NEEDS_CONST
44+SEEK = 37
45 +:version (TODO)
46 +:flags (TODO)
47 +:destination possition (TODO)
48 +:destination possition whence (TODO)
49 +:destination possition quality (TODO)
50 +:hint pos (TODO)
51 +:hint whence (TODO)
52 +:hint quality (TODO)
53 +:seek at (TODO)
54 +:seek to (TODO)
55 +:seek whence (TODO)
56 +SF_CONT_WHILE_SEEK = 0x01
57 +SF_CONT_ON_ERROR   = 0x02
58 +SF_HINT            = 0x04
59 +SF_SEEK            = 0x08
60 +HQ_BAD       = 0
61 +HQ_BAD_NB    = 1 #(bad, not before this possition)
62 +HQ_NEAR      = 2
63 +HQ_NEAR_NB   = 3 #(Near, not before this possition)
64 +HQ_GOOD      = 4
65 +HQ_GOOD_NB   = 5 #(good, not before this possition)
66 +HQ_EXACT     = HQ_EXACT_NB #(ID 6 is skiped here)
67 +HQ_EXACT_NB  = 7
68 +WHENCE_BEGIN = 0
69 +WHENCE_CUR   = 1
70 +WHENCE_END   = 2
71+CLIENTCTL = 38
72 +:version (uint8)
73 +:subcmd (uint8)
74 +:flags (uint16)
75 +:data (vardata)
76 +CC_HASHTABLE = PARA_HASHTABLE
77 +CC_WININFO   = PARA_WININFO
78 +CC_PROPTABLE = PARA_PROPTABLE
79+LOOKUP = 39
80 +:version (uint8)
81 +:flags (uint8)
82 +:extflags (uint8)
83 +:ot (uint8)
84 +:ht (uint32) #(hash type)
85 +:hash... (vardata)
86+CONCTL = 40
87 +:version (uint8)
88 +:flags (uint8)
89 +:session (uint8)
90 +:type (uint8)
91 +:stdvendor (uint8)
92 +:stdversion (uint8)
93 +:standard (uint16)
94 +CCT_NONE       = 0 #(This is the same like a NOOP-Command)
95 +CCT_CRYPTMSG   = 1 #(This request contains zero or more crypto packages according to given standard)
96 +CCT_OPENSESS   = 2 #(This opens a crypto session)
97 +:hash (uint32)
98 +:comp (uint16)
99 +COMPT_NONE  = 0
100 +COMPT_ZLIB  = 1
101 +COMPT_GZIP  = 2
102 +COMPT_BZIP2 = 3
103 +:complevel (uint8)
104 +:compflags (uint8)
105 +:data... (dataarray)
106 +CCT_CLOSESESS  = 3 #(This closes a opend cryto session)
107 +:hashlen (uint16)
108 +:hash (dataarray(:hashlen))
109 +:data... (dataarray)
110 +CCT_SESSDATA   = 4 #(This is some kind of data used in the session)
111 +:data... (dataarray)
112+LIST = NEEDS_CONST
113+GET_OBJ = NEEDS_CONST
114+OBJCTL = NEEDS_CONST
115*SERVER_INFO
116 +IT_SERVER   = 1
117  +:version (uint8)
118  +:reserved (uint8)
119  +:indexlen (uint16)
120  +::reserved (uint8)
121  +::type (uint8)
122  +ITST_VERSION     = 0
123  #(Format: Product/Version <VendorID/VendorName> (comments))
124  #(Example: roard/0.4 <0/RoarAudio> (Debian build))
125  +ITST_LOCATION    = 1
126  #(freeform)
127  +ITST_DESCRIPTION = 2
128  #(freeform)
129  +ITST_CONTACT     = 3
130  #(Format: first ["']nick["'] last (comment) <email>/OpenPGPkey/Phone/Room)
131  +ITST_UN_SYSNAME  = 4 #(uname -s)
132  +ITST_UN_NODENAME = 5 #(uname -n)
133  +ITST_UN_RELEASE  = 6 #(uname -r)
134  +ITST_UN_MACHINE  = 7 #(uname -m)
135  +ITST_SERIAL      = 8
136  +ITST_ADDRESS     = 9
137  +ITST_UIURL       = 10
138  +::len (uint16)
139  +:strings (dataarray)
140 +IT_COUNTERS = 2
141  +:version (uint8)
142  +:reserved (uint24)
143  +:data... (dataarray)
144  +::type (uint8)
145  +::flags (uint8)
146  +::reserved (uint16)
147  +::counter (uint32)
148  +CF_CURRENT = 0x01 #(Current value if set, sum if unset)
149  +CF_OTTYPE  = 0x02 #(Type is a OT_* type if set, or other if unset)
150 +IT_LISTEN   = 3
151  +:version (uint8)
152  +:reserved (uint24)
153  +:listensocks... (dataarray)
154  +::id (uint16)
155  +::flags (uint8)
156  +::socktype (uint8)
157  +::proto (uint16)
158  +::byteorder (uint16)
159  +::dir (uint32)
160  +::auinfo (packed-audioinfo) #(4*4*8 = 128bit)
161  +::addrlen (uint16)
162  +::addr (padded-string(:addrlen))
163  +LF_HAVEDIR = 0x01
164  +LF_HAVEAI  = 0x02
165*[GS]ET_STREAM_PARA
166 *PARA_INFO
167  +STREAMSTATE_ERROR    = 5 #(Stream is in some error condition, parent client should close or kick it)
168  +STREAMSTATE_NEEDSEEK = 6 #(like Error but stream can become usable again if you do a seek)
169 *PARA_FLAGS
170  +FLAG_SINGLESINK = 0x00040000
171  +TOGGLE_FLAG = NEEDS_CONST
172 +PARA_HASHTABLE  = 6   #(GTN, UUID, ...)
173  +:htsettertype (uint32)
174  +:htsettersize (uint16)
175  +:htsetterdata (vardata)
176  +:hashtable... (dataarray)
177  +::httype (uint32)
178  +::htsize (uint16)
179  +::htfunction (uint16)
180  +::htdata (vardata)
181  +HT_NONE       = 0
182  +HT_MD5        = 1
183  +HT_SHA1       = 2
184  +HT_RIPEMD160  = 3
185  +HT_MD2        = 5
186  +HT_TIGER      = 6
187  +HT_HAVAL      = 7
188  +HT_SHA256     = 8
189  +HT_SHA384     = 9
190  +HT_SHA512     = 10
191  +HT_SHA224     = 11
192  +HT_MD4        = 301
193  +HT_CRC32      = 302 #(ISO 3309, ITU-T V.42, IEEE 802.3)
194  +HT_RFC1510    = 303 #(HT_CRC32 as modified by RFC 1510)
195  +HT_RFC2440    = 304 #(poly=0x1864CFBL, init=0xB704CEL, OpenPGP)
196  +HT_WHIRLPOOL  = 305
197  +HT_UUID       = 70000
198#(GTN is the Global Track Number as used by for example the RoarAudio PlayList Daemon (rpld))
199#(It is a creator-runtime-unique number to identify the object.)
200  +HT_GTN8       = 70001
201  +HT_GTN16      = 70002
202  +HT_GTN32      = 70004 #("Short Global Track Number")
203  +HT_GTN64      = 70008 #("Long  Global Track Number")
204  +HT_CLIENTID   = 71000 + OT_CLIENT   = 71001
205  +HT_STREAMID   = 71000 + OT_STREAM   = 71002
206  +HT_SOURCEID   = 71000 + OT_SOURCE   = 71003
207  +HT_SAMPLEID   = 71000 + OT_SAMPLE   = 71004
208  +HT_MIXERID    = 71000 + OT_MIXER    = 71005
209  +HT_BRIDGEID   = 71000 + OT_BRIDGE   = 71006
210  +HT_LISTENID   = 71000 + OT_LISTEN   = 71007
211  +HT_ACTIONID   = 71000 + OT_ACTION   = 71008
212  +HT_MSGQUEUEID = 71000 + OT_MSGQUEUE = 71009
213  +HT_MSGBUSID   = 71000 + OT_MSGBUS   = 71010
214#(Next are article and book numers. They may be ued with HF_DISK and HF_WORK)
215  +HT_GTIN8      = 72001
216  +HT_GTIN13     = 72002
217  +HT_ISBN10     = 72003
218  +HT_ISBN13     = HT_GTIN13 #(ISBN-13 and GTIN/EAN-13 are the same)
219  +HF_NONE       =  0 #(This entry does not have anything to do with the object...)
220  +HF_OBJECT     =  1 #(This is an entry for exacltly this object)
221  +HF_PARENT     =  2 #(This is the parent object)
222  +HF_LOGIC      =  3 #(This is a logic group of this object)
223  +HF_PERMANENT  =  4 #(This can be used to acces exactly this object with a premanent address)
224  +HF_DEVICE     =  5 #(The device this is on or the device itself if this is a device)
225  +HF_DISK       =  6 #(The disk this is on, if this is a disk the same as HF_DEVICE)
226  +HF_SONG       =  7 #(This identifys the Song. This may for example be used with Tantalos)
227  +HF_APP        =  8 #(The application, device or other source generating this object)
228  +HF_FILE       =  9 #(The source file for this object)
229  +HF_ARTIST     = 10 #(This identifies any kind of artist/composer/interpret, to be used with Tantalos)
230  +HF_WORK       = 11 #(This identifies any kind of work/album/compilation, to be used with Tantalos)
231 +PARA_WININFO   = 7
232  +:wsystype (uint8)
233  +:socktype (uint8)
234  +:display (uint8)
235  +:screen (uint8)
236  +:addrlen (uint16)
237  +:addr (padded-string(:addrlen))
238  +:wins (dataarray)
239  +::window (uint32)
240 +PARA_PROPTABLE = 8
241  :(TODO)
242 +PARA_LTM       = 9
243*KICK,...
244 +OT_OUTPUT   =  5
245 +OT_MIXER    =  6
246 +OT_BRIDGE   =  7
247 +OT_LISTEN   =  8
248 +OT_ACTION   =  9
249 +OT_MSGQUEUE = 10 #(Message queue, message is gone as soon as one client took it)
250 +OT_MSGBUS   = 11 #(Message bus, message is gone as soon as all listening clients got it)
251*ATTACH
252 *ATTACH_SOURCE
253  :(TODO)
254 *ATTACH_OUTPUT
255  :(TODO)
256 +ATTACH_MIXER    = 4
257  :(TODO)
258 +ATTACH_BRIDGE   = 5
259  :(TODO)
260*SET_VOL
261 +SET_VOL_MS      = 3
262 +SET_VOL_UNMAPED = 4 #(like roarctls mono/stereo...)
263!SECTIONEND
264!SECTION: Codecs
265+AUTLAW  = NEEDS_CONST
266+MUUTLAW = NEEDS_CONST
267!SECTIONEND
Note: See TracBrowser for help on using the repository browser.