source: roaraudio/doc/new-cmds @ 4422:b717652c7f77

Last change on this file since 4422:b717652c7f77 was 4422:b717652c7f77, checked in by phi, 12 years ago

changed vendor format a bit, added example

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