‌RTSPtoWeb, 一个将rtsp转换成webrtc的开源项目

RTSPtoWeb 是一个开源项目,旨在将RTSP流转换为可在现代web浏览器中消费的格式,如Media Source Extensions (MSE)、WebRtc或HLS。该项目完全使用golang编写,不依赖于ffmpeg或gstreamer,确保了高效的性能和轻量级的部署‌。

功能特点

  1. 跨平台兼容性‌:RTSPtoWeb使用Go语言编写,确保了跨平台的兼容性。
  2. 高效性能‌:通过代码优化和多线程处理,提升了项目的整体性能。
  3. 多格式支持‌:支持MSE、WebRTC和HLS等多种流媒体格式,满足不同需求。
  4. 灵活配置‌:提供丰富的配置选项,用户可以根据需求自定义服务器和流设置。
  5. 调试支持‌:内置调试功能,方便开发者进行问题排查和性能优化‌。

部署:

1、下载代码:

git clone https://github.com/deepch/RTSPtoWeb

2、进入代码路径,执行

GO111MODULE=on go run *.go

3、打开浏览器,输入

http://127.0.0.1:8083

点击edit,进入编辑页面,按要求增加rtsp的地址。

然后切回Streams List,点击All

即可看到播放的流。

也可以手动配置,代码工程里面有一个config.json配置文件,可以参照README里面的说明进行配置,例如:

{

"server": {

"debug": true,

"log_level": "info",

"http_demo": true,

"http_debug": false,

"http_login": "demo",

"http_password": "demo",

"http_port": ":8083",

"ice_servers": "stun:stun.l.google.com:19302",

"rtsp_port": ":5541"

},

"streams": {

"demo1": {

"name": "test video stream 1",

"channels": {

"0": {

"name": "ch1",

"url": "rtsp://admin:admin@YOU_CAMERA_IP/uri",

"on_demand": true,

"debug": false,

"audio": true,

"status": 0

},

"1": {

"name": "ch2",

"url": "rtsp://admin:admin@YOU_CAMERA_IP/uri",

"on_demand": true,

"debug": false,

"audio": true,

"status": 0

}

}

},

"demo2": {

"name": "test video stream 2",

"channels": {

"0": {

"name": "ch1",

"url": "rtsp://admin:admin@YOU_CAMERA_IP/uri",

"on_demand": true,

"debug": false,

"status": 0

},

"1": {

"name": "ch2",

"url": "rtsp://admin:admin@YOU_CAMERA_IP/uri",

"on_demand": true,

"debug": false,

"status": 0

}

}

}

},

"channel_defaults": {

"on_demand": true

}

}

相关推荐
EasyGBS8 天前
RTSP、RTMP、HLS、FLV、WebRTC……国标GB28181视频平台EasyGBS五大流媒体协议,你的场景该用哪个?
音视频·webrtc
REDcker9 天前
libdatachannel 快速入门
c++·webrtc·datachannel
冯程12 天前
WebRTC 之 AllocationSequence 详解
webrtc·音视频开发
阿拉斯攀登14 天前
售货柜实战:IPC 拉流 → 抽帧 → YOLO 识别完整流水线
yolo·ffmpeg·音视频·webrtc·视频编解码
阿拉斯攀登14 天前
RTSP 拉流与录制:IPC 摄像头本地录像完整方案
ffmpeg·音视频·webrtc·实时音视频·视频编解码
阿拉斯攀登15 天前
数据通道:RTCDataChannel 可靠与不可靠传输
音视频·webrtc·实时音视频·媒体·视频编解码
REDcker15 天前
腾讯TRRO SDK深度剖析
音视频·webrtc·实时音视频·直播·rtc·腾讯
阿拉斯攀登15 天前
FFmpeg 转码详解:封装格式、编码器、码率控制
ffmpeg·音视频·webrtc·实时音视频·视频编解码
阿拉斯攀登15 天前
FFmpeg 入门:命令行的 20 个常用场景
ffmpeg·音视频·webrtc·视频编解码
阿拉斯攀登16 天前
媒体流与轨道:MediaStream 与 MediaStreamTrack
嵌入式硬件·webrtc·实时音视频·媒体·视频编解码