1 ### v8, implemented by >= 0.8
3 First version supported.
5 ### v9, implemented by >= 0.9.0
7 Reply for PA_COMMAND_CREATE_PLAYBACK_STREAM,
8 PA_COMMAND_CREATE_RECORD_STREAM now returns buffer_attrs that are used:
10 Four new fields in reply of PA_COMMAND_CREATE_PLAYBACK_STREAM:
17 Two new fields in reply of PA_COMMAND_CREATE_RECORD_STREAM:
22 ### v10, implemented by >= 0.9.5
26 PA_COMMAND_MOVE_SINK_INPUT
27 PA_COMMAND_MOVE_SOURCE_OUTPUT
29 SHM data transfer support
31 ### v11, implemented by >= 0.9.7
33 Reply to to PA_COMMAND_GET_SINK_INPUT_INFO, PA_COMMAND_GET_SINK_INPUT_INFO_LIST gets new field at the end:
39 PA_COMMAND_SET_SINK_INPUT_MUTE
40 PA_COMMAND_SUSPEND_SINK
41 PA_COMMAND_SUSPEND_SOURCE
43 ### v12, implemented by >= 0.9.8
45 S32LE, S32BE is now known as sample spec.
47 Gained six new bool fields for PA_COMMAND_CREATE_PLAYBACK_STREAM, PA_COMMAND_CREATE_RECORD_STREAM request at the end:
57 Reply to these opcodes now includes:
65 New opcodes for changing buffer attrs:
67 PA_COMMAND_SET_PLAYBACK_STREAM_BUFFER_ATTR
68 PA_COMMAND_SET_RECORD_STREAM_BUFFER_ATTR
70 New opcodes for changing sampling rate:
72 PA_COMMAND_UPDATE_PLAYBACK_STREAM_SAMPLE_RATE
73 PA_COMMAND_UPDATE_RECORD_STREAM_SAMPLE_RATE
75 New opcodes for notifications:
77 PA_COMMAND_PLAYBACK_STREAM_SUSPENDED
78 PA_COMMAND_CAPTURE_STREAM_SUSPENDED
79 PA_COMMAND_PLAYBACK_STREAM_MOVED
80 PA_COMMAND_CAPTURE_STREAM_MOVED
82 ### v13, implemented by >= 0.9.11
84 New fields for PA_COMMAND_CREATE_PLAYBACK_STREAM, PA_COMMAND_CREATE_RECORD_STREAM request at the end:
89 Replace field "name" for PA_COMMAND_CREATE_PLAYBACK_STREAM, PA_COMMAND_CREATE_RECORD_STREAM at the end:
93 Replace field "name" for PA_COMMAND_SET_CLIENT_NAME request at the end:
97 On response of PA_COMMAND_SET_CLIENT_NAME:
101 New proplist field for sink, source, sink input, source output introspection opcodes and at the end:
105 New opcodes for proplist modifications
107 PA_COMMAND_UPDATE_RECORD_STREAM_PROPLIST
108 PA_COMMAND_UPDATE_PLAYBACK_STREAM_PROPLIST
109 PA_COMMAND_UPDATE_CLIENT_PROPLIST
110 PA_COMMAND_REMOVE_RECORD_STREAM_PROPLIST
111 PA_COMMAND_REMOVE_PLAYBACK_STREAM_PROPLIST
112 PA_COMMAND_REMOVE_CLIENT_PROPLIST
114 New field for PA_COMMAND_PLAY_SAMPLE:
118 New field for PA_COMMAND_PLAY_SAMPLE response:
122 New field for PA_COMMAND_CREATE_PLAYBACK_STREAM at the end:
126 Buffer attributes for PA_COMMAND_CREATE_PLAYBACK_STREAM and
127 PA_COMMAND_CREATE_RECORD_STREAM may now be 0 for default values.
129 New field for PA_COMMAND_SET_PLAYBACK_STREAM_BUFFER_ATTR,
130 PA_COMMAND_SET_RECORD_STREAM_BUFFER_ATTR at the end:
132 adjust_latency (bool)
138 ### v14, implemented by >= 0.9.12
144 PA_COMMAND_CREATE_PLAYBACK_STREAM:
146 bool volume_set at the end
148 PA_COMMAND_CREATE_RECORD_STREAM, PA_COMMAND_CREATE_PLAYBACK_STREAM:
150 bool early_requests at the end
152 New field for PA_COMMAND_SET_PLAYBACK_STREAM_BUFFER_ATTR,
153 PA_COMMAND_SET_RECORD_STREAM_BUFFER_ATTR at the end:
155 early_requests (bool)
157 ### v15, implemented by >= 0.9.15
159 PA_COMMAND_CREATE_PLAYBACK_STREAM
161 bool muted at the end
163 PA_COMMAND_CREATE_PLAYBACK_STREAM, PA_COMMAND_CREATE_RECORD_STREAM:
165 bool dont_inhibit_auto_suspend at the end
167 PA_COMMAND_GET_MODULE_INFO_LIST
169 remove bool auto_unload
170 add proplist at the end
174 PA_COMMAND_GET_CARD_INFO
175 PA_COMMAND_GET_CARD_INFO_LIST
176 PA_COMMAND_SET_CARD_PROFILE
178 PA_COMMAND_CLIENT_EVENT
179 PA_COMMAND_PLAYBACK_STREAM_EVENT
180 PA_COMMAND_RECORD_STREAM_EVENT
182 PA_COMMAND_PLAYBACK_BUFFER_ATTR_CHANGED
183 PA_COMMAND_RECORD_BUFFER_ATTR_CHANGED
185 ### v16, implemented by >= 0.9.15
189 PA_COMMAND_SET_SINK_PORT
190 PA_COMMAND_SET_SOURCE_PORT
192 ## v17, implemented by >= 0.9.20
194 new flag at end of CREATE_PLAYBACK_STREAM:
198 ## v18, implemented by >= 0.9.22
200 new flag at end of CREATE_PLAYBACK_STREAM:
204 ## v19, implemented by >= 0.9.22
206 New flag at the end of sink input and source output introspection data:
210 ## v20, implemented by >= 1.0
212 Two new flags at the end of sink input introspection data:
217 ## v21, implemented by >= 1.0
219 Changes for format negotiation in the extended API.
221 New fields PA_COMMAND_CREATE_PLAYBACK_STREAM:
228 One new field in reply from PA_COMMAND_CREATE_PLAYBACK_STREAM:
232 New fields in reply from PA_COMMAND_GET_SINK_INFO (and thus
233 PA_COMMAND_GET_SINK_INFO_LIST)
240 One new field in reply from PA_COMMAND_GET_SINK_INPUT_INFO (and thus
241 PA_COMMAND_GET_SINK_INPUT_INFO_LIST)
245 ## v22, implemented by >= 1.0
247 New fields PA_COMMAND_CREATE_RECORD_STREAM:
260 One new field in reply from PA_COMMAND_CREATE_RECORD_STREAM:
264 New fields in reply from PA_COMMAND_GET_SOURCE_INFO (and thus
265 PA_COMMAND_GET_SOURCE_INFO_LIST)
272 Five new fields in reply from PA_COMMAND_GET_SOURCE_OUTPUT_INFO (and thus
273 PA_COMMAND_GET_SOURCE_OUTPUT_INFO_LIST)
281 ## v23, implemented by >= 1.0
283 New field in PA_COMMAND_UNDERFLOW:
287 ## v24, implemented by >= 2.0
289 New field in all commands that send/receive port introspection data
290 (PA_COMMAND_GET_(SOURCE|SINK)_INFO,
291 PA_COMMAND_GET_(SOURCE|SINK)_INFO_LIST):
295 The field is added once for every port.
297 ## v25, implemented by >= 2.0
299 When port availability changes, send a subscription event for the
302 ## v26, implemented by >= 2.0
304 In reply from PA_COMMAND_GET_CARD_INFO (and thus
305 PA_COMMAND_GET_CARD_INFO_LIST), the following is added:
309 ...followed by n_ports extended port entries, which look like this:
318 string profile_name_1
320 string profile_name_n
322 Profile names must match earlier sent profile names for the same card.
325 #### If you just changed the protocol, read this
326 ## module-tunnel depends on the sink/source/sink-input/source-input protocol
327 ## internals, so if you changed these, you might have broken module-tunnel.
328 ## Don't forget to test module-tunnel-{source,sink} when pushing protocol