v4l2rtspserver/inc/ServerMediaSubsession.h

42 lines
1.2 KiB
C
Raw Normal View History

2014-07-20 14:02:14 +00:00
/* ---------------------------------------------------------------------------
** This software is in the public domain, furnished "as is", without technical
** support, and with no warranty, express or implied, as to its usefulness for
** any purpose.
**
** ServerMediaSubsession.h
**
** -------------------------------------------------------------------------*/
#pragma once
2014-07-20 14:02:14 +00:00
#include <sys/stat.h>
2014-07-20 14:02:14 +00:00
#include <string>
2015-03-01 22:28:17 +00:00
#include <iomanip>
#include <iostream>
2016-04-10 15:58:03 +00:00
#include <fstream>
2014-07-20 14:02:14 +00:00
// live555
#include <liveMedia.hh>
// forward declaration
class V4L2DeviceSource;
2014-07-20 14:02:14 +00:00
// ---------------------------------
// BaseServerMediaSubsession
// ---------------------------------
class BaseServerMediaSubsession
{
public:
BaseServerMediaSubsession(StreamReplicator* replicator): m_replicator(replicator) {};
public:
static FramedSource* createSource(UsageEnvironment& env, FramedSource * videoES, const std::string& format);
2018-09-07 21:31:32 +00:00
static RTPSink* createSink(UsageEnvironment& env, Groupsock * rtpGroupsock, unsigned char rtpPayloadTypeIfDynamic, const std::string& format, V4L2DeviceSource* source);
2019-08-27 13:19:13 +00:00
char const* getAuxLine(V4L2DeviceSource* source, RTPSink* rtpSink);
2014-07-20 14:02:14 +00:00
protected:
StreamReplicator* m_replicator;
};