X-Git-Url: https://code.delx.au/pulseaudio/blobdiff_plain/3de129f3ac8dd6cf51178b266837db4d5e4a1215..ddd7a91f5d178c7f2972891ef95b565e24d2b210:/PROTOCOL diff --git a/PROTOCOL b/PROTOCOL index 3bd2894f..7468cd47 100644 --- a/PROTOCOL +++ b/PROTOCOL @@ -203,7 +203,98 @@ new flag at end of CREATE_PLAYBACK_STREAM: ## v19, implemented by >= 0.9.22 -New proplist field for sink input, source output introspection opcodes and at the end: +New flag at the end of sink input and source output introspection data: bool corked +## v20, implemented by >= 1.0 + +Two new flags at the end of sink input introspection data: + + bool has_volume + bool volume_writable + +## v21, implemented by >= 1.0 + +Changes for format negotiation in the extended API. + +New fields PA_COMMAND_CREATE_PLAYBACK_STREAM: + + uint8_t n_formats + format_info format1 + ... + format_info formatn + +One new field in reply from PA_COMMAND_CREATE_PLAYBACK_STREAM: + + format_info format + +New fields in reply from PA_COMMAND_GET_SINK_INFO (and thus +PA_COMMAND_GET_SINK_INFO_LIST) + + uint8_t n_formats + format_info format1 + ... + format_info formatn + +One new field in reply from PA_COMMAND_GET_SINK_INPUT_INFO (and thus +PA_COMMAND_GET_SINK_INPUT_INFO_LIST) + + format_info format + +## v22, implemented by >= 1.0 + +New fields PA_COMMAND_CREATE_RECORD_STREAM: + + uint8_t n_formats + format_info format1 + ... + format_info formatn + +One new field in reply from PA_COMMAND_CREATE_RECORD_STREAM: + + format_info format + +New fields in reply from PA_COMMAND_GET_SOURCE_INFO (and thus +PA_COMMAND_GET_SOURCE_INFO_LIST) + + uint8_t n_formats + format_info format1 + ... + format_info formatn + +Five new fields in reply from PA_COMMAND_GET_SOURCE_OUTPUT_INFO (and thus +PA_COMMAND_GET_SOURCE_OUTPUT_INFO_LIST) + + format_info format + volume + bool mute + bool has_volume + bool volume_writable + +## v23, implemented by >= 1.0 + +New field in PA_COMMAND_UNDERFLOW: + + int64_t index + +## v24, implemented by >= 2.0 + +New field in all commands that send/receive port introspection data +(PA_COMMAND_GET_(SOURCE|SINK)_OUTPUT_INFO, +PA_COMMAND_GET_(SOURCE|SINK)_OUTPUT_INFO_LIST): + + uint32_t available + +The field is added once for every port. + +## v25, implemented by >= 2.0 + +When port availability changes, send a subscription event for the +owning card. + +#### If you just changed the protocol, read this +## module-tunnel depends on the sink/source/sink-input/source-input protocol +## internals, so if you changed these, you might have broken module-tunnel. +## Don't forget to test module-tunnel-{source,sink} when pushing protocol +## changes.