mistserver/src/output/output_hls.h
2021-10-19 22:29:40 +02:00

30 lines
808 B
C++

#include "output_http.h"
#include "output_ts_base.h"
namespace Mist{
class OutHLS : public TSOutput{
public:
OutHLS(Socket::Connection &conn);
~OutHLS();
static void init(Util::Config *cfg);
void sendTS(const char *tsData, size_t len = 188);
void sendNext();
void onHTTP();
bool isReadyForPlay();
virtual void onFail(const std::string &msg, bool critical = false);
protected:
std::string h264init(const std::string &initData);
std::string h265init(const std::string &initData);
bool hasSessionIDs(){return !config->getBool("mergesessions");}
std::string liveIndex();
std::string liveIndex(size_t tid, const std::string &sessId);
size_t vidTrack;
size_t audTrack;
uint64_t until;
};
}// namespace Mist
typedef Mist::OutHLS mistOut;