# Connecting endpoints and channels

Connect endpoints and channels by using mspConnect as shown in the following example:

mspConnect ( EP1 handle, channel handle, EP2 handle)

For video-specific endpoints, the order of the endpoints in mspConnect is important. The video RTP endpoint is endpoint 1, and the MUX endpoint (MSP_ENDPOINT_MUX) is endpoint 2.

For example:

ret = mspConnect( GwConfig[i].VidRtpEp.hd,
GwConfig[i].VidChan.hd,
GwConfig[i].MuxEp.hd);

You can configure three types of connections for video endpoints:

Connection | Description
Simplex | Create a simplex connection by creating a simplex channel and connecting it to an RTP video simplex endpoint at one end and a MUX endpoint at the other end. This connection carries media in a single direction.
Symmetrical duplex | Create a duplex connection by creating a full-duplex channel and connecting it to an RTP video full-duplex endpoint at one end and a MUX endpoint at the other end. This connection carries media in two directions.
RTP multiple unicast | Create a series of RTP simplex send video endpoints (up to eight) and connect all of these RTP endpoints to a MUX endpoint through a video simplex send channel.

Whether using the pass-through configuration or the audio transcoding configuration, there are always two connections to the MUX endpoint: one for the video channel and one for the audio channel. Create these connections by using mspConnect in a serial fashion. Wait for MSPEVN_CONNECT_DONE for the first channel before invoking mspConnect for the second channel.

The same limitation applies when disconnecting the channels from the MUX endpoint. Wait for MSPEVN_DISCONNECT_DONE for the first channel before calling mspDisconnect for the second channel.

For more information about mspConnect, see the MSPP Developer's Reference Manual.