1
0
Fork 0
mirror of https://github.com/ossrs/srs.git synced 2025-03-09 15:49:59 +00:00

srt pull/push server

This commit is contained in:
runner365 2020-01-14 21:10:33 +08:00
parent aeee3011ef
commit b53b75ea1e
12 changed files with 982 additions and 15 deletions

View file

@ -1,23 +1,35 @@
#ifndef SRT_SERVER_H
#define SRT_SERVER_H
#include <srt/srt.h>
#include <thread>
#include <memory>
class srt_handle;
class srt_server {
public:
srt_server(unsigned short port);
~srt_server();
int start();
void stop();
int start();//init srt handl and create srt main thread loop
void stop();//stop srt main thread loop
private:
//init srt socket and srt epoll
int init_srt();
//srt main epoll loop
void on_work();
//accept new srt connection
void srt_handle_connection(SRT_SOCKSTATUS status, SRTSOCKET input_fd, const std::string& dscr);
private:
unsigned short listen_port;
SRTSOCKET server_socket;
int _pollid;
bool run_flag;
std::shared_ptr<std::thread> thread_run_ptr;
std::shared_ptr<srt_handle> handle_ptr;
};
typedef std::shared_ptr<srt_server> SRT_SERVER_PTR;