arduino-audio-tools
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
RTSPServerBase< Platform > Class Template Reference

RTSPServerBase - Shared logic for RTSPServer and RTSPServerTaskless. More...

#include <RTSPServerBase.h>

Inheritance diagram for RTSPServerBase< Platform >:
RTSPServer< Platform > RTSPServerTaskless< Platform >

Public Member Functions

 RTSPServerBase (RTSPAudioStreamerBase< Platform > &streamer, int port=8554)
 Constructor.
 
 ~RTSPServerBase ()
 Destructor.
 
virtual bool begin ()
 Start server.
 
bool begin (const char *ssid, const char *password)
 Start server and connect to WiFi (ESP32 only)
 
int clientCount ()
 Get number of connected clients.
 
void end ()
 Stop server and clean up.
 
 operator bool ()
 Returns true if any client is connected.
 
void setOnSessionPath (bool(*cb)(const char *path, void *ref), void *ref=nullptr)
 Set callback for session path.
 
void setSessionTimeoutMs (unsigned long ms)
 Set session timeout in milliseconds.
 

Protected Member Functions

void acceptClient ()
 Accept new client if none is active.
 
void handleSession ()
 Handle requests session if active.
 

Protected Attributes

Platform::TcpClientType client
 
int client_count = 0
 
unsigned long lastRequestTime = 0
 
bool(* onSessionPathCb )(const char *, void *) = nullptr
 
void * onSessionPathRef = nullptr
 
int port = 554
 
RtspSession< Platform > * rtspSession = nullptr
 
Platform::TcpServerType * server = nullptr
 
unsigned long sessionTimeoutMs = 60000
 
RTSPAudioStreamerBase< Platform > * streamer = nullptr
 

Detailed Description

template<typename Platform>
class audio_tools::RTSPServerBase< Platform >

RTSPServerBase - Shared logic for RTSPServer and RTSPServerTaskless.

This class contains all protocol, session, and connection logic, but no task/timer code. Derived classes implement scheduling: either with tasks (RTSPServer) or manual loop (RTSPServerTaskless).

Template Parameters
PlatformTarget hardware platform (e.g., Arduino, ESP32)

Member Function Documentation

◆ begin()

template<typename Platform >
virtual bool begin ( )
inlinevirtual

Start server.

Reimplemented in RTSPServer< Platform >, and RTSPServerTaskless< Platform >.


The documentation for this class was generated from the following file: