--- web/trunk/www.linuxsampler.org/api/draft-linuxsampler-protocol.html 2006/12/20 19:40:37 991 +++ web/trunk/www.linuxsampler.org/api/draft-linuxsampler-protocol.html 2006/12/20 19:52:00 992 @@ -145,7 +145,7 @@
-This Internet-Draft will expire on June 18, 2007.
+This Internet-Draft will expire on June 23, 2007.
@@ -370,19 +370,35 @@
Command Syntax
8.
Events
- 8.1.
+ 8.1.
+Number of audio output devices changed
+ 8.2.
+Audio output device's settings changed
+ 8.3.
+Number of MIDI input devices changed
+ 8.4.
+MIDI input device's settings changed
+ 8.5.
Number of sampler channels changed
- 8.2.
+ 8.6.
Number of active voices changed
- 8.3.
+ 8.7.
Number of active disk streams changed
- 8.4.
+ 8.8.
Disk stream buffer fill state changed
- 8.5.
+ 8.9.
Channel information changed
- 8.6.
+ 8.10.
Total number of active voices changed
- 8.7.
+ 8.11.
+Number of MIDI instrument maps changed
+ 8.12.
+MIDI instrument map information changed
+ 8.13.
+Number of MIDI instruments changed
+ 8.14.
+MIDI instrument information changed
+ 8.15.
Miscellaneous and debugging events
9.
Security Considerations
@@ -6508,7 +6524,19 @@
subscribe_event =
-CHANNEL_COUNT +
AUDIO_OUTPUT_DEVICE_COUNT + +
+/ AUDIO_OUTPUT_DEVICE_INFO + +
+/ MIDI_INPUT_DEVICE_COUNT + +
+/ MIDI_INPUT_DEVICE_INFO + +
+/ CHANNEL_COUNT
/ VOICE_COUNT @@ -6523,6 +6551,18 @@
/ CHANNEL_INFO
+/ MIDI_INSTRUMENT_MAP_COUNT + +
+/ MIDI_INSTRUMENT_MAP_INFO + +
+/ MIDI_INSTRUMENT_COUNT + +
+/ MIDI_INSTRUMENT_INFO + +
/ MISCELLANEOUS
@@ -6535,7 +6575,19 @@unsubscribe_event =
-CHANNEL_COUNT +
AUDIO_OUTPUT_DEVICE_COUNT + +
+/ AUDIO_OUTPUT_DEVICE_INFO + +
+/ MIDI_INPUT_DEVICE_COUNT + +
+/ MIDI_INPUT_DEVICE_INFO + +
+/ CHANNEL_COUNT
/ VOICE_COUNT @@ -6550,6 +6602,18 @@
/ CHANNEL_INFO
+/ MIDI_INSTRUMENT_MAP_COUNT + +
+/ MIDI_INSTRUMENT_MAP_INFO + +
+/ MIDI_INSTRUMENT_COUNT + +
+/ MIDI_INSTRUMENT_INFO + +
/ MISCELLANEOUS
@@ -7118,9 +7182,133 @@This chapter will describe all currently defined events supported by LinuxSampler.
-
+
TOC 8.1. +Number of audio output devices changed
+ +Client may want to be notified when the total number of audio output devices on the + back-end changes by issuing the following command: +
++
++SUBSCRIBE AUDIO_OUTPUT_DEVICE_COUNT +
++ +
+Server will start sending the following notification messages: +
++
++"NOTIFY:AUDIO_OUTPUT_DEVICE_COUNT:<devices>" +
++ +
+where <devices> will be replaced by the new number + of audio output devices. +
+
++
TOC 8.2. +Audio output device's settings changed
+ +Client may want to be notified when changes were made to audio output devices on the + back-end by issuing the following command: +
++
++SUBSCRIBE AUDIO_OUTPUT_DEVICE_INFO +
++ +
+Server will start sending the following notification messages: +
++
++"NOTIFY:AUDIO_OUTPUT_DEVICE_INFO:<device-id>" +
++ +
+where <device-id> will be replaced by the numerical ID of the audio output device, + which settings has been changed. The front-end will have to send + the respective command to actually get the audio output device info. Because these messages + will be triggered by LSCP commands issued by other clients rather than real + time events happening on the server, it is believed that an empty notification + message is sufficient here. +
+
++
TOC 8.3. +Number of MIDI input devices changed
+ +Client may want to be notified when the total number of MIDI input devices on the + back-end changes by issuing the following command: +
++
++SUBSCRIBE MIDI_INPUT_DEVICE_COUNT +
++ +
+Server will start sending the following notification messages: +
++
++"NOTIFY:MIDI_INPUT_DEVICE_COUNT:<devices>" +
++ +
+where <devices> will be replaced by the new number + of MIDI input devices. +
+
++
TOC 8.4. +MIDI input device's settings changed
+ +Client may want to be notified when changes were made to MIDI input devices on the + back-end by issuing the following command: +
++
++SUBSCRIBE MIDI_INPUT_DEVICE_INFO +
++ +
+Server will start sending the following notification messages: +
++
++"NOTIFY:MIDI_INPUT_DEVICE_INFO:<device-id>" +
++ +
+where <device-id> will be replaced by the numerical ID of the MIDI input device, + which settings has been changed. The front-end will have to send + the respective command to actually get the MIDI input device info. Because these messages + will be triggered by LSCP commands issued by other clients rather than real + time events happening on the server, it is believed that an empty notification + message is sufficient here. +
+
++
TOC 8.5. Number of sampler channels changed
Client may want to be notified when the total number of channels on the @@ -7149,7 +7337,7 @@
-
TOC 8.2. +
8.6. Number of active voices changed
Client may want to be notified when the number of voices on the @@ -7179,7 +7367,7 @@
-
TOC 8.3. +
8.7. Number of active disk streams changed
Client may want to be notified when the number of streams on the back-end @@ -7209,7 +7397,7 @@
-
TOC 8.4. +
8.8. Disk stream buffer fill state changed
Client may want to be notified when the buffer fill state of a disk stream @@ -7238,9 +7426,9 @@ buffer fill data for this channel as described in Section 6.4.13 (Current fill state of disk stream buffers) as if the "GET CHANNEL BUFFER_FILL PERCENTAGE" (Current fill state of disk stream buffers) command was issued on this channel.
-
+
-
TOC 8.5. +
8.9. Channel information changed
Client may want to be notified when changes were made to sampler channels on the @@ -7273,7 +7461,7 @@
-
TOC 8.6. +
8.10. Total number of active voices changed
Client may want to be notified when the total number of voices on the @@ -7300,9 +7488,135 @@
where <voices> will be replaced by the new number of all currently active voices.
+
++
TOC 8.11. +Number of MIDI instrument maps changed
+ +Client may want to be notified when the number of MIDI instrument maps on the + back-end changes by issuing the following command: +
++
++SUBSCRIBE MIDI_INSTRUMENT_MAP_COUNT +
++ +
+Server will start sending the following notification messages: +
++
++"NOTIFY:MIDI_INSTRUMENT_MAP_COUNT:<maps>" +
++ +
+where <maps> will be replaced by the new number + of MIDI instrument maps. +
+
++
TOC 8.12. +MIDI instrument map information changed
+ +Client may want to be notified when changes were made to MIDI instrument maps on the + back-end by issuing the following command: +
++
++SUBSCRIBE MIDI_INSTRUMENT_MAP_INFO +
++ +
+Server will start sending the following notification messages: +
++
++"NOTIFY:MIDI_INSTRUMENT_MAP_INFO:<map-id>" +
++ +
+where <map-id> will be replaced by the numerical ID of the MIDI instrument map, + for which information changes occurred. The front-end will have to send + the respective command to actually get the MIDI instrument map info. Because these messages + will be triggered by LSCP commands issued by other clients rather than real + time events happening on the server, it is believed that an empty notification + message is sufficient here. +
+
++
TOC 8.13. +Number of MIDI instruments changed
+ +Client may want to be notified when the number of MIDI instrument maps on the + back-end changes by issuing the following command: +
++
++SUBSCRIBE MIDI_INSTRUMENT_COUNT +
++ +
+Server will start sending the following notification messages: +
++
++"NOTIFY:MIDI_INSTRUMENT_COUNT:<map-id> <instruments>" +
++ +
+where <map-id> is the numerical ID of the MIDI instrument map, in which + the nuber of instruments has changed and <instruments> will be replaced by + the new number of MIDI instruments in the specified map. +
+
++
TOC 8.14. +MIDI instrument information changed
+ +Client may want to be notified when changes were made to MIDI instruments on the + back-end by issuing the following command: +
++
++SUBSCRIBE MIDI_INSTRUMENT_INFO +
++ +
+Server will start sending the following notification messages: +
++
++"NOTIFY:MIDI_INSTRUMENT_INFO:<map-id> <bank> <program>" +
++ +
+where <map-id> will be replaced by the numerical ID of the MIDI instrument map, + in which a MIDI instrument is changed. <bank> and <program> specifies + the location of the changed MIDI instrument in the map. The front-end will have to send + the respective command to actually get the MIDI instrument info. Because these messages + will be triggered by LSCP commands issued by other clients rather than real + time events happening on the server, it is believed that an empty notification + message is sufficient here. +
-
TOC 8.7. +
8.15. Miscellaneous and debugging events
Client may want to be notified of miscellaneous and debugging events occurring at