16 |
to an annoying "missing Normative/Informative References" error message --> |
to an annoying "missing Normative/Informative References" error message --> |
17 |
<?rfc strict="no" ?> |
<?rfc strict="no" ?> |
18 |
|
|
19 |
<rfc category="std" ipr="full3978" docName="LSCP 1.5"> |
<rfc category="std" ipr="full3978" docName="LSCP 1.6"> |
20 |
<front> |
<front> |
21 |
<title>LinuxSampler Control Protocol</title> |
<title>LinuxSampler Control Protocol</title> |
22 |
<author initials='C.S.' surname="Schoenebeck" fullname='C. |
<author initials='C.S.' surname="Schoenebeck" fullname='C. |
23 |
Schoenebeck'> |
Schoenebeck'> |
24 |
<organization> |
<organization> |
25 |
Interessengemeinschaft Software Engineering e. V. |
LinuxSampler.org |
26 |
</organization> |
</organization> |
27 |
<address> |
<address> |
28 |
<postal> |
<postal> |
29 |
<street>Max-Planck-Str. 39</street> |
<street>Crudebyte Engineering</street> |
30 |
|
<street>Hofgartenstr. 3</street> |
31 |
<!-- <code>74081</code> --> |
<!-- <code>74081</code> --> |
32 |
<city>74081 Heilbronn</city> |
<city>74189 Weinsberg</city> |
33 |
<country>Germany</country> |
<country>Germany</country> |
34 |
</postal> |
</postal> |
35 |
<email>schoenebeck at software minus engineering dot org</email> |
<phone>+49 7134 911614</phone> |
36 |
|
<email>cuse@users.sf.net</email> |
37 |
</address> |
</address> |
38 |
</author> |
</author> |
39 |
<date month="October" year="2010"/> |
<date month="January" year="2014"/> |
40 |
<workgroup>LinuxSampler Developers</workgroup> |
<workgroup>LinuxSampler Developers</workgroup> |
41 |
<keyword>LSCP</keyword> |
<keyword>LSCP</keyword> |
42 |
<abstract> |
<abstract> |
2424 |
<t> |
<t> |
2425 |
<list> |
<list> |
2426 |
<t>C: "LIST AVAILABLE_ENGINES"</t> |
<t>C: "LIST AVAILABLE_ENGINES"</t> |
2427 |
<t>S: "'GigEngine','AkaiEngine','DLSEngine','JoesCustomEngine'"</t> |
<t>S: "'gig','sfz','sf2'"</t> |
2428 |
</list> |
</list> |
2429 |
</t> |
</t> |
2430 |
</section> |
</section> |
2470 |
|
|
2471 |
<t>The mentioned fields above don't have to be in particular order.</t> |
<t>The mentioned fields above don't have to be in particular order.</t> |
2472 |
|
|
2473 |
<t>Example:</t> |
<t>Examples:</t> |
2474 |
<t> |
<t> |
2475 |
<list> |
<list> |
2476 |
<t>C: "GET ENGINE INFO JoesCustomEngine"</t> |
<t>C: "GET ENGINE INFO gig"</t> |
2477 |
<t>S: "DESCRIPTION: this is Joe's custom sampler engine"</t> |
<t>S: "DESCRIPTION: GigaSampler Format Engine"</t> |
2478 |
<t> "VERSION: testing-1.0"</t> |
<t> "VERSION: 1.110"</t> |
2479 |
|
<t> "."</t> |
2480 |
|
<t>C: "GET ENGINE INFO sf2"</t> |
2481 |
|
<t>S: "DESCRIPTION: SoundFont Format Engine"</t> |
2482 |
|
<t> "VERSION: 1.4"</t> |
2483 |
|
<t> "."</t> |
2484 |
|
<t>C: "GET ENGINE INFO sfz"</t> |
2485 |
|
<t>S: "DESCRIPTION: SFZ Format Engine"</t> |
2486 |
|
<t> "VERSION: 1.11"</t> |
2487 |
<t> "."</t> |
<t> "."</t> |
2488 |
</list> |
</list> |
2489 |
</t> |
</t> |
2577 |
</t> |
</t> |
2578 |
<t>MIDI_INPUT_DEVICE - |
<t>MIDI_INPUT_DEVICE - |
2579 |
<list> |
<list> |
2580 |
|
<t>DEPRECATED: THIS FIELD WILL DISAPPEAR!</t> |
2581 |
<t>numerical ID of the MIDI input device which is |
<t>numerical ID of the MIDI input device which is |
2582 |
currently connected to this sampler channel to deliver |
currently connected to this sampler channel to deliver |
2583 |
MIDI input commands, "-1" if there's no device |
MIDI input commands, "-1" if there's no device |
2584 |
connected to this sampler channel</t> |
connected to this sampler channel</t> |
2585 |
|
<t>Should not be used anymore as of LSCP v1.6 and younger. |
2586 |
|
This field is currently only preserved for backward compatibility. |
2587 |
|
</t> |
2588 |
|
<t>This field a relict from times where only one MIDI input per |
2589 |
|
sampler channel was allowed. Use <xref target="LIST CHANNEL MIDI_INPUTS">"GET CHANNEL MIDI_INPUTS"</xref> |
2590 |
|
instead.</t> |
2591 |
</list> |
</list> |
2592 |
</t> |
</t> |
2593 |
<t>MIDI_INPUT_PORT - |
<t>MIDI_INPUT_PORT - |
2594 |
<list> |
<list> |
2595 |
|
<t>DEPRECATED: THIS FIELD WILL DISAPPEAR!</t> |
2596 |
<t>port number of the MIDI input device (in case a |
<t>port number of the MIDI input device (in case a |
2597 |
MIDI device was already assigned to the sampler |
MIDI device was already assigned to the sampler |
2598 |
channel)</t> |
channel)</t> |
2599 |
|
<t>Should not be used anymore as of LSCP v1.6 and younger. |
2600 |
|
This field is currently only preserved for backward compatibility. |
2601 |
|
</t> |
2602 |
|
<t>This field a relict from times where only one MIDI input per |
2603 |
|
sampler channel was allowed. Use <xref target="LIST CHANNEL MIDI_INPUTS">"GET CHANNEL MIDI_INPUTS"</xref> |
2604 |
|
instead.</t> |
2605 |
</list> |
</list> |
2606 |
</t> |
</t> |
2607 |
<t>MIDI_INPUT_CHANNEL - |
<t>MIDI_INPUT_CHANNEL - |
2650 |
<t> |
<t> |
2651 |
<list> |
<list> |
2652 |
<t>C: "GET CHANNEL INFO 34"</t> |
<t>C: "GET CHANNEL INFO 34"</t> |
2653 |
<t>S: "ENGINE_NAME: GigEngine"</t> |
<t>S: "ENGINE_NAME: gig"</t> |
2654 |
<t> "VOLUME: 1.0"</t> |
<t> "VOLUME: 1.0"</t> |
2655 |
<t> "AUDIO_OUTPUT_DEVICE: 0"</t> |
<t> "AUDIO_OUTPUT_DEVICE: 0"</t> |
2656 |
<t> "AUDIO_OUTPUT_CHANNELS: 2"</t> |
<t> "AUDIO_OUTPUT_CHANNELS: 2"</t> |
2827 |
</section> |
</section> |
2828 |
|
|
2829 |
<section title="Setting audio output type" anchor="SET CHANNEL AUDIO_OUTPUT_TYPE"> |
<section title="Setting audio output type" anchor="SET CHANNEL AUDIO_OUTPUT_TYPE"> |
2830 |
<t>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!</t> |
<t>DEPRECATED: THIS COMMAND WILL DISAPPEAR!</t> |
2831 |
|
|
2832 |
<t>The front-end can alter the audio output type on a specific sampler |
<t>The front-end can alter the audio output type on a specific sampler |
2833 |
channel by sending the following command:</t> |
channel by sending the following command:</t> |
2867 |
<t></t> |
<t></t> |
2868 |
</list> |
</list> |
2869 |
</t> |
</t> |
2870 |
|
<t>Deprecated:</t> |
2871 |
|
<t> |
2872 |
|
<list> |
2873 |
|
<t>Should not be used anymore. This command is currently only preserved for backward compatibility.</t> |
2874 |
|
<t>This command is a relict from times where there was no sophisticated driver management yet. Use <xref target="CREATE AUDIO_OUTPUT_DEVICE">"CREATE AUDIO_OUTPUT_DEVICE"</xref> and <xref target="SET CHANNEL AUDIO_OUTPUT_DEVICE">"SET CHANNEL AUDIO_OUTPUT_DEVICE"</xref> instead.</t> |
2875 |
|
</list> |
2876 |
|
</t> |
2877 |
</section> |
</section> |
2878 |
|
|
2879 |
<section title="Setting audio output channel" anchor="SET CHANNEL AUDIO_OUTPUT_CHANNEL"> |
<section title="Setting audio output channel" anchor="SET CHANNEL AUDIO_OUTPUT_CHANNEL"> |
2921 |
</t> |
</t> |
2922 |
</section> |
</section> |
2923 |
|
|
2924 |
|
<section title="Add MIDI input to sampler channel" anchor="ADD CHANNEL MIDI_INPUT"> |
2925 |
|
<t>The front-end can add a MIDI input on a specific sampler |
2926 |
|
channel by sending the following command:</t> |
2927 |
|
<t> |
2928 |
|
<list> |
2929 |
|
<t>ADD CHANNEL MIDI_INPUT <sampler-channel> <midi-device-id> [<midi-input-port>]</t> |
2930 |
|
</list> |
2931 |
|
</t> |
2932 |
|
<t>Where <sampler-channel> is the sampler channel number |
2933 |
|
as returned by the <xref target="ADD CHANNEL">"ADD CHANNEL"</xref> |
2934 |
|
or <xref target="LIST CHANNELS">"LIST CHANNELS"</xref> command |
2935 |
|
and <midi-device-id> is the numerical ID of the MIDI input |
2936 |
|
device as returned by the |
2937 |
|
<xref target="CREATE MIDI_INPUT_DEVICE">"CREATE MIDI_INPUT_DEVICE"</xref> |
2938 |
|
or <xref target="LIST MIDI_INPUT_DEVICES">"LIST MIDI_INPUT_DEVICES"</xref> command, |
2939 |
|
and <midi-input-port> is an optional MIDI input port number of that |
2940 |
|
MIDI input device. If <midi-input-port> is omitted, |
2941 |
|
then the MIDI input device's first port (port number 0) is |
2942 |
|
used. |
2943 |
|
</t> |
2944 |
|
|
2945 |
|
<t>Possible Answers:</t> |
2946 |
|
<t> |
2947 |
|
<list> |
2948 |
|
<t>"OK" - |
2949 |
|
<list> |
2950 |
|
<t>on success</t> |
2951 |
|
</list> |
2952 |
|
</t> |
2953 |
|
<t>"WRN:<warning-code>:<warning-message>" - |
2954 |
|
<list> |
2955 |
|
<t>if MIDI input port was connected, but there are noteworthy |
2956 |
|
issue(s) related, providing an appropriate warning code and |
2957 |
|
warning message</t> |
2958 |
|
</list> |
2959 |
|
</t> |
2960 |
|
<t>"ERR:<error-code>:<error-message>" - |
2961 |
|
<list> |
2962 |
|
<t>in case it failed, providing an appropriate error code and error message</t> |
2963 |
|
</list> |
2964 |
|
</t> |
2965 |
|
</list> |
2966 |
|
</t> |
2967 |
|
<t>Examples:</t> |
2968 |
|
<t> |
2969 |
|
<list> |
2970 |
|
<t>C: "ADD CHANNEL MIDI_INPUT 0 0"</t> |
2971 |
|
<t>S: "OK"</t> |
2972 |
|
<t>C: "ADD CHANNEL MIDI_INPUT 1 0"</t> |
2973 |
|
<t>S: "OK"</t> |
2974 |
|
<t>C: "ADD CHANNEL MIDI_INPUT 1 1 1"</t> |
2975 |
|
<t>S: "OK"</t> |
2976 |
|
<t>C: "ADD CHANNEL MIDI_INPUT 1 2 0"</t> |
2977 |
|
<t>S: "OK"</t> |
2978 |
|
</list> |
2979 |
|
</t> |
2980 |
|
<t>Since:</t> |
2981 |
|
<t> |
2982 |
|
<list> |
2983 |
|
<t>Introduced with LSCP v1.6</t> |
2984 |
|
</list> |
2985 |
|
</t> |
2986 |
|
</section> |
2987 |
|
|
2988 |
|
<section title="Remove MIDI input(s) from sampler channel" anchor="REMOVE CHANNEL MIDI_INPUT"> |
2989 |
|
<t>The front-end can remove one ore more MIDI input(s) on a |
2990 |
|
specific sampler channel by sending the following command:</t> |
2991 |
|
<t> |
2992 |
|
<list> |
2993 |
|
<t>REMOVE CHANNEL MIDI_INPUT <sampler-channel> [<midi-device-id> [<midi-input-port>]]</t> |
2994 |
|
</list> |
2995 |
|
</t> |
2996 |
|
<t>Where <sampler-channel> is the sampler channel number |
2997 |
|
as returned by the <xref target="ADD CHANNEL">"ADD CHANNEL"</xref> |
2998 |
|
or <xref target="LIST CHANNELS">"LIST CHANNELS"</xref> command |
2999 |
|
and <midi-device-id> and <midi-input-port> are |
3000 |
|
optional numerical IDs defining the MIDI input device and |
3001 |
|
one of its MIDI ports as returned by the |
3002 |
|
<xref target="LIST CHANNEL MIDI_INPUTS">"LIST CHANNEL MIDI_INPUTS"</xref> command. |
3003 |
|
</t> |
3004 |
|
|
3005 |
|
<t> |
3006 |
|
If <midi-input-port> is omitted, then all MIDI input |
3007 |
|
ports of <midi-device-id> are disconnected from this |
3008 |
|
sampler channel. |
3009 |
|
</t> |
3010 |
|
|
3011 |
|
<t> |
3012 |
|
If both, <midi-device-id> and <midi-input-port> |
3013 |
|
are omitted, then all MIDI input ports currently connected |
3014 |
|
to this sampler channel are disconnected from this sampler |
3015 |
|
channel. |
3016 |
|
</t> |
3017 |
|
|
3018 |
|
<t>Possible Answers:</t> |
3019 |
|
<t> |
3020 |
|
<list> |
3021 |
|
<t>"OK" - |
3022 |
|
<list> |
3023 |
|
<t>on success</t> |
3024 |
|
</list> |
3025 |
|
</t> |
3026 |
|
<t>"WRN:<warning-code>:<warning-message>" - |
3027 |
|
<list> |
3028 |
|
<t>if MIDI input porst were disconnected, but there are noteworthy |
3029 |
|
issue(s) related, providing an appropriate warning code and |
3030 |
|
warning message</t> |
3031 |
|
</list> |
3032 |
|
</t> |
3033 |
|
<t>"ERR:<error-code>:<error-message>" - |
3034 |
|
<list> |
3035 |
|
<t>in case it failed, providing an appropriate error code and error message</t> |
3036 |
|
</list> |
3037 |
|
</t> |
3038 |
|
</list> |
3039 |
|
</t> |
3040 |
|
<t>Examples:</t> |
3041 |
|
<t> |
3042 |
|
<list> |
3043 |
|
<t>C: "REMOVE CHANNEL MIDI_INPUT 0"</t> |
3044 |
|
<t>S: "OK"</t> |
3045 |
|
<t>C: "REMOVE CHANNEL MIDI_INPUT 1"</t> |
3046 |
|
<t>S: "OK"</t> |
3047 |
|
<t>C: "REMOVE CHANNEL MIDI_INPUT 1 2 0"</t> |
3048 |
|
<t>S: "OK"</t> |
3049 |
|
</list> |
3050 |
|
</t> |
3051 |
|
<t>Since:</t> |
3052 |
|
<t> |
3053 |
|
<list> |
3054 |
|
<t>Introduced with LSCP v1.6</t> |
3055 |
|
</list> |
3056 |
|
</t> |
3057 |
|
</section> |
3058 |
|
|
3059 |
|
<section title="Getting all MIDI inputs of a sampler channel" anchor="LIST CHANNEL MIDI_INPUTS"> |
3060 |
|
<t>The front-end can query a list of all currently connected |
3061 |
|
MIDI inputs of a certain sampler channel by sending the following |
3062 |
|
command:</t> |
3063 |
|
<t> |
3064 |
|
<list> |
3065 |
|
<t>LIST CHANNEL MIDI_INPUTS <sampler-channel></t> |
3066 |
|
</list> |
3067 |
|
</t> |
3068 |
|
<t>Where <sampler-channel> is the sampler channel number |
3069 |
|
as returned by the <xref target="ADD CHANNEL">"ADD CHANNEL"</xref> |
3070 |
|
or <xref target="LIST CHANNELS">"LIST CHANNELS"</xref> command. |
3071 |
|
</t> |
3072 |
|
|
3073 |
|
<t>Possible Answers:</t> |
3074 |
|
<t> |
3075 |
|
<list> |
3076 |
|
<t>The sampler will answer by sending a comma separated |
3077 |
|
list of MIDI input device ID - MIDI input port number pairs, where |
3078 |
|
each pair is encapsulated into curly braces. The |
3079 |
|
list is returned in one single line. The MIDI input |
3080 |
|
device ID corresponds to the number returned by |
3081 |
|
<xref target="LIST MIDI_INPUT_DEVICES">"LIST MIDI_INPUT_DEVICES"</xref> |
3082 |
|
and the port number is the index of the respective MIDI |
3083 |
|
port of that MIDI input device.</t> |
3084 |
|
</list> |
3085 |
|
</t> |
3086 |
|
|
3087 |
|
<t>Example:</t> |
3088 |
|
<t> |
3089 |
|
<list> |
3090 |
|
<t>C: "LIST CHANNEL MIDI_INPUTS 0"</t> |
3091 |
|
<t>S: "{0,0},{1,3},{2,0}"</t> |
3092 |
|
</list> |
3093 |
|
</t> |
3094 |
|
|
3095 |
|
<t>Since:</t> |
3096 |
|
<t> |
3097 |
|
<list> |
3098 |
|
<t>Introduced with LSCP v1.6</t> |
3099 |
|
</list> |
3100 |
|
</t> |
3101 |
|
</section> |
3102 |
|
|
3103 |
<section title="Setting MIDI input device" anchor="SET CHANNEL MIDI_INPUT_DEVICE"> |
<section title="Setting MIDI input device" anchor="SET CHANNEL MIDI_INPUT_DEVICE"> |
3104 |
|
<t>DEPRECATED: THIS COMMAND WILL DISAPPEAR!</t> |
3105 |
|
|
3106 |
<t>The front-end can set the MIDI input device on a specific sampler |
<t>The front-end can set the MIDI input device on a specific sampler |
3107 |
channel by sending the following command:</t> |
channel by sending the following command:</t> |
3108 |
<t> |
<t> |
3117 |
<xref target="CREATE MIDI_INPUT_DEVICE">"CREATE MIDI_INPUT_DEVICE"</xref> |
<xref target="CREATE MIDI_INPUT_DEVICE">"CREATE MIDI_INPUT_DEVICE"</xref> |
3118 |
or <xref target="LIST MIDI_INPUT_DEVICES">"LIST MIDI_INPUT_DEVICES"</xref> command.</t> |
or <xref target="LIST MIDI_INPUT_DEVICES">"LIST MIDI_INPUT_DEVICES"</xref> command.</t> |
3119 |
|
|
3120 |
|
<t> |
3121 |
|
If more than 1 MIDI inputs are currently connected to this |
3122 |
|
sampler channel: Sending this command will disconnect ALL |
3123 |
|
currently connected MIDI input ports connected to this |
3124 |
|
sampler channel before establishing the new MIDI input |
3125 |
|
connection. So this command does NOT add the connection, |
3126 |
|
it replaces all existing ones instead. This behavior is due |
3127 |
|
to preserving full behavior backward compatibility. |
3128 |
|
</t> |
3129 |
|
|
3130 |
<t>Possible Answers:</t> |
<t>Possible Answers:</t> |
3131 |
<t> |
<t> |
3132 |
<list> |
<list> |
3155 |
<t></t> |
<t></t> |
3156 |
</list> |
</list> |
3157 |
</t> |
</t> |
3158 |
|
<t>Deprecated:</t> |
3159 |
|
<t> |
3160 |
|
<list> |
3161 |
|
<t>Should not be used anymore as of LSCP v1.6 and younger. This command is currently only preserved for backward compatibility.</t> |
3162 |
|
<t>This command is a relict from times where only one MIDI input per sampler channel was allowed. Use <xref target="ADD CHANNEL MIDI_INPUT">"ADD CHANNEL MIDI_INPUT"</xref> and <xref target="REMOVE CHANNEL MIDI_INPUT">"REMOVE CHANNEL MIDI_INPUT"</xref> instead.</t> |
3163 |
|
</list> |
3164 |
|
</t> |
3165 |
</section> |
</section> |
3166 |
|
|
3167 |
<section title="Setting MIDI input type" anchor="SET CHANNEL MIDI_INPUT_TYPE"> |
<section title="Setting MIDI input type" anchor="SET CHANNEL MIDI_INPUT_TYPE"> |
3168 |
<t>DEPRECATED: THIS COMMAND WILL DISAPPEAR SOON!</t> |
<t>DEPRECATED: THIS COMMAND WILL DISAPPEAR!</t> |
3169 |
|
|
3170 |
<t>The front-end can alter the MIDI input type on a specific sampler |
<t>The front-end can alter the MIDI input type on a specific sampler |
3171 |
channel by sending the following command:</t> |
channel by sending the following command:</t> |
3177 |
<t>Where <midi-input-type> is currently only "ALSA" and |
<t>Where <midi-input-type> is currently only "ALSA" and |
3178 |
<sampler-channel> is the respective sampler channel number.</t> |
<sampler-channel> is the respective sampler channel number.</t> |
3179 |
|
|
3180 |
|
<t> |
3181 |
|
If more than 1 MIDI inputs are currently connected to this |
3182 |
|
sampler channel: Sending this command will disconnect ALL |
3183 |
|
currently connected MIDI input ports connected to this |
3184 |
|
sampler channel before establishing the new MIDI input |
3185 |
|
connection. So this command does NOT add the connection, |
3186 |
|
it replaces all existing ones instead. This behavior is due |
3187 |
|
to preserving full behavior backward compatibility. |
3188 |
|
</t> |
3189 |
|
|
3190 |
<t>Possible Answers:</t> |
<t>Possible Answers:</t> |
3191 |
<t> |
<t> |
3192 |
<list> |
<list> |
3215 |
<t></t> |
<t></t> |
3216 |
</list> |
</list> |
3217 |
</t> |
</t> |
3218 |
|
<t>Deprecated:</t> |
3219 |
|
<t> |
3220 |
|
<list> |
3221 |
|
<t>Should not be used anymore. This command is currently only preserved for backward compatibility.</t> |
3222 |
|
<t>This command is a relict from times where only 1 MIDI input per sampler channels was allowed and where no sophisticated driver management existed yet. Use <xref target="ADD CHANNEL MIDI_INPUT">"ADD CHANNEL MIDI_INPUT"</xref> and <xref target="REMOVE CHANNEL MIDI_INPUT">"REMOVE CHANNEL MIDI_INPUT"</xref> instead.</t> |
3223 |
|
</list> |
3224 |
|
</t> |
3225 |
</section> |
</section> |
3226 |
|
|
3227 |
<section title="Setting MIDI input port" anchor="SET CHANNEL MIDI_INPUT_PORT"> |
<section title="Setting MIDI input port" anchor="SET CHANNEL MIDI_INPUT_PORT"> |
3228 |
|
<t>DEPRECATED: THIS COMMAND WILL DISAPPEAR!</t> |
3229 |
|
|
3230 |
<t>The front-end can alter the MIDI input port on a specific sampler |
<t>The front-end can alter the MIDI input port on a specific sampler |
3231 |
channel by sending the following command:</t> |
channel by sending the following command:</t> |
3232 |
<t> |
<t> |
3237 |
<t>Where <midi-input-port> is a MIDI input port number of the |
<t>Where <midi-input-port> is a MIDI input port number of the |
3238 |
MIDI input device connected to the sampler channel given by |
MIDI input device connected to the sampler channel given by |
3239 |
<sampler-channel>.</t> |
<sampler-channel>.</t> |
3240 |
|
|
3241 |
|
<t> |
3242 |
|
If more than 1 MIDI inputs are currently connected to this |
3243 |
|
sampler channel: Sending this command will switch the |
3244 |
|
connection of the first (and only the first) MIDI input port |
3245 |
|
currently being connected to this sampler channel, to |
3246 |
|
another port of the same MIDI input device. Or in other |
3247 |
|
words: the first MIDI input port currently connected to |
3248 |
|
this sampler channel will be disconnected, and the requested |
3249 |
|
other port of its MIDI input device will be connected to |
3250 |
|
this sampler channel instead. This behavior is due |
3251 |
|
to preserving full behavior backward compatibility. |
3252 |
|
</t> |
3253 |
|
|
3254 |
<t>Possible Answers:</t> |
<t>Possible Answers:</t> |
3255 |
<t> |
<t> |
3279 |
<t></t> |
<t></t> |
3280 |
</list> |
</list> |
3281 |
</t> |
</t> |
3282 |
|
<t>Deprecated:</t> |
3283 |
|
<t> |
3284 |
|
<list> |
3285 |
|
<t>Should not be used anymore. This command is currently only preserved for backward compatibility.</t> |
3286 |
|
<t>This command is a relict from times where only one MIDI input per sampler channel was allowed. Use <xref target="ADD CHANNEL MIDI_INPUT">"ADD CHANNEL MIDI_INPUT"</xref> and <xref target="REMOVE CHANNEL MIDI_INPUT">"REMOVE CHANNEL MIDI_INPUT"</xref> instead.</t> |
3287 |
|
</list> |
3288 |
|
</t> |
3289 |
</section> |
</section> |
3290 |
|
|
3291 |
<section title="Setting MIDI input channel" anchor="SET CHANNEL MIDI_INPUT_CHANNEL"> |
<section title="Setting MIDI input channel" anchor="SET CHANNEL MIDI_INPUT_CHANNEL"> |
3296 |
<t>SET CHANNEL MIDI_INPUT_CHANNEL <sampler-channel> <midi-input-chan></t> |
<t>SET CHANNEL MIDI_INPUT_CHANNEL <sampler-channel> <midi-input-chan></t> |
3297 |
</list> |
</list> |
3298 |
</t> |
</t> |
3299 |
<t>Where <midi-input-chan> is the number of the new MIDI input channel where |
<t>Where <midi-input-chan> is the number |
3300 |
<sampler-channel> should listen to or "ALL" to listen on all 16 MIDI |
of the new MIDI input channel (zero indexed!) where |
3301 |
|
<sampler-channel> should listen to, or "ALL" to listen on all 16 MIDI |
3302 |
channels.</t> |
channels.</t> |
3303 |
|
|
3304 |
<t>Possible Answers:</t> |
<t>Possible Answers:</t> |
3326 |
<t>Examples:</t> |
<t>Examples:</t> |
3327 |
<t> |
<t> |
3328 |
<list> |
<list> |
3329 |
<t></t> |
<t>C: "SET CHANNEL MIDI_INPUT_CHANNEL 0 0"</t> |
3330 |
|
<t>S: "OK"</t> |
3331 |
|
<t>C: "SET CHANNEL MIDI_INPUT_CHANNEL 1 ALL"</t> |
3332 |
|
<t>S: "OK"</t> |
3333 |
</list> |
</list> |
3334 |
</t> |
</t> |
3335 |
</section> |
</section> |
4489 |
</t> |
</t> |
4490 |
<t>The mentioned fields above don't have to be in particular order. |
<t>The mentioned fields above don't have to be in particular order. |
4491 |
Other fields might be added in future.</t> |
Other fields might be added in future.</t> |
4492 |
|
|
4493 |
|
<t>Example:</t> |
4494 |
|
<t> |
4495 |
|
<list> |
4496 |
|
<t>C: "GET SERVER INFO"</t> |
4497 |
|
<t>S: "DESCRIPTION: LinuxSampler - modular, streaming capable sampler"</t> |
4498 |
|
<t> "VERSION: 1.0.0.svn23"</t> |
4499 |
|
<t> "PROTOCOL_VERSION: 1.5"</t> |
4500 |
|
<t> "INSTRUMENTS_DB_SUPPORT: no"</t> |
4501 |
|
<t> "."</t> |
4502 |
|
</list> |
4503 |
|
</t> |
4504 |
</section> |
</section> |
4505 |
|
|
4506 |
<section title="Getting global volume attenuation" anchor="GET VOLUME"> |
<section title="Getting global volume attenuation" anchor="GET VOLUME"> |
5153 |
</t> |
</t> |
5154 |
</section> |
</section> |
5155 |
|
|
5156 |
<section title="Getting ammount of MIDI instrument map entries" anchor="GET MIDI_INSTRUMENTS"> |
<section title="Getting amount of MIDI instrument map entries" anchor="GET MIDI_INSTRUMENTS"> |
5157 |
<t>The front-end can query the amount of currently existing |
<t>The front-end can query the amount of currently existing |
5158 |
entries in a MIDI instrument map by sending the following |
entries in a MIDI instrument map by sending the following |
5159 |
command:</t> |
command:</t> |
7552 |
<t> |
<t> |
7553 |
<list> |
<list> |
7554 |
<t>C: "GET EFFECT_INSTANCE_INPUT_CONTROL INFO 1 0"</t> |
<t>C: "GET EFFECT_INSTANCE_INPUT_CONTROL INFO 1 0"</t> |
7555 |
<t>S: "SYSTEM: LADSPA"</t> |
<t>S: "DESCRIPTION: Base delay (s)"</t> |
|
<t> "DESCRIPTION: Base delay (s)"</t> |
|
7556 |
<t> "VALUE: 0.500"</t> |
<t> "VALUE: 0.500"</t> |
7557 |
<t> "RANGE_MIN: 0.000"</t> |
<t> "RANGE_MIN: 0.000"</t> |
7558 |
<t> "."</t> |
<t> "."</t> |
8080 |
<list> |
<list> |
8081 |
<t>CHANNEL |
<t>CHANNEL |
8082 |
</t> |
</t> |
8083 |
|
<t>/ CHANNEL SP MIDI_INPUT SP sampler_channel SP device_index |
8084 |
|
</t> |
8085 |
|
<t>/ CHANNEL SP MIDI_INPUT SP sampler_channel SP device_index SP midi_input_port_index |
8086 |
|
</t> |
8087 |
<t>/ DB_INSTRUMENT_DIRECTORY SP db_path |
<t>/ DB_INSTRUMENT_DIRECTORY SP db_path |
8088 |
</t> |
</t> |
8089 |
<t>/ DB_INSTRUMENTS SP NON_MODAL SP scan_mode SP db_path SP filename |
<t>/ DB_INSTRUMENTS SP NON_MODAL SP scan_mode SP db_path SP filename |
8164 |
</t> |
</t> |
8165 |
<t>/ GLOBAL_INFO |
<t>/ GLOBAL_INFO |
8166 |
</t> |
</t> |
8167 |
|
<t>/ EFFECT_INSTANCE_COUNT |
8168 |
|
</t> |
8169 |
|
<t>/ EFFECT_INSTANCE_INFO |
8170 |
|
</t> |
8171 |
|
<t>/ SEND_EFFECT_CHAIN_COUNT |
8172 |
|
</t> |
8173 |
|
<t>/ SEND_EFFECT_CHAIN_INFO |
8174 |
|
</t> |
8175 |
</list> |
</list> |
8176 |
</t> |
</t> |
8177 |
<t>unsubscribe_event = |
<t>unsubscribe_event = |
8228 |
</t> |
</t> |
8229 |
<t>/ GLOBAL_INFO |
<t>/ GLOBAL_INFO |
8230 |
</t> |
</t> |
8231 |
|
<t>/ EFFECT_INSTANCE_COUNT |
8232 |
|
</t> |
8233 |
|
<t>/ EFFECT_INSTANCE_INFO |
8234 |
|
</t> |
8235 |
|
<t>/ SEND_EFFECT_CHAIN_COUNT |
8236 |
|
</t> |
8237 |
|
<t>/ SEND_EFFECT_CHAIN_INFO |
8238 |
|
</t> |
8239 |
</list> |
</list> |
8240 |
</t> |
</t> |
8241 |
<t>map_instruction = |
<t>map_instruction = |
8260 |
<list> |
<list> |
8261 |
<t>CHANNEL SP sampler_channel |
<t>CHANNEL SP sampler_channel |
8262 |
</t> |
</t> |
8263 |
|
<t>/ CHANNEL SP MIDI_INPUT SP sampler_channel |
8264 |
|
</t> |
8265 |
|
<t>/ CHANNEL SP MIDI_INPUT SP sampler_channel SP device_index |
8266 |
|
</t> |
8267 |
|
<t>/ CHANNEL SP MIDI_INPUT SP sampler_channel SP device_index SP midi_input_port_index |
8268 |
|
</t> |
8269 |
<t>/ MIDI_INSTRUMENT_MAP SP midi_map |
<t>/ MIDI_INSTRUMENT_MAP SP midi_map |
8270 |
</t> |
</t> |
8271 |
<t>/ MIDI_INSTRUMENT_MAP SP ALL |
<t>/ MIDI_INSTRUMENT_MAP SP ALL |
8434 |
</t> |
</t> |
8435 |
<t>/ ECHO SP boolean |
<t>/ ECHO SP boolean |
8436 |
</t> |
</t> |
8437 |
|
<t>/ SHELL SP INTERACT SP boolean |
8438 |
|
</t> |
8439 |
|
<t>/ SHELL SP AUTO_CORRECT SP boolean |
8440 |
|
</t> |
8441 |
<t>/ VOLUME SP volume_value |
<t>/ VOLUME SP volume_value |
8442 |
</t> |
</t> |
8443 |
<t>/ VOICES SP number |
<t>/ VOICES SP number |
8618 |
</t> |
</t> |
8619 |
<t>/ CHANNELS |
<t>/ CHANNELS |
8620 |
</t> |
</t> |
8621 |
|
<t>/ CHANNEL SP MIDI_INPUTS SP sampler_channel |
8622 |
|
</t> |
8623 |
<t>/ AVAILABLE_ENGINES |
<t>/ AVAILABLE_ENGINES |
8624 |
</t> |
</t> |
8625 |
<t>/ AVAILABLE_EFFECTS |
<t>/ AVAILABLE_EFFECTS |
9577 |
message is sufficient here.</t> |
message is sufficient here.</t> |
9578 |
</section> |
</section> |
9579 |
|
|
9580 |
|
<section title="Number of effect instances changed" anchor="SUBSCRIBE EFFECT_INSTANCE_COUNT"> |
9581 |
|
<t>Client may want to be notified when the number of effect instances |
9582 |
|
is changed by issuing the following command:</t> |
9583 |
|
<t> |
9584 |
|
<list> |
9585 |
|
<t>SUBSCRIBE EFFECT_INSTANCE_COUNT</t> |
9586 |
|
</list> |
9587 |
|
</t> |
9588 |
|
<t>Server will start sending the following notification messages:</t> |
9589 |
|
<t> |
9590 |
|
<list> |
9591 |
|
<t>"EFFECT_INSTANCE_COUNT:<instances>"</t> |
9592 |
|
</list> |
9593 |
|
</t> |
9594 |
|
<t>where <instances> will be replaced by the new number |
9595 |
|
of effect instances.</t> |
9596 |
|
</section> |
9597 |
|
|
9598 |
|
<section title="Effect instance information changed" anchor="SUBSCRIBE EFFECT_INSTANCE_INFO"> |
9599 |
|
<t>Client may want to be notified when changes were made to effect instances |
9600 |
|
on the back-end by issuing the following command:</t> |
9601 |
|
<t> |
9602 |
|
<list> |
9603 |
|
<t>SUBSCRIBE EFFECT_INSTANCE_INFO</t> |
9604 |
|
</list> |
9605 |
|
</t> |
9606 |
|
<t>Server will start sending the following notification messages:</t> |
9607 |
|
<t> |
9608 |
|
<list> |
9609 |
|
<t>"EFFECT_INSTANCE_INFO:<instance-id>"</t> |
9610 |
|
</list> |
9611 |
|
</t> |
9612 |
|
<t>where <instance-id> will be replaced by the numerical ID |
9613 |
|
of the effect instance.</t> |
9614 |
|
</section> |
9615 |
|
|
9616 |
|
<section title="Number of send effect chains changed" anchor="SUBSCRIBE SEND_EFFECT_CHAIN_COUNT"> |
9617 |
|
<t>Client may want to be notified when the number of send effect chains |
9618 |
|
is changed by issuing the following command:</t> |
9619 |
|
<t> |
9620 |
|
<list> |
9621 |
|
<t>SUBSCRIBE SEND_EFFECT_CHAIN_COUNT</t> |
9622 |
|
</list> |
9623 |
|
</t> |
9624 |
|
<t>Server will start sending the following notification messages:</t> |
9625 |
|
<t> |
9626 |
|
<list> |
9627 |
|
<t>"NOTIFY:SEND_EFFECT_CHAIN_COUNT:<device-id> <chains>"</t> |
9628 |
|
</list> |
9629 |
|
</t> |
9630 |
|
<t>where <device-id> will be replaced by the numerical ID of the audio |
9631 |
|
output device, in which the number of send effect chains is changed and |
9632 |
|
<chains> will be replaced by the new number of send effect chains.</t> |
9633 |
|
</section> |
9634 |
|
|
9635 |
|
<section title="Send effect chain information changed" anchor="SUBSCRIBE SEND_EFFECT_CHAIN_INFO"> |
9636 |
|
<t>Client may want to be notified when changes were made to send effect chains |
9637 |
|
on the back-end by issuing the following command:</t> |
9638 |
|
<t> |
9639 |
|
<list> |
9640 |
|
<t>SUBSCRIBE SEND_EFFECT_CHAIN_INFO</t> |
9641 |
|
</list> |
9642 |
|
</t> |
9643 |
|
<t>Server will start sending the following notification messages:</t> |
9644 |
|
<t> |
9645 |
|
<list> |
9646 |
|
<t>"SEND_EFFECT_CHAIN_INFO:<device-id> <chain-id> <instances>" - |
9647 |
|
Notifies that the number of effect instances in a particular send effect chain |
9648 |
|
is changed, where <device-id> will be replaced by the numerical ID of the audio |
9649 |
|
output device the send effect chain belongs to, <chain-id> will be replaced |
9650 |
|
by the numerical ID of the send effect chain in which the number of effect instances |
9651 |
|
has changed and <instances> will be replaced by the new number |
9652 |
|
of effect instances in the specified send effect chain.</t> |
9653 |
|
</list> |
9654 |
|
</t> |
9655 |
|
</section> |
9656 |
|
|
9657 |
<section title="Miscellaneous and debugging events" anchor="SUBSCRIBE MISCELLANEOUS"> |
<section title="Miscellaneous and debugging events" anchor="SUBSCRIBE MISCELLANEOUS"> |
9658 |
<t>Client may want to be notified of miscellaneous and debugging events occurring at |
<t>Client may want to be notified of miscellaneous and debugging events occurring at |
9659 |
the server by issuing the following command:</t> |
the server by issuing the following command:</t> |