arduino-audio-tools
Loading...
Searching...
No Matches
RTSPServerTaskless.h
Go to the documentation of this file.
1/*
2 * Author: Phil Schatzmann
3 *
4 * Based on Micro-RTSP library:
5 * https://github.com/geeksville/Micro-RTSP
6 * https://github.com/Tomp0801/Micro-RTSP-Audio
7 *
8 */
9#pragma once
10#include "RTSPSession.h"
11#include "RTSPMediaStreamer.h"
12#include "RTSPServerBase.h"
13#ifdef ESP32
14#include <WiFi.h>
15#include <esp_wifi.h>
16#endif
17
18namespace audio_tools {
19
42template <typename Platform>
43class RTSPServerTaskless : public RTSPServerBase<Platform> {
44 public:
46
49
50 ~RTSPServerTaskless() { this->end(); }
51
52 void setOnSessionPath(bool (*cb)(const char* path, void* ref), void* ref = nullptr) {
54 }
55
56#ifdef ESP32
57 bool begin(const char* ssid, const char* password) {
58 return this->RTSPServerBase<Platform>::begin(ssid, password);
59 }
60#endif
61
62 bool begin() {
64 }
65
66 void end() {
68 }
69
71 operator bool() { return this->RTSPServerBase<Platform>::operator bool(); }
73
81};
82
83} // namespace audio_tools
RTSPMediaStreamerBase - Core RTP Media Streaming Engine.
Definition RTSPMediaStreamer.h:50
RTSPServerBase - Shared logic for RTSPServer and RTSPServerTaskless.
Definition RTSPServerBase.h:29
void handleSession()
Handle requests session if active.
Definition RTSPServerBase.h:127
int clientCount()
Get number of connected clients.
Definition RTSPServerBase.h:89
virtual bool begin()
Start server.
Definition RTSPServerBase.h:66
int port
Definition RTSPServerBase.h:98
RTSPMediaStreamerBase< Platform > * streamer
Definition RTSPServerBase.h:101
void setSessionTimeoutMs(unsigned long ms)
Set session timeout in milliseconds.
Definition RTSPServerBase.h:93
void end()
Stop server and clean up.
Definition RTSPServerBase.h:76
void acceptClient()
Accept new client if none is active.
Definition RTSPServerBase.h:110
void setOnSessionPath(bool(*cb)(const char *path, void *ref), void *ref=nullptr)
Set callback for session path.
Definition RTSPServerBase.h:41
RTSPServerTaskless - Manual Multi-client RTSP Audio Streaming Server.
Definition RTSPServerTaskless.h:43
bool begin(const char *ssid, const char *password)
Definition RTSPServerTaskless.h:57
int clientCount()
Definition RTSPServerTaskless.h:70
void doLoop()
Main server loop - call this frequently from Arduino loop()
Definition RTSPServerTaskless.h:77
bool begin()
Start server.
Definition RTSPServerTaskless.h:62
~RTSPServerTaskless()
Definition RTSPServerTaskless.h:50
void setSessionTimeoutMs(unsigned long ms)
Definition RTSPServerTaskless.h:72
void end()
Definition RTSPServerTaskless.h:66
void setOnSessionPath(bool(*cb)(const char *path, void *ref), void *ref=nullptr)
Definition RTSPServerTaskless.h:52
RTSPServerTaskless(streamer_t &streamer, int port=8554)
Definition RTSPServerTaskless.h:47
Generic Implementation of sound input and output for desktop environments using portaudio.
Definition LMSEchoCancellationStream.h:6