/* --------------------------------------------------------------------------- ** 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 #include #include #include #include #include // live555 #include // forward declaration class V4L2DeviceSource; // --------------------------------- // BaseServerMediaSubsession // --------------------------------- class BaseServerMediaSubsession { public: BaseServerMediaSubsession(StreamReplicator* replicator): m_replicator(replicator) {}; public: static FramedSource* createSource(UsageEnvironment& env, FramedSource * videoES, const std::string& format); static RTPSink* createSink(UsageEnvironment& env, Groupsock * rtpGroupsock, unsigned char rtpPayloadTypeIfDynamic, const std::string& format, V4L2DeviceSource* source); char const* getAuxLine(V4L2DeviceSource* source, RTPSink* rtpSink); protected: StreamReplicator* m_replicator; };