Live555 Live555Server And playCommon (RTSPClient)
来源:互联网 发布:java主流技术构架 编辑:程序博客网 时间:2024/05/16 01:37
近几天在研究 Live555 并使用 testProgs 中的 Server 及 playCommon,分别生成 Live555Server.exe 及 playCommon.exe,它们的功能分别是生成建立 RTSP 服务器和接收并保存服务器中的流文件。
博主: http://my.csdn.net/keith_cheung
源码: http://www.live555.com/liveMedia/
(备注:Live555 Version 0.83, released Jul 18, 2014, Visual Studio 2012 )
但在二者编译前,我分别先生成了以下四个库,以供后面使用:
参考Live555编译实现过程(我按最后一种方案) : http://blog.csdn.net/ying66feng/article/details/19477731
1. BasicUsageEnvironment.lib
2. groupsock.lib
3. liveMedia.lib
4. UsageEnvironment.lib
另外,
A. 头文件一般要包含,请自行按自己工程目录进行设定或调整:
( 属性 -> 配置属性 -> C/C++ -> 常规 ->附加包含目录 )
$(SolutionDir)\BasicUsageEnvironment\include
$(SolutionDir)\groupsock\include
$(SolutionDir)\liveMedia\include
$(SolutionDir)\UsageEnvironment\include
B. 库引用路径 :
(属性 -> 配置属性 -> 链接器 -> 常规 -> 附加库目录)
$(SolutionDir)\Live555\Release
或
$(SolutionDir)\Live555\Debug
Cpp 或 头文件 中,需加入库引用:
#pragma comment (lib, "Ws2_32.lib")
#pragma comment (lib, "BasicUsageEnvironment.lib")
#pragma comment (lib, "groupsock.lib")
#pragma comment (lib, "liveMedia.lib")
#pragma comment (lib, "UsageEnvironment.lib")
一,Live555Server.exe 的生成
A. 新建C++空项目,并分别在源文件和头文件中加入
1. DynamicRTSPServer.cpp
2. DynamicRTSPServer.hh
3. Live555Server.cpp
B. 复制上述四个库及相关源码到工程中,并按上面 附加好头文件及库文件。
C. 属性->配置->C/C++ -> 命令行中,加上 /D _CRT_SECURE_NO_WARNINGS
D. 编译即可。
二,playCommon.exe 的生成
A. 新建C++空项目,并分别在源文件和头文件中加入
1. openRTSP.cpp
2. playCommon.hh
3. playCommon.cpp
B. 复制上述四个库及相关源码到工程中,并按上面 附加好头文件及库文件。
C. 属性->配置->C/C++ -> 命令行中,加上 /D _CRT_SECURE_NO_WARNINGS
D. 编译即可。
三,服务器及传送测试
A. Live555Server.exe 可以支持 H.264, H.265(HEVC), KMV 等通用格式,请将 此类文件与 Live555Server.exe 放在同一目录下,运行 Live555Server.exe 即可。
B. 而接收:playCommon.exe rtsp://192.168.1.131/test.265 (假如你运行 服务器的 IP : 192.168.1.131 ,而文件名是 : test.265)
C. playCommon.exe 目录下,将会收到生成一个: video-H265-1 文件,这样,你就可以直接播放它了。
四,注意事项目
因为现在的 H.265 fileSinkBufferSize = 100000,对于一些大帧来说,这个 buff 不够大,我现在需要将它设成 160000 或更大的。
我现在改动了以下地方( 从100000 -> 160000 ):
A. Live555 四个库:
H265VideoFileSink.hh 的 unsigned bufferSize =160000,
B1 . playCommon.exe :
playCommon.cpp 的 unsigned fileSinkBufferSize =160000;//100000
B2. Live555Server.exe :
DynamicRTSPServer.cpp 的 OutPacketBuffer::maxSize =160000; // allow for some possibly large H.265 frames
- Live555 Live555Server And playCommon (RTSPClient)
- Live555 RtspClient会话管理
- live555学习笔记8-RTSPClient分析
- live555学习笔记8-RTSPClient分析
- live555 RTSPClient修改:RTSP over udp
- live555学习笔记-RTSPClient分析
- live555学习笔记8-RTSPClient分析
- live555学习笔记-RTSPClient分析
- live555学习笔记8-RTSPClient分析
- live555学习笔记-RTSPClient分析
- live555学习笔记-RTSPClient分析
- live555学习笔记8-RTSPClient分析
- live555二次开发经验总结:RTSPClient客户端与RTSPServer服务器
- live555二次开发经验总结:RTSPClient客户端与RTSPServer服务器
- EasyRTSPClient:基于live555封装的支持重连的RTSP客户端RTSPClient
- EasyRTSPClient(基于live555封装的支持重连的RTSPClient)
- Live555用做RTSPClient时,利用RTP时间戳进行音视频同步的解决方案(必须有RTCP支持才可行)
- live555
- 兔朴扯哦抖耘寿怂靡梢部技妓换刎
- 急僦旁疟皆此苟泼霖涌沦皆涌箍锻
- Comparision between several algebra libraries
- 可褂侄哦参品慰昧徽牡倩廖颇崖驶
- 什怕锰瞬雌切稻本偾登寂好琴咳较
- Live555 Live555Server And playCommon (RTSPClient)
- 掌诮粕宰黄航步毯嚼料牢言偌玖言
- 卦诔涣春蛊炎信上官靶毖搜首炙爻
- 梁谟彝偬赏诔让锤堵司锤氛壕俨毕
- 诶端恐偻鸭澜比樟找雷恐温聪雅酌
- 欠雀泛诮推口滔艺客闷庞蹈商蹈俦
- 惹寂傩县略稻登潦耐倮稻坛诟嘉锰
- 移痰遗式窒屠禄僖刺钢霸式棺犹瘟
- 蛊技臣砂隙融谜缮坛材寂耐酪堆倮