32 |
|
|
33 |
//////////////////////////////////////////////////////////////////////// |
//////////////////////////////////////////////////////////////////////// |
34 |
|
|
35 |
lscp_status_t client_callback ( lscp_client_t *pClient, const char *pchBuffer, int cchBuffer, void *pvData ) |
lscp_status_t client_callback ( lscp_client_t *pClient, lscp_event_t event, const char *pchData, int cchData, void *pvData ) |
36 |
{ |
{ |
37 |
lscp_status_t ret = LSCP_OK; |
lscp_status_t ret = LSCP_FAILED; |
38 |
|
|
39 |
char *pszBuffer = (char *) malloc(cchBuffer + 1); |
char *pszData = (char *) malloc(cchData + 1); |
40 |
if (pszBuffer) { |
if (pszData) { |
41 |
memcpy(pszBuffer, pchBuffer, cchBuffer); |
memcpy(pszData, pchData, cchData); |
42 |
pszBuffer[cchBuffer] = (char) 0; |
pszData[cchData] = (char) 0; |
43 |
printf("client_callback: [%s]\n", pszBuffer); |
printf("client_callback: event=%s (0x%04x) [%s]\n", lscp_event_to_text(event), (int) event, pszData); |
44 |
free(pszBuffer); |
free(pszData); |
45 |
|
ret = LSCP_OK; |
46 |
} |
} |
|
else ret = LSCP_FAILED; |
|
47 |
|
|
48 |
return ret; |
return ret; |
49 |
} |
} |
65 |
const char **ppszAudioDrivers, **ppszMidiDrivers, **ppszEngines; |
const char **ppszAudioDrivers, **ppszMidiDrivers, **ppszEngines; |
66 |
const char *pszAudioDriver, *pszMidiDriver, *pszEngine; |
const char *pszAudioDriver, *pszMidiDriver, *pszEngine; |
67 |
int iAudioDriver, iMidiDriver, iEngine; |
int iAudioDriver, iMidiDriver, iEngine; |
68 |
|
int iAudioDevice, iMidiDevice; |
69 |
int iSamplerChannel; |
int iSamplerChannel; |
70 |
|
|
71 |
CLIENT_TEST(pClient, ppszAudioDrivers = lscp_get_available_audio_drivers(pClient)); |
CLIENT_TEST(pClient, ppszAudioDrivers = lscp_get_available_audio_drivers(pClient)); |
96 |
pszAudioDriver = ppszAudioDrivers[iAudioDriver]; |
pszAudioDriver = ppszAudioDrivers[iAudioDriver]; |
97 |
printf("\n--- pszAudioDriver=\"%s\" ---\n", pszAudioDriver); |
printf("\n--- pszAudioDriver=\"%s\" ---\n", pszAudioDriver); |
98 |
CLIENT_TEST(pClient, lscp_get_audio_driver_info(pClient, pszAudioDriver)); |
CLIENT_TEST(pClient, lscp_get_audio_driver_info(pClient, pszAudioDriver)); |
99 |
|
CLIENT_TEST(pClient, lscp_get_audio_driver_param_info(pClient, pszAudioDriver, "active", NULL)); |
100 |
|
CLIENT_TEST(pClient, iAudioDevice = lscp_create_audio_device(pClient, pszAudioDriver, NULL)); |
101 |
|
CLIENT_TEST(pClient, lscp_get_audio_device_info(pClient, iAudioDevice)); |
102 |
for (iMidiDriver = 0; ppszMidiDrivers[iMidiDriver]; iMidiDriver++) { |
for (iMidiDriver = 0; ppszMidiDrivers[iMidiDriver]; iMidiDriver++) { |
103 |
pszMidiDriver = ppszMidiDrivers[iMidiDriver]; |
pszMidiDriver = ppszMidiDrivers[iMidiDriver]; |
104 |
printf("\n--- pszMidiDriver=\"%s\" ---\n", pszMidiDriver); |
printf("\n--- pszMidiDriver=\"%s\" ---\n", pszMidiDriver); |
105 |
CLIENT_TEST(pClient, lscp_get_midi_driver_info(pClient, pszMidiDriver)); |
CLIENT_TEST(pClient, lscp_get_midi_driver_info(pClient, pszMidiDriver)); |
106 |
|
CLIENT_TEST(pClient, lscp_get_midi_driver_param_info(pClient, pszMidiDriver, "active", NULL)); |
107 |
|
CLIENT_TEST(pClient, iMidiDevice = lscp_create_midi_device(pClient, pszMidiDriver, NULL)); |
108 |
|
CLIENT_TEST(pClient, lscp_get_midi_device_info(pClient, iMidiDevice)); |
109 |
for (iEngine = 0; ppszEngines[iEngine]; iEngine++) { |
for (iEngine = 0; ppszEngines[iEngine]; iEngine++) { |
110 |
pszEngine = ppszEngines[iEngine]; |
pszEngine = ppszEngines[iEngine]; |
111 |
printf("\n--- pszEngine=\"%s\" ---\n", pszEngine); |
printf("\n--- pszEngine=\"%s\" ---\n", pszEngine); |
119 |
CLIENT_TEST(pClient, lscp_load_instrument(pClient, "DefaultInstrument.gig", 0, iSamplerChannel)); |
CLIENT_TEST(pClient, lscp_load_instrument(pClient, "DefaultInstrument.gig", 0, iSamplerChannel)); |
120 |
CLIENT_TEST(pClient, lscp_get_channel_voice_count(pClient, iSamplerChannel)); |
CLIENT_TEST(pClient, lscp_get_channel_voice_count(pClient, iSamplerChannel)); |
121 |
CLIENT_TEST(pClient, lscp_get_channel_stream_count(pClient, iSamplerChannel)); |
CLIENT_TEST(pClient, lscp_get_channel_stream_count(pClient, iSamplerChannel)); |
122 |
|
CLIENT_TEST(pClient, lscp_get_channel_stream_usage(pClient, iSamplerChannel)); |
123 |
CLIENT_TEST(pClient, lscp_get_channel_buffer_fill(pClient, LSCP_USAGE_BYTES, iSamplerChannel)); |
CLIENT_TEST(pClient, lscp_get_channel_buffer_fill(pClient, LSCP_USAGE_BYTES, iSamplerChannel)); |
124 |
CLIENT_TEST(pClient, lscp_get_channel_buffer_fill(pClient, LSCP_USAGE_PERCENTAGE, iSamplerChannel)); |
CLIENT_TEST(pClient, lscp_get_channel_buffer_fill(pClient, LSCP_USAGE_PERCENTAGE, iSamplerChannel)); |
125 |
CLIENT_TEST(pClient, lscp_set_channel_audio_type(pClient, iSamplerChannel, pszAudioDriver)); |
CLIENT_TEST(pClient, lscp_set_channel_audio_type(pClient, iSamplerChannel, pszAudioDriver)); |
126 |
|
CLIENT_TEST(pClient, lscp_set_channel_audio_device(pClient, iSamplerChannel, 0)); |
127 |
CLIENT_TEST(pClient, lscp_set_channel_audio_channel(pClient, iSamplerChannel, 0, 1)); |
CLIENT_TEST(pClient, lscp_set_channel_audio_channel(pClient, iSamplerChannel, 0, 1)); |
128 |
CLIENT_TEST(pClient, lscp_set_channel_midi_type(pClient, iSamplerChannel, pszMidiDriver)); |
CLIENT_TEST(pClient, lscp_set_channel_midi_type(pClient, iSamplerChannel, pszMidiDriver)); |
129 |
|
CLIENT_TEST(pClient, lscp_set_channel_midi_device(pClient, iSamplerChannel, 0)); |
130 |
CLIENT_TEST(pClient, lscp_set_channel_midi_channel(pClient, iSamplerChannel, 0)); |
CLIENT_TEST(pClient, lscp_set_channel_midi_channel(pClient, iSamplerChannel, 0)); |
131 |
CLIENT_TEST(pClient, lscp_set_channel_midi_port(pClient, iSamplerChannel, 0)); |
CLIENT_TEST(pClient, lscp_set_channel_midi_port(pClient, iSamplerChannel, 0)); |
132 |
CLIENT_TEST(pClient, lscp_set_channel_volume(pClient, iSamplerChannel, 0.5)); |
CLIENT_TEST(pClient, lscp_set_channel_volume(pClient, iSamplerChannel, 0.5)); |
133 |
CLIENT_TEST(pClient, lscp_get_channel_info(pClient, iSamplerChannel)); |
CLIENT_TEST(pClient, lscp_get_channel_info(pClient, iSamplerChannel)); |
134 |
CLIENT_TEST(pClient, lscp_reset_channel(pClient, iSamplerChannel)); |
CLIENT_TEST(pClient, lscp_reset_channel(pClient, iSamplerChannel)); |
135 |
CLIENT_TEST(pClient, lscp_remove_channel(pClient, iSamplerChannel)); |
CLIENT_TEST(pClient, lscp_remove_channel(pClient, iSamplerChannel)); |
|
printf("\n"); |
|
136 |
} |
} |
137 |
|
CLIENT_TEST(pClient, lscp_destroy_midi_device(pClient, iMidiDevice)); |
138 |
} |
} |
139 |
|
CLIENT_TEST(pClient, lscp_destroy_audio_device(pClient, iAudioDevice)); |
140 |
} |
} |
141 |
|
|
142 |
} |
} |
193 |
break; |
break; |
194 |
else |
else |
195 |
if (strcmp(szLine, "subscribe") == 0) |
if (strcmp(szLine, "subscribe") == 0) |
196 |
lscp_client_subscribe(pClient); |
lscp_client_subscribe(pClient, LSCP_EVENT_MISCELLANEOUS); |
197 |
else |
else |
198 |
if (strcmp(szLine, "unsubscribe") == 0) |
if (strcmp(szLine, "unsubscribe") == 0) |
199 |
lscp_client_unsubscribe(pClient); |
lscp_client_unsubscribe(pClient, LSCP_EVENT_MISCELLANEOUS); |
200 |
else |
else |
201 |
if (strcmp(szLine, "test") == 0) |
if (strcmp(szLine, "test") == 0) |
202 |
client_test(pClient); |
client_test(pClient); |