| | |
| | | #include "PipeLine.h"
|
| | | #include <string>
|
| | |
|
| | | struct RTSPConfig
|
| | | struct PL_RTSPClient_Config
|
| | | {
|
| | | std::string receivingInterfaceAddr;
|
| | | int desiredPortNum;
|
| | | bool requestStreamingOverTcp;
|
| | | std::string progName;
|
| | | std::string rtspURL;
|
| | | bool aux; // frame data start with 0x00000001
|
| | |
| | | int tunnelOverHTTPPortNum; // portNumBits
|
| | | void* args;
|
| | |
|
| | | RTSPConfig() : |
| | | PL_RTSPClient_Config() : |
| | | receivingInterfaceAddr(), desiredPortNum(0), requestStreamingOverTcp(false), |
| | | progName(), rtspURL() ,aux(true), verbosityLevel(1), tunnelOverHTTPPortNum(0), args(nullptr)
|
| | | { }
|
| | | };
|
| | |
|
| | | struct RtspClientParam;
|
| | |
|
| | | class PL_RTSPClient : public PipeLineElem
|
| | | {
|
| | | friend void rtsp_client_frame_callback(void* arg, uint8_t* buffer, size_t buffSize);
|
| | | friend void rtsp_client_frame_callback(void* arg, uint8_t* buffer, size_t buffSize, timeval presentationTime);
|
| | | friend void rtsp_client_continue_callback(void* arg);
|
| | | friend void rtsp_client_set_param_callback(void* arg, RtspClientParam& param);
|
| | |
|
| | | public:
|
| | | PL_RTSPClient();
|
| | |
| | |
|
| | | virtual bool pay(const PipeMaterial& pm);
|
| | | virtual bool gain(PipeMaterial& pm);
|
| | |
|
| | | // kill locks internal
|
| | | void kill();
|
| | |
|
| | | private:
|
| | | void* internal;
|