Skip to content

Command Server

TCP socket server for a command handler.

The socket server will open the TCP port set by shell.port (default 9800). If the setting is 0, the first free port is selected automatically, probing from 9800 upwards. The server starts a new thread and Command Handler for each incoming connection.

Note

The server is only available if libfluidsynth has been compiled with network support (enable-network). Without network support, all related functions will return FLUID_FAILED or NULL.

Lifecycle Functions for Command Server

new_fluid_server()

fluid_server_t * new_fluid_server(fluid_settings_t *settings, fluid_synth_t *synth, fluid_midi_router_t *router)

Create a new TCP/IP command shell server.

See also: See new_fluid_server2() for more information.

Returns: New shell server instance or NULL on error

new_fluid_server2()

fluid_server_t * new_fluid_server2(fluid_settings_t *settings, fluid_synth_t *synth, fluid_midi_router_t *router, fluid_player_t *player)

Create a new TCP/IP command shell server.

Parameters:

Name Description
settings Settings instance to use for the shell
synth If not NULL, the synth instance for the command handler to be used by the client
router If not NULL, the midi_router instance for the command handler to be used by the client
player If not NULL, the player instance for the command handler to be used by the client

Returns: New shell server instance or NULL on error

delete_fluid_server()

void delete_fluid_server(fluid_server_t *server)

Delete a TCP/IP shell server.

Parameters:

Name Description
server Shell server instance

fluid_server_join()

int fluid_server_join(fluid_server_t *server)

Join a shell server thread (wait until it quits).

Parameters:

Name Description
server Shell server instance

Returns: FLUID_OK on success, FLUID_FAILED otherwise