| 
    live
    
   | 
 
#include <ProxyServerMediaSession.hh>


Public Types | |
| typedef void() | responseHandler(RTSPClient *rtspClient, int resultCode, char *resultString) | 
Public Member Functions | |
| ProxyRTSPClient (class ProxyServerMediaSession &ourServerMediaSession, char const *rtspURL, char const *username, char const *password, portNumBits tunnelOverHTTPPortNum, int verbosityLevel, int socketNumToServer) | |
| virtual | ~ProxyRTSPClient () | 
| void | continueAfterDESCRIBE (char const *sdpDescription) | 
| void | continueAfterLivenessCommand (int resultCode, Boolean serverSupportsGetParameter) | 
| void | continueAfterSETUP (int resultCode) | 
| void | continueAfterPLAY (int resultCode) | 
| void | scheduleReset () | 
| unsigned | sendDescribeCommand (responseHandler *responseHandler, Authenticator *authenticator=NULL) | 
| unsigned | sendOptionsCommand (responseHandler *responseHandler, Authenticator *authenticator=NULL) | 
| unsigned | sendAnnounceCommand (char const *sdpDescription, responseHandler *responseHandler, Authenticator *authenticator=NULL) | 
| unsigned | sendSetupCommand (MediaSubsession &subsession, responseHandler *responseHandler, Boolean streamOutgoing=False, Boolean streamUsingTCP=False, Boolean forceMulticastOnUnspecified=False, Authenticator *authenticator=NULL) | 
| unsigned | sendPlayCommand (MediaSession &session, responseHandler *responseHandler, double start=0.0f, double end=-1.0f, float scale=1.0f, Authenticator *authenticator=NULL) | 
| unsigned | sendPlayCommand (MediaSubsession &subsession, responseHandler *responseHandler, double start=0.0f, double end=-1.0f, float scale=1.0f, Authenticator *authenticator=NULL) | 
| unsigned | sendPlayCommand (MediaSession &session, responseHandler *responseHandler, char const *absStartTime, char const *absEndTime=NULL, float scale=1.0f, Authenticator *authenticator=NULL) | 
| unsigned | sendPlayCommand (MediaSubsession &subsession, responseHandler *responseHandler, char const *absStartTime, char const *absEndTime=NULL, float scale=1.0f, Authenticator *authenticator=NULL) | 
| unsigned | sendPauseCommand (MediaSession &session, responseHandler *responseHandler, Authenticator *authenticator=NULL) | 
| unsigned | sendPauseCommand (MediaSubsession &subsession, responseHandler *responseHandler, Authenticator *authenticator=NULL) | 
| unsigned | sendRecordCommand (MediaSession &session, responseHandler *responseHandler, Authenticator *authenticator=NULL) | 
| unsigned | sendRecordCommand (MediaSubsession &subsession, responseHandler *responseHandler, Authenticator *authenticator=NULL) | 
| unsigned | sendTeardownCommand (MediaSession &session, responseHandler *responseHandler, Authenticator *authenticator=NULL) | 
| unsigned | sendTeardownCommand (MediaSubsession &subsession, responseHandler *responseHandler, Authenticator *authenticator=NULL) | 
| unsigned | sendSetParameterCommand (MediaSession &session, responseHandler *responseHandler, char const *parameterName, char const *parameterValue, Authenticator *authenticator=NULL) | 
| unsigned | sendGetParameterCommand (MediaSession &session, responseHandler *responseHandler, char const *parameterName, Authenticator *authenticator=NULL) | 
| void | setRequireValue (char const *requireValue=NULL) | 
| void | sendDummyUDPPackets (MediaSession &session, unsigned numDummyPackets=2) | 
| void | sendDummyUDPPackets (MediaSubsession &subsession, unsigned numDummyPackets=2) | 
| void | setSpeed (MediaSession &session, float speed=1.0f) | 
| Boolean | changeResponseHandler (unsigned cseq, responseHandler *newResponseHandler) | 
| int | socketNum () const | 
| Boolean | parseRTSPURL (char const *url, char *&username, char *&password, NetAddress &address, portNumBits &portNum, char const **urlSuffix=NULL) | 
| void | setUserAgentString (char const *userAgentName) | 
| void | disallowBasicAuthentication () | 
| unsigned | sessionTimeoutParameter () const | 
| char const * | url () const | 
| UsageEnvironment & | envir () const | 
| char const * | name () const | 
| virtual Boolean | isSource () const | 
| virtual Boolean | isSink () const | 
| virtual Boolean | isRTCPInstance () const | 
| virtual Boolean | isRTSPServer () const | 
| virtual Boolean | isMediaSession () const | 
| virtual Boolean | isServerMediaSession () const | 
Static Public Member Functions | |
| static RTSPClient * | createNew (UsageEnvironment &env, char const *rtspURL, int verbosityLevel=0, char const *applicationName=NULL, portNumBits tunnelOverHTTPPortNum=0, int socketNumToServer=-1) | 
| static Boolean | lookupByName (UsageEnvironment &env, char const *sourceName, RTSPClient *&resultClient) | 
| static Boolean | lookupByName (UsageEnvironment &env, char const *mediumName, Medium *&resultMedium) | 
| static void | close (UsageEnvironment &env, char const *mediumName) | 
| static void | close (Medium *medium) | 
Data Fields | |
| u_int16_t | desiredMaxIncomingPacketSize | 
Static Public Attributes | |
| static unsigned | responseBufferSize | 
Protected Member Functions | |
| void | setBaseURL (char const *url) | 
| int | grabSocket () | 
| virtual unsigned | sendRequest (RequestRecord *request) | 
| virtual Boolean | setRequestFields (RequestRecord *request, char *&cmdURL, Boolean &cmdURLWasAllocated, char const *&protocolStr, char *&extraHeaders, Boolean &extraHeadersWereAllocated) | 
| TaskToken & | nextTask () | 
Protected Attributes | |
| int | fVerbosityLevel | 
| unsigned | fCSeq | 
| Authenticator | fCurrentAuthenticator | 
| Boolean | fAllowBasicAuthentication | 
| struct sockaddr_storage | fServerAddress | 
Private Member Functions | |
| void | reset () | 
| int | connectToServer (int socketNum, portNumBits remotePortNum) | 
| Authenticator * | auth () | 
| void | scheduleLivenessCommand () | 
| void | doReset () | 
| void | scheduleDESCRIBECommand () | 
| void | sendDESCRIBE () | 
| void | handleSubsessionTimeout () | 
| virtual Boolean | isRTSPClient () const | 
| void | resetTCPSockets () | 
| void | resetResponseBuffer () | 
| int | openConnection () | 
| char * | createAuthenticatorString (char const *cmd, char const *url) | 
| char * | createBlocksizeString (Boolean streamUsingTCP) | 
| char * | createKeyMgmtString (char const *url, MediaSubsession const &subsession) | 
| void | handleRequestError (RequestRecord *request) | 
| Boolean | parseResponseCode (char const *line, unsigned &responseCode, char const *&responseString) | 
| void | handleIncomingRequest () | 
| Boolean | parseTransportParams (char const *paramsStr, char *&serverAddressStr, portNumBits &serverPortNum, unsigned char &rtpChannelId, unsigned char &rtcpChannelId) | 
| Boolean | parseScaleParam (char const *paramStr, float &scale) | 
| Boolean | parseSpeedParam (char const *paramStr, float &speed) | 
| Boolean | parseRTPInfoParams (char const *¶mStr, u_int16_t &seqNum, u_int32_t ×tamp) | 
| Boolean | handleSETUPResponse (MediaSubsession &subsession, char const *sessionParamsStr, char const *transportParamsStr, Boolean streamUsingTCP) | 
| Boolean | handlePLAYResponse (MediaSession *session, MediaSubsession *subsession, char const *scaleParamsStr, const char *speedParamsStr, char const *rangeParamsStr, char const *rtpInfoParamsStr) | 
| Boolean | handleTEARDOWNResponse (MediaSession &session, MediaSubsession &subsession) | 
| Boolean | handleGET_PARAMETERResponse (char const *parameterName, char *&resultValueString, char *resultValueStringEnd) | 
| Boolean | handleAuthenticationFailure (char const *wwwAuthenticateParamsStr) | 
| Boolean | resendCommand (RequestRecord *request) | 
| char const * | sessionURL (MediaSession const &session) const | 
| void | handleAlternativeRequestByte1 (u_int8_t requestByte) | 
| void | constructSubsessionURL (MediaSubsession const &subsession, char const *&prefix, char const *&separator, char const *&suffix) | 
| Boolean | setupHTTPTunneling1 () | 
| void | responseHandlerForHTTP_GET1 (int responseCode, char *responseString) | 
| Boolean | setupHTTPTunneling2 () | 
| void | connectionHandler1 () | 
| void | incomingDataHandler1 () | 
| void | handleResponseBytes (int newBytesRead) | 
| int | write (const char *data, unsigned count) | 
| int | read (u_int8_t *buffer, unsigned bufferSize) | 
Static Private Member Functions | |
| static void | sendLivenessCommand (void *clientData) | 
| static void | doReset (void *clientData) | 
| static void | sendDESCRIBE (void *clientData) | 
| static void | subsessionTimeout (void *clientData) | 
| static Boolean | checkForHeader (char const *line, char const *headerName, unsigned headerNameLength, char const *&headerParams) | 
| static void | handleAlternativeRequestByte (void *, u_int8_t requestByte) | 
| static void | responseHandlerForHTTP_GET (RTSPClient *rtspClient, int responseCode, char *responseString) | 
| static void | connectionHandler (void *, int) | 
| static void | incomingDataHandler (void *, int) | 
Friends | |
| class | ProxyServerMediaSession | 
| class | ProxyServerMediaSubsession | 
Definition at line 42 of file ProxyServerMediaSession.hh.
      
  | 
  inherited | 
Definition at line 55 of file RTSPClient.hh.
| ProxyRTSPClient::ProxyRTSPClient | ( | class ProxyServerMediaSession & | ourServerMediaSession, | 
| char const * | rtspURL, | ||
| char const * | username, | ||
| char const * | password, | ||
| portNumBits | tunnelOverHTTPPortNum, | ||
| int | verbosityLevel, | ||
| int | socketNumToServer | ||
| ) | 
      
  | 
  virtual | 
      
  | 
  inlineprivate | 
Definition at line 59 of file ProxyServerMediaSession.hh.
References fOurAuthenticator.
      
  | 
  inherited | 
      
  | 
  staticprivateinherited | 
      
  | 
  staticinherited | 
      
  | 
  staticinherited | 
      
  | 
  staticprivateinherited | 
      
  | 
  privateinherited | 
      
  | 
  privatevirtual | 
Reimplemented from RTSPClient.
      
  | 
  privateinherited | 
| void ProxyRTSPClient::continueAfterDESCRIBE | ( | char const * | sdpDescription | ) | 
| void ProxyRTSPClient::continueAfterLivenessCommand | ( | int | resultCode, | 
| Boolean | serverSupportsGetParameter | ||
| ) | 
| void ProxyRTSPClient::continueAfterPLAY | ( | int | resultCode | ) | 
| void ProxyRTSPClient::continueAfterSETUP | ( | int | resultCode | ) | 
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  staticinherited | 
      
  | 
  inlineinherited | 
Definition at line 190 of file RTSPClient.hh.
References RTSPClient::fAllowBasicAuthentication, and False.
      
  | 
  private | 
      
  | 
  staticprivate | 
      
  | 
  inlineinherited | 
Definition at line 59 of file Media.hh.
References Medium::fEnviron.
Referenced by MediaSubsession::env(), GenericMediaServer::ClientConnection::envir(), GenericMediaServer::ClientSession::envir(), and RTPInterface::envir().
      
  | 
  protectedinherited | 
      
  | 
  staticprivateinherited | 
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  private | 
      
  | 
  privateinherited | 
      
  | 
  staticprivateinherited | 
      
  | 
  privateinherited | 
      
  | 
  virtualinherited | 
Reimplemented in MediaSession.
      
  | 
  virtualinherited | 
Reimplemented in RTCPInstance.
      
  | 
  privatevirtualinherited | 
Reimplemented from Medium.
      
  | 
  virtualinherited | 
Reimplemented in RTSPServer.
      
  | 
  virtualinherited | 
Reimplemented in ServerMediaSession.
      
  | 
  virtualinherited | 
Reimplemented in MediaSource.
      
  | 
  staticinherited | 
      
  | 
  staticinherited | 
      
  | 
  inlineinherited | 
      
  | 
  inlineprotectedinherited | 
Definition at line 77 of file Media.hh.
References Medium::fNextTask.
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  inherited | 
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  private | 
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  staticprivateinherited | 
      
  | 
  privateinherited | 
      
  | 
  private | 
      
  | 
  private | 
| void ProxyRTSPClient::scheduleReset | ( | ) | 
      
  | 
  inherited | 
      
  | 
  private | 
      
  | 
  staticprivate | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  staticprivate | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  protectedvirtualinherited | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  inlineinherited | 
      
  | 
  privateinherited | 
      
  | 
  protectedinherited | 
      
  | 
  protectedvirtualinherited | 
Reimplemented in RTSPRegisterSender, and RTSPDeregisterSender.
      
  | 
  inherited | 
      
  | 
  inherited | 
      
  | 
  privateinherited | 
      
  | 
  privateinherited | 
      
  | 
  inherited | 
      
  | 
  inlineinherited | 
      
  | 
  staticprivate | 
      
  | 
  inlineinherited | 
      
  | 
  privateinherited | 
      
  | 
  friend | 
Definition at line 74 of file ProxyServerMediaSession.hh.
      
  | 
  friend | 
Definition at line 75 of file ProxyServerMediaSession.hh.
      
  | 
  inherited | 
Definition at line 333 of file RTSPClient.hh.
      
  | 
  protectedinherited | 
Definition at line 341 of file RTSPClient.hh.
Referenced by RTSPClient::disallowBasicAuthentication().
      
  | 
  privateinherited | 
Definition at line 349 of file RTSPClient.hh.
Referenced by RTSPClient::url().
      
  | 
  protectedinherited | 
Definition at line 339 of file RTSPClient.hh.
      
  | 
  protectedinherited | 
Definition at line 340 of file RTSPClient.hh.
      
  | 
  private | 
Definition at line 84 of file ProxyServerMediaSession.hh.
      
  | 
  private | 
Definition at line 83 of file ProxyServerMediaSession.hh.
      
  | 
  privateinherited | 
Definition at line 82 of file Media.hh.
Referenced by Medium::envir().
      
  | 
  privateinherited | 
Definition at line 361 of file RTSPClient.hh.
      
  | 
  privateinherited | 
Definition at line 348 of file RTSPClient.hh.
Referenced by RTSPClient::socketNum().
      
  | 
  privateinherited | 
Definition at line 366 of file RTSPClient.hh.
      
  | 
  private | 
Definition at line 83 of file ProxyServerMediaSession.hh.
      
  | 
  privateinherited | 
Definition at line 351 of file RTSPClient.hh.
      
  | 
  private | 
Definition at line 84 of file ProxyServerMediaSession.hh.
      
  | 
  privateinherited | 
Definition at line 83 of file Media.hh.
Referenced by Medium::name().
      
  | 
  private | 
Definition at line 82 of file ProxyServerMediaSession.hh.
      
  | 
  privateinherited | 
Definition at line 84 of file Media.hh.
Referenced by Medium::nextTask().
      
  | 
  private | 
Definition at line 81 of file ProxyServerMediaSession.hh.
      
  | 
  private | 
Definition at line 78 of file ProxyServerMediaSession.hh.
Referenced by auth().
      
  | 
  private | 
Definition at line 76 of file ProxyServerMediaSession.hh.
      
  | 
  private | 
Definition at line 77 of file ProxyServerMediaSession.hh.
      
  | 
  privateinherited | 
Definition at line 348 of file RTSPClient.hh.
      
  | 
  privateinherited | 
Definition at line 367 of file RTSPClient.hh.
      
  | 
  privateinherited | 
Definition at line 365 of file RTSPClient.hh.
      
  | 
  privateinherited | 
Definition at line 355 of file RTSPClient.hh.
      
  | 
  privateinherited | 
Definition at line 355 of file RTSPClient.hh.
      
  | 
  privateinherited | 
Definition at line 355 of file RTSPClient.hh.
      
  | 
  privateinherited | 
Definition at line 356 of file RTSPClient.hh.
      
  | 
  private | 
Definition at line 84 of file ProxyServerMediaSession.hh.
      
  | 
  privateinherited | 
Definition at line 353 of file RTSPClient.hh.
      
  | 
  privateinherited | 
Definition at line 354 of file RTSPClient.hh.
      
  | 
  privateinherited | 
Definition at line 354 of file RTSPClient.hh.
      
  | 
  protectedinherited | 
Definition at line 342 of file RTSPClient.hh.
      
  | 
  private | 
Definition at line 83 of file ProxyServerMediaSession.hh.
      
  | 
  privateinherited | 
Definition at line 359 of file RTSPClient.hh.
      
  | 
  privateinherited | 
Definition at line 360 of file RTSPClient.hh.
      
  | 
  privateinherited | 
Definition at line 352 of file RTSPClient.hh.
Referenced by RTSPClient::sessionTimeoutParameter().
      
  | 
  private | 
Definition at line 80 of file ProxyServerMediaSession.hh.
      
  | 
  private | 
Definition at line 80 of file ProxyServerMediaSession.hh.
      
  | 
  private | 
Definition at line 79 of file ProxyServerMediaSession.hh.
      
  | 
  private | 
Definition at line 84 of file ProxyServerMediaSession.hh.
      
  | 
  privateinherited | 
Definition at line 350 of file RTSPClient.hh.
      
  | 
  privateinherited | 
Definition at line 364 of file RTSPClient.hh.
      
  | 
  privateinherited | 
Definition at line 345 of file RTSPClient.hh.
      
  | 
  privateinherited | 
Definition at line 346 of file RTSPClient.hh.
      
  | 
  privateinherited | 
Definition at line 347 of file RTSPClient.hh.
      
  | 
  protectedinherited | 
Definition at line 338 of file RTSPClient.hh.
      
  | 
  staticinherited | 
Definition at line 198 of file RTSPClient.hh.