Public Types | |
enum | ResponseCode { ResponseOK = 200, ResponseNotFound = 404, ResponseNotAcceptable = 406, ResponseInvalidParameter = 451, ResponseSessionNotFound = 454, ResponseUnsupportedTransport = 461 } |
enum | SupportedTransports { SupportsUDPTransport = 0x01, SupportsTCPTransport = 0x10, SupportsAllTransports = 0x11 } |
Public Member Functions | |
CRTSPResourceManager (const JetByteTools::Core::_tstring &cname, const JetByteTools::Core::_tstring &baseUri, DWORD framesToCache, JetByteTools::Core::IQueueTimers &timerQueue, JetByteTools::Seconds sessionInactivityTimeout, JetByteTools::IO::IAllocateBuffers &bufferAllocator, ICreateUDPConnections &connectionManager, DWORD mtu) | |
CRTSPResourceManager (const JetByteTools::Core::_tstring &cname, const JetByteTools::Core::_tstring &baseUri, DWORD framesToCache, JetByteTools::Core::IQueueTimers &timerQueue, JetByteTools::Seconds sessionInactivityTimeout, JetByteTools::IO::IAllocateBuffers &bufferAllocator, ICreateUDPConnections &connectionManager, DWORD mtu, IAllocateSSRCs &ssrcAllocator, JetByteTools::Core::IProvideSystemTime &systemTimeProvider) | |
~CRTSPResourceManager () | |
DWORD | GetMTU () const |
std::string | AddResource (const JetByteTools::Core::_tstring &uriName, IRTSPResource &resource) |
void | RemoveResource (const std::string &uri) |
void | BeginShutdown () |
void | WaitForShutdownToComplete () |
bool | WaitForShutdownToComplete (Milliseconds timeout) |
ResponseCode | Describe (const std::string &hostAddress, const std::string &rtspPort, const JetByteTools::Socket::IAddress &remoteAddress, const std::string &uri, const std::string &accept, std::string &description, std::string &contentType) override |
ResponseCode | Setup (SupportedTransports supportedTransports, const std::string &hostAddress, const JetByteTools::Socket::IAddress &remoteAddress, IInterleavedRTPTCPStream &tcpStream, const std::string &uri, std::string &session, const std::string &transport, std::string &selectedTransport, std::string &sessionDescription) override |
ResponseCode | Play (const std::string &hostAddress, const std::string &rtspPort, const JetByteTools::Socket::IAddress &remoteAddress, const std::string &uri, const std::string &sessionID, const std::string &range, std::string &outputRange, std::string &rtpInfo) override |
ResponseCode | Pause (const JetByteTools::Socket::IAddress &remoteAddress, const std::string &uri, const std::string &sessionID, const std::string &range) override |
ResponseCode | GetParameter (const JetByteTools::Socket::IAddress &remoteAddress, const std::string &uri, const std::string &sessionID, size_t entitySize, const BYTE *pEntityData) override |
ResponseCode | Teardown (const JetByteTools::Socket::IAddress &remoteAddress, const std::string &uri, const std::string &sessionID) override |
ResponseCode | DestroySession (const std::string &sessionID) override |
void | OnInboundStreamData (const IInterleavedRTPTCPStream &stream, JetByteTools::IO::CSmartBuffer &data) override |
void | RemoveStream (const IInterleavedRTPTCPStream &stream) override |
void | PauseSession (const std::string &sessionID) override |
void | ResumeSession (const std::string &sessionID) override |
enum ResponseCode [inherited] |
enum SupportedTransports [inherited] |
CRTSPResourceManager | ( | const JetByteTools::Core::_tstring & | cname, | |
const JetByteTools::Core::_tstring & | baseUri, | |||
DWORD | framesToCache, | |||
JetByteTools::Core::IQueueTimers & | timerQueue, | |||
JetByteTools::Seconds | sessionInactivityTimeout, | |||
JetByteTools::IO::IAllocateBuffers & | bufferAllocator, | |||
ICreateUDPConnections & | connectionManager, | |||
DWORD | mtu | |||
) |
CRTSPResourceManager | ( | const JetByteTools::Core::_tstring & | cname, | |
const JetByteTools::Core::_tstring & | baseUri, | |||
DWORD | framesToCache, | |||
JetByteTools::Core::IQueueTimers & | timerQueue, | |||
JetByteTools::Seconds | sessionInactivityTimeout, | |||
JetByteTools::IO::IAllocateBuffers & | bufferAllocator, | |||
ICreateUDPConnections & | connectionManager, | |||
DWORD | mtu, | |||
IAllocateSSRCs & | ssrcAllocator, | |||
JetByteTools::Core::IProvideSystemTime & | systemTimeProvider | |||
) |
~CRTSPResourceManager | ( | ) |
DWORD GetMTU | ( | ) | const |
std::string AddResource | ( | const JetByteTools::Core::_tstring & | uriName, | |
IRTSPResource & | resource | |||
) |
void RemoveResource | ( | const std::string & | uri | ) |
void BeginShutdown | ( | ) |
void WaitForShutdownToComplete | ( | ) |
bool WaitForShutdownToComplete | ( | Milliseconds | timeout | ) |
CRTSPResourceManager::ResponseCode Describe | ( | const std::string & | hostAddress, | |
const std::string & | rtspPort, | |||
const JetByteTools::Socket::IAddress & | remoteAddress, | |||
const std::string & | uri, | |||
const std::string & | accept, | |||
std::string & | description, | |||
std::string & | contentType | |||
) | [override, virtual] |
Implements IManageRTSPResources.
CRTSPResourceManager::ResponseCode Setup | ( | SupportedTransports | supportedTransports, | |
const std::string & | hostAddress, | |||
const JetByteTools::Socket::IAddress & | remoteAddress, | |||
IInterleavedRTPTCPStream & | tcpStream, | |||
const std::string & | uri, | |||
std::string & | session, | |||
const std::string & | transport, | |||
std::string & | selectedTransport, | |||
std::string & | sessionDescription | |||
) | [override, virtual] |
need to map stream to tcpConnection so that we can pass escaped data on the control channel to the stream
Implements IManageRTSPResources.
CRTSPResourceManager::ResponseCode Play | ( | const std::string & | hostAddress, | |
const std::string & | rtspPort, | |||
const JetByteTools::Socket::IAddress & | remoteAddress, | |||
const std::string & | uri, | |||
const std::string & | sessionID, | |||
const std::string & | range, | |||
std::string & | outputRange, | |||
std::string & | rtpInfo | |||
) | [override, virtual] |
Implements IManageRTSPResources.
CRTSPResourceManager::ResponseCode Pause | ( | const JetByteTools::Socket::IAddress & | remoteAddress, | |
const std::string & | uri, | |||
const std::string & | sessionID, | |||
const std::string & | range | |||
) | [override, virtual] |
Implements IManageRTSPResources.
CRTSPResourceManager::ResponseCode GetParameter | ( | const JetByteTools::Socket::IAddress & | remoteAddress, | |
const std::string & | uri, | |||
const std::string & | sessionID, | |||
size_t | entitySize, | |||
const BYTE * | pEntityData | |||
) | [override, virtual] |
Implements IManageRTSPResources.
CRTSPResourceManager::ResponseCode Teardown | ( | const JetByteTools::Socket::IAddress & | remoteAddress, | |
const std::string & | uri, | |||
const std::string & | sessionID | |||
) | [override, virtual] |
Implements IManageRTSPResources.
CRTSPResourceManager::ResponseCode DestroySession | ( | const std::string & | sessionID | ) | [override, virtual] |
Implements IManageRTSPResources.
void OnInboundStreamData | ( | const IInterleavedRTPTCPStream & | stream, | |
JetByteTools::IO::CSmartBuffer & | data | |||
) | [override, virtual] |
Implements IManageRTSPResources.
void RemoveStream | ( | const IInterleavedRTPTCPStream & | stream | ) | [override, virtual] |
Implements IManageRTSPResources.
void PauseSession | ( | const std::string & | sessionID | ) | [override, virtual] |
Implements IManageRTSPResources.
void ResumeSession | ( | const std::string & | sessionID | ) | [override, virtual] |
Implements IManageRTSPResources.