#pragma once #include "dtsc.h" #include "json.h" #include "mp4.h" #include "mp4_generic.h" #include "socket.h" #include #include #include #include #include #include #include #include #include #include namespace SDP{ class Track; }; /// This namespace holds all RTP-parsing and sending related functionality. namespace RTP{ extern unsigned int MAX_SEND; /// This class is used to make RTP packets. Currently, H264, and AAC are supported. RTP /// mechanisms, like increasing sequence numbers and setting timestamps are all taken care of in /// here. class Packet{ private: bool managed; char *data; /// packBuffer; void (*callback)(const uint64_t track, const Packet &p); }; class MPEGVideoHeader{ public: MPEGVideoHeader(char * d); void clear(); uint16_t getTotalLen() const; std::string toString() const; void setTempRef(uint16_t ref); void setPictureType(uint8_t pType); void setSequence(); void setBegin(); void setEnd(); private: char * data; }; }