07 2022 档案
摘要:class RtcpHeader { public: #if __BYTE_ORDER == __BIG_ENDIAN //版本号,固定为2 uint32_t version: 2; //padding,固定为0 uint32_t padding: 1; //reception report cou
阅读全文
摘要:与Sender Report相比,少了sender info。
阅读全文
摘要:class RtcpHeader { public: #if __BYTE_ORDER == __BIG_ENDIAN //版本号,固定为2 uint32_t version: 2; //padding,固定为0 uint32_t padding: 1; //reception report cou
阅读全文
摘要:推流数据开始前用record命令。回复的代码如下 void RtspSession::handleReq_RECORD(const Parser &parser){ if (_sdp_track.empty() || parser["Session"] != _sessionid) { send_S
阅读全文
摘要:setup要接收两次,指明流媒体的传输方式 。 代码如下 void RtspSession::handleReq_Setup(const Parser &parser) { //处理setup命令,该函数可能进入多次 int trackIdx = getTrackIndexByControlUrl(
阅读全文
摘要:基类转换为子类,dynamic_cast普通的类,dynamic_pointer_cast为智能指针时。 https://blog.csdn.net/jiayizhenzhenyijia/article/details/98209529
阅读全文
摘要:ZLMedia 、sdp
阅读全文
摘要:分隔字符非常有用的https://blog.csdn.net/red_red_red/article/details/84260967
阅读全文
摘要:将一个字符串string 通过分隔符存入到一个vector中。 vector<string> split(const string &s, const char *delim) { vector<string> ret; size_t last = 0; auto index = s.find(de
阅读全文
摘要:随机数的产生。 https://blog.csdn.net/qq_41904635/article/details/104462373
阅读全文
摘要:将左值变为右值使用。 https://blog.csdn.net/Huoon/article/details/113917219
阅读全文
摘要:1.RTSP协议的处理在 RtspSplitter::onRecvHeader中进行。 2.RTSP协议中SDP的处理在RtspSplitter::onRecvContent中进行。 3.收到的RTSP数据在Parser类中Parse函数解析后存到和相关的成员变量中,各个key和value的值通过函
阅读全文
摘要:map不允许重复,multimap允许重复。 https://blog.csdn.net/CV_Jason/article/details/83818549。
阅读全文
摘要:函数后面加override关键字的,继承类中必须重写。 https://www.qb5200.com/article/324176.html
阅读全文
摘要:https://blog.csdn.net/qq_41694204/article/details/82620467 区分不区分在小写。
阅读全文
摘要:C++11新特性之十一:emplace
阅读全文
摘要:1.【杂项学习】linux下使用Cmake+GDB断点调试 2.GDB gdb 调试
阅读全文
摘要:1.C++11 weak_ptr智能指针(一看即懂) 2.C++智能指针weak_ptr详解
阅读全文
摘要:https://blog.csdn.net/weixin_38339025/article/details/89161324
阅读全文
摘要:(1)代码 static string dateStr() { char buf[64] = {0}; time_t tt = time(NULL); strftime(buf, sizeof(buf), "%a, %b %d %Y %H:%M:%S GMT", gmtime(&tt)); retu
阅读全文