UINT32 index;
ADDIN_ARGV* args;
+ if (settings->AudioPlayback)
+ {
+ char* p[] =
+ {
+ "rdpsnd"
+ };
+
+ if (!freerdp_client_add_static_channel(settings, ARRAYSIZE(p), p))
+ return FALSE;
+ }
+
if ((freerdp_static_channel_collection_find(settings, "rdpsnd")) ||
(freerdp_dynamic_channel_collection_find(settings, "tsmf")))
{
if (~file->AudioMode)
{
- if (file->AudioMode == AUDIO_MODE_REDIRECT)
+ switch(file->AudioMode)
{
- if (!freerdp_settings_set_bool(settings, FreeRDP_AudioPlayback, TRUE))
- return FALSE;
- }
- else if (file->AudioMode == AUDIO_MODE_PLAY_ON_SERVER)
- {
- if (!freerdp_settings_set_bool(settings, FreeRDP_RemoteConsoleAudio, TRUE))
- return FALSE;
- }
- else if (file->AudioMode == AUDIO_MODE_NONE)
- {
- if (!freerdp_settings_set_bool(settings, FreeRDP_AudioPlayback, FALSE) ||
- !freerdp_settings_set_bool(settings, FreeRDP_RemoteConsoleAudio, FALSE))
- return FALSE;
+ case AUDIO_MODE_REDIRECT:
+ if (!freerdp_settings_set_bool(settings, FreeRDP_RemoteConsoleAudio, FALSE))
+ return FALSE;
+ if (!freerdp_settings_set_bool(settings, FreeRDP_AudioPlayback, TRUE))
+ return FALSE;
+ break;
+ case AUDIO_MODE_PLAY_ON_SERVER:
+ if (!freerdp_settings_set_bool(settings, FreeRDP_RemoteConsoleAudio, TRUE))
+ return FALSE;
+ if (!freerdp_settings_set_bool(settings, FreeRDP_AudioPlayback, FALSE))
+ return FALSE;
+ break;
+ case AUDIO_MODE_NONE:
+ default:
+ if (!freerdp_settings_set_bool(settings, FreeRDP_AudioPlayback, FALSE))
+ return FALSE;
+ if (!freerdp_settings_set_bool(settings, FreeRDP_RemoteConsoleAudio, FALSE))
+ return FALSE;
+ break;
}
}