上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 41 下一页
摘要: live555是个流媒体C++开源库,VLC的Meida Player就使用了它的API完成的RTSP客户端,由于VLC的SDK没有提供相关record流到视频文件的API,所以我想用过live555的例子学习,但是live555它不自带二进制的发布,必须自己编译。编译live555:http://... 阅读全文
posted @ 2015-08-25 14:32 foo__hack 阅读(3666) 评论(0) 推荐(0) 编辑
摘要: 最近做RTSP流播放,需要了解.sdp这种会话描述的文件格式,当然,里面的具体语法有SDP解析器来分析。但是我需要大概了解一些字段的意思,它是文本描述的,采用key value的形式描述。https://en.wikipedia.org/wiki/Session_Description_Protoc... 阅读全文
posted @ 2015-08-25 08:40 foo__hack 阅读(2252) 评论(0) 推荐(0) 编辑
摘要: 1 #include 2 #include 3 #include 4 #include 5 6 #include 7 #pragma comment(lib, "libvlc.lib") 8 #pragma comment(lib, "libvlccore.lib") 9 10 int... 阅读全文
posted @ 2015-08-22 11:05 foo__hack 阅读(3164) 评论(0) 推荐(0) 编辑
摘要: 一般我们在用Qt的QByteArrary或者List的时候,会有相应的append的方法,该函数,就是把数据加入末尾。但是std::vector就没有相应的方法。但是我们可以用insert方法来实现:readBuffer.insert(m_readBuffer.end(), tmpreadBuffe... 阅读全文
posted @ 2015-08-18 16:21 foo__hack 阅读(1632) 评论(0) 推荐(0) 编辑
摘要: 因为TCP是流式处理的,所以包没有边界,必须设计一个包头,里面表示包的长度(一般用字节表示),根据这个来逐个拆包。如果对于发送/接收频率不高的话,一般也就不做拆包处理了,因为不大可能有粘包现象。以下是粘包和拆包的分析:http://blog.csdn.net/zhangxinrun/article/... 阅读全文
posted @ 2015-08-18 16:12 foo__hack 阅读(2350) 评论(0) 推荐(0) 编辑
摘要: 大家都知道,在进行网络传输的时候,因为分布在网络上的每台机器可能大小端的不同,需要进行字节序列转换,比如用win32 API的socket里面就有类似与htonl等与此类似的函数,它就是把主机端的字节序列转换成网络传输的字节序列。当然也有与之相反的函数ntohl,是把网络字节序,转换为主机字节序。比... 阅读全文
posted @ 2015-08-10 16:12 foo__hack 阅读(1513) 评论(0) 推荐(1) 编辑
摘要: 这是最近需要实现一个基于TCP的一个与设备通信比较复杂的协议以前没有太搞明白的问题之后看了这些,豁然开朗这是Qt的TCP相关讲解:http://www.bogotobogo.com/Qt/Qt5_Asynchronous_QTcpServer_QThreadPool.phphttp://blog.c... 阅读全文
posted @ 2015-08-08 21:08 foo__hack 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 我是生成C/C++的文档,输出html格式的文档。就不做成CHM了。注释要这种写:(当然,有数种注释风格,选择任意你喜欢的就行)1 /**2 *3 * 一系列的doxygen的 command4 *5 *6 */具体参考这里:http://www.stack.nl/~dimitri/doxyg... 阅读全文
posted @ 2015-07-21 08:54 foo__hack 阅读(1024) 评论(0) 推荐(0) 编辑
摘要: 原来VS新建的源文件默认的编码是根据系统locale选择的。我的是国标2312.我草。可坑死我了。一直不知道。当时主要是需要用doxygen生成html文档,它默认的输入文件的格式是UTF-8,是不带BOM的。我就用NotePad++全部把源文件转换成UTF-8带BOM编码格式的了。然后我又一次用V... 阅读全文
posted @ 2015-07-20 14:45 foo__hack 阅读(3675) 评论(0) 推荐(0) 编辑
摘要: 1 #include 2 #include 3 4 std::string exePath = boost::filesystem::initial_path().string();这样就可以了。避免用win32 API这种又不友好也不跨平台的方式了。直接用boost舒服。 阅读全文
posted @ 2015-07-16 11:29 foo__hack 阅读(4236) 评论(0) 推荐(0) 编辑
上一页 1 ··· 9 10 11 12 13 14 15 16 17 ··· 41 下一页