# RTSPLive
media streaming server using RTSP
RTSPLive servers as a media streamer using RTSP
with it you could stream a media file(using RTSPRenderer.dll in GraphEdit, no additional codes are required),
or you could use RTSPLive.dll and feed it with frames(from media files or cameras etc.) to stream them.
Codecs
------
currently the server supports the following codec(s):
- [x] h264(avc)
Projects
--------
the solution incorporates 5 projects:
- [x] CLI (exe)
-- a very simple test application, which feeds one h264 frame(I) repeatedly to the server.
- [x] RTSPLive (dll)
-- the RTSP streamer, which implements the RTSP protocol and accepts requests from different players.
- [x] RTSPRenderer (dll)
-- a directshow renderer filter(a renderer wrapper of RTSPLive.dll), which can be registered and used as the following screenshot shows.
- [x] UTE (dll)
-- UTE stands for Unified Transport Entry, which is a wrapper of ASIO(http://think-async.com/), this is our network library and it provides TCP/UDP transmissions.
- [x] XUtil (lib)
-- some utils such as locks and threads ...
ScreenShots
-----------
use of RTSPRenderer.dll:
<img src="https://user-images.githubusercontent.com/8287989/27899746-1b4de86e-625e-11e7-825d-746927ccc978.PNG" height="304px" >
you can access the stream from either a vlc player:
<img src="https://user-images.githubusercontent.com/8287989/27899752-1e219284-625e-11e7-8fcb-1c2c4a6404b9.PNG" height="514px" >
or ffplay:
<img src="https://user-images.githubusercontent.com/8287989/27899756-20c5ca46-625e-11e7-93ba-1c8cabd5db68.PNG" height="443px" >
or any player on your mobile devices that support RTSP protocol:
<img src="https://user-images.githubusercontent.com/8287989/27899860-8d303824-625e-11e7-899e-8e26c12d6dac.jpeg" height="623px" >
and, this is the CLI project stream(played by vlc):
<img src="https://user-images.githubusercontent.com/8287989/27899957-ef571fea-625e-11e7-895c-bb4a10edaf94.PNG" height="414px" >
Compile
------
RTSPLive is developed on VS2015 (win7 64bit)
I only configured the debug(x86) solution, nothing else is tested...
RTSPRenderer.dll is a dshow render filter, to build it you need to:
1. build dshow baseclasses(which is incorporated in the windows SDK).
2. specify the include and library path to dshow for project 'RTSPRenderer'.
3. register the filter by running command 'regsvr32' on the windows command shell(you'd better write a 'bat' file and run the file in 'Administrator mode').
4. open GraphStudio.exe (http://blog.monogram.sk/janos/tools/monogram-graphstudio/) and insert a media file source filter that contains a H264 stream, and a demuxer, and our renderer named "RTSP Renderer".
5. run the graph, and now the server is streaming the file.
RTSPRenderer is the only project that depends on the OS(windows), because it is a dshow filter :), other projects
should be OS independent.
UTE is the only project that has dependency on other open-source project(ASIO), which has already been included
in the solution(no need to download ASIO).
if you have any questions about RTSPLive, please let me known at: pengzhao218@126.com
Todo
------
client disconnection detection & RTCP & more RTSP commands & UDP optimization for multiplayers & more codecs ...
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
RTSP服务器 c++ (474个子文件)
test.264 2KB
RTSPMessager.cpp 18KB
SDPEncoder.cpp 8KB
RTSPCore.cpp 8KB
RTSPRenderer.cpp 7KB
XUMutex.cpp 6KB
AVCStream.cpp 6KB
XUFunctorCommandTask.cpp 5KB
RTSPClient.cpp 5KB
XUTime.cpp 5KB
XUThread.cpp 4KB
UTEUdpTransport.cpp 3KB
RtpPacket.cpp 2KB
UTECore.cpp 2KB
UTEAcceptor.cpp 2KB
XUStat.cpp 1KB
AVStream.cpp 1KB
main.cpp 1KB
XURefCount.cpp 969B
UTETcpTransport.cpp 865B
src.cpp 694B
RTSPLive.cpp 637B
AACStream.cpp 631B
UTE.cpp 439B
RtcpPacket.cpp 336B
XULog.cpp 281B
RTSPRenderer.def 162B
RTSPLive.vcxproj.filters 3KB
XUtil.vcxproj.filters 2KB
UTE.vcxproj.filters 2KB
RTSPRenderer.vcxproj.filters 1KB
cli.vcxproj.filters 1KB
.gitignore 646B
XULog.h 9KB
XUFunctorCommand.h 6KB
RTSPMessager.h 6KB
UTETcpTransport.h 5KB
UTETransport.h 5KB
AVStream.h 4KB
UTE.h 4KB
RtpPacket.h 3KB
RTSPClient.h 3KB
RTSPCore.h 2KB
RTSPLive.h 2KB
UTEDefines.h 2KB
XUMutex.h 2KB
UTEUdpTransport.h 2KB
SDPEncoder.h 2KB
InterleavedFrame.h 2KB
AVCStream.h 2KB
XUFunctorCommandTask.h 1KB
UTECore.h 1KB
RTSPRenderer.h 1KB
UTEModule.h 1KB
XUThread.h 965B
UTEService.h 908B
AACStream.h 893B
UTEAcceptor.h 876B
XUStat.h 726B
XURefCount.h 674B
XUTime.h 585B
RtcpPacket.h 422B
buffer.hpp 68KB
basic_socket.hpp 49KB
basic_socket_acceptor.hpp 37KB
config.hpp 37KB
basic_datagram_socket.hpp 37KB
basic_raw_socket.hpp 37KB
read_until.hpp 36KB
read_until.hpp 36KB
basic_stream_socket.hpp 33KB
connect.hpp 30KB
read_at.hpp 28KB
write_at.hpp 28KB
io_service.hpp 27KB
write_at.hpp 27KB
context.hpp 26KB
read.hpp 25KB
stream.hpp 25KB
read_at.hpp 25KB
write.hpp 25KB
read.hpp 25KB
write.hpp 24KB
basic_serial_port.hpp 24KB
basic_seq_packet_socket.hpp 22KB
win_iocp_socket_service_base.hpp 19KB
basic_waitable_timer.hpp 18KB
basic_deadline_timer.hpp 17KB
win_iocp_socket_service.hpp 17KB
stream.hpp 16KB
basic_descriptor.hpp 16KB
handler_type_requirements.hpp 16KB
basic_socket_streambuf.hpp 16KB
reactive_socket_service_base.hpp 15KB
null_socket_service.hpp 15KB
openssl_stream_service.hpp 15KB
reactive_socket_service.hpp 15KB
basic_random_access_handle.hpp 14KB
socket_types.hpp 14KB
socket_base.hpp 14KB
共 474 条
- 1
- 2
- 3
- 4
- 5
资源评论
- FelaniaLiu2023-07-27这个RTSP服务器文件提供了稳定的性能和流畅的视频传输,对于需要实时传输的应用来说非常可靠。
- 会飞的黄油2023-07-27这个RTSP服务器文件还提供了详尽的文档和示例代码,方便开发者进行二次开发和定制,非常贴心。
- 黄涵奕2023-07-27这个RTSP服务器文件具有丰富的功能,可以支持多种视频格式的传输,更加灵活多样。
- 十二.122023-07-27这个RTSP服务器文件的代码经过精心优化,运行效率高,对系统资源的占用非常低。
- 罗小熙2023-07-27这个RTSP服务器文件设计简洁,对初学者来说使用起来并不困难,容易上手。
aurora001
- 粉丝: 0
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功