C# Class RtspMulticaster.RTSPDispatcher

This class handle the rewrite and dispatchin of RTSP messages
Datei anzeigen Open project: ngraziano/SharpRTSP

Public Methods

Method Description
AddListener ( RtspListener listener ) : void

Add a listener.

Enqueue ( Rtsp.Messages.RtspMessage message ) : void

Enqueues the specified message.

StartQueue ( ) : void

Starts the queue processing.

StopQueue ( ) : void

Stops the queue processing.

Private Methods

Method Description
ConfigureTransportAndForwarder ( Rtsp.Messages.RtspMessage aMessage, RtspMulticaster.UDPForwarder forwarder ) : RtspMulticaster.Forwarder

Configures the transport and forwarder.

CreateNextMulticastAddress ( ) : string

Create next available multicast address.

GetRtspListenerForDestination ( Uri destinationUri ) : RtspListener

Gets the RTSP listener for destination.

This method try to get one of openned TCP listener and if it does not find it, it create it.

HandleOneMessage ( Rtsp.Messages.RtspMessage message ) : void

Handles one message.

HandleRequest ( Rtsp.Messages.RtspMessage &message ) : RtspListener

Handles request message.

HandleRequestPlay ( RtspListener &destination, RtspRequestPlay requestPlay ) : Rtsp.Messages.RtspMessage

Handles the request play. Do not forward message if already playing

HandleRequestSetup ( RtspListener &destination, RtspRequestSetup requestSetup ) : Rtsp.Messages.RtspMessage

Handles a request setup.

The destination can be modified.

HandleRequestWithoutUrl ( Rtsp.Messages.RtspMessage &message ) : RtspListener
HandleResponse ( RtspResponse message ) : void

Handles the response.

HandleResponseToSetup ( RtspResponse message ) : void

Handles the response to a setup message.

Listener_MessageReceived ( object sender, Rtsp e ) : void

Handles the MessageReceived event of the Listener control.

ManageQueue ( ) : void

The queue processing.

RTSPDispatcher ( ) : System
RewriteSDPMessage ( Rtsp.Messages.RtspMessage aMessage ) : void

Rewrites the SDP in the message.

RewriteUri ( Uri originalUri ) : Uri
SelectTransport ( RtspRequestSetup requestSetup ) : RtspTransport

Selects the transport based on the configuration of the system..

The transport is selected by taking the first supported transport in order of appearence.

UpdateSessionState ( RtspResponse message ) : void

Updates the state of the session.

Method Details

AddListener() public method

Add a listener.
public AddListener ( RtspListener listener ) : void
listener Rtsp.RtspListener A listener.
return void

Enqueue() public method

Enqueues the specified message.
public Enqueue ( Rtsp.Messages.RtspMessage message ) : void
message Rtsp.Messages.RtspMessage The message.
return void

StartQueue() public method

Starts the queue processing.
public StartQueue ( ) : void
return void

StopQueue() public method

Stops the queue processing.
public StopQueue ( ) : void
return void