Commit Graph

474 Commits (faf5fb0a83bac94a7942efa804125d5844eab53d)

Author SHA1 Message Date
winlin ab5079909d For #2369, #1708, #1941: Check errno when close fd or stop thread 3 years ago
xmedia-systems 34b968aabf JSON: Support escape special chars. (#1758) v4.0.182 3 years ago
winlin 19e857ada4 Remove dead link for issues 3 years ago
Haibo Chen 36b813b971 Enhance HLS: support http callback on_play/stop, support statistic (#2578)
* Enhance HLS: support http callback on_play/stop, support statistic

* make code readable

* make code readable

* rename secret
3 years ago
Justin Kromlinger a583d7efb4 Set empty HTTP paths to '/' to avoid malformed requests (#2329)
This resolves #1610.
4 years ago
Haibo Chen 86c67f7d95 RTC: Support statistic for HTTP-API, HTTP-Callback and Security (#2483) v4.0.144
* commit message for your changes. Lines starting

* Update srs_app_rtc_api.cpp

* add SrsRtcConnPlay and SrsRtcConnPublish, in enum SrsRtmpConnType

* Update srs_rtmp_stack.cpp

* Update srs_app_rtc_conn.cpp

* Update srs_app_rtc_api.cpp

* update utest

* Update srs_utest_app.cpp
4 years ago
winlin afa32910c9 Fix bugs and enhance code. 4.0.142 4 years ago
winlin 642359a50e For #2424, use srandom/random to generate. 4.0.139 4 years ago
winlin da763e43d5 Squash for #2424, query the latest available version. 4.0.132 4 years ago
winlin 67272f0721 Fix build fail for SPDX 4 years ago
winlin 3cd22b6e6e Use SPDX-License-Identifier: MIT. 4.0.124 4 years ago
winlin af04285baa Tools: Remove srs-librtmp 4 years ago
winlin ddd7a378b1 Rename SrsRtpPacket2 to SrsRtpPacket. 4.0.111 4 years ago
winlin 717e811002 Change virtual public to public. 4.0.109 4 years ago
winlin cd45750c9d RTC: Eliminate unused stat API 4 years ago
winlin 8c5a435714 Fix print bug in retrieve_local_ips. 4.0.107 4 years ago
winlin 6dc93fe0a8 RTC: Update benchmark data 4 years ago
winlin b1e85664a1 Refine init of global SrsPps 4 years ago
winlin cec0191b16 Happy 2021 4 years ago
winlin d01e603b25 Happy 2021 4 years ago
winlin cec588e08a For #2188: Remove sendmmsg from ST. 4 years ago
winlin 6dac180627 Kernel: Never depends on another globals for global variables 4 years ago
winlin d8ba72fdc5 Kernel: Extract SrsPps to kernel 4 years ago
winlin 5b8eea8cc5 Stat: Fix build fail for stat of timer and dispose 4 years ago
xialixin@kanzhun.com fdaee20b81 For #2200, Enable RTC and FLV for GB28181 4 years ago
winlin c0fda42743 For #2194, Support ST yield 4 years ago
winlin d8563398b2 Clock: Update stat. Insert timer to execute first 4 years ago
winlin bddc787a16 Refine the pps. 4 years ago
winlin 77cffd3e04 Main: Refine sever manager. 4 years ago
winlin 826546d518 Refine pps add SrsPps 4 years ago
winlin bfa156247c Merge branch '4.0release' into develop 4 years ago
winlin 1c41f5d796 Merge SRS3, change id of stat to string 4 years ago
winlin fb7c051833 Change id from int to string for the statistics. 3.0.157 4 years ago
winlin 03389f5e8c Merge branch '4.0release' into develop 4 years ago
winlin 1df2ea5ca8 Merge branch '3.0release' into 4.0release 4 years ago
winlin 831c78062b Remove vhost in query if not present it 4 years ago
winlin 8fa093c53c Merge branch '4.0release' into develop 4 years ago
winlin 2538b02a9b Merge branch '3.0release' into 4.0release 4 years ago
winlin 6e43ef6866 For RTMP edge/forward, pass vhost in tcUrl, not in stream. 3.0.156 4 years ago
winlin f9444c376c Merge SRS4 4 years ago
winlin 0ccbd7c40a Support get schema for HTTP message 4 years ago
winlin c7c6d8778a RTC: Fix warnings 4 years ago
莫战 b38f30c3ee support query parsing and escape 4 years ago
winlin c779d95246 GB28181: Remove chinese comments. 4 years ago
Pieere Pi ffae1720ec gb28181模块可用性增强
主要改动,
1. 支持作为GB/T 28181上级平台
2. 新的目录接口sip_query_devicelist (/api/v1/gb28181?action=sip_query_devicelist)
3. 各种异常和问题修复
4. 其他一些小改动

以上改动基于feature/rtc分支,因为需要网页用WebRTC来拉GB28181的监控流,gb28181分支代码有点老了。

下面的序号n是指第n个差异块("@@ -"之间的内容)。

srs_gb28181.html
1. 原页面上多加了一个端口号
2-4. 给摄像头加上名称显示
5. 查询目录去掉chid
6. 删除通道参数分解为id和chid
7. API端口固定为1985

srs_app_gb28181.cpp
1-4. 四处因为错误而退出GB28181媒体处理循环,修改为不退出
5. payload为空异常
6. 修正判断startcode越界一个字符导致内存写越界的问题
ps流有可能末尾是全零填充,而且越界的那个字符正好是0x01,这样会多出一个nalu(末尾的三个0x00和一个越界的0x01),后面写video_data内存越界(if (first_pos != pre_pos){块,此处size - pre_pos - 4为-1,uint32_t naluLen得到的值为0,video_data[pre_pos+3] = p[0];写越界)破坏了其他数据,后续video_stream析构出错程序异常退出。
7. 此处srs后来已修复
8. 更新ssrc为被叫返回的值
原代码只支持标准中的《点播域内设备媒体流SSRC处理方式》(设备注册上来),不支持《点播外域设备媒体流SSRC处理方式》(即作为上级平台)。
这是因为如果srs作为上级平台,ssrc不是自己生成的,而是下级平台生成的。
9. 删除通道参数分解为id和chid
10. notify_sip_unregister后delete_stream_channel无效
11. notify_sip_query_catalog清空内存中的设备列表
12. 新函数query_device_list

srs_app_gb28181.hpp
1. update_rtmpmuxer_to_newssrc_by_id声明
2. 新函数get_gb28181_config_ptr和函数delete_stream_channel声明修改
3. 新函数query_device_list

srs_app_gb28181_sip.cpp
1-4. 在调试界面给摄像头加上名称显示;新函数clear_device_list和新函数dumpItemList
5-6. 两处因为错误而退出GB28181信令处理循环,修改为不退出
7. 设备注册上来,不检查服务器ID匹不匹配(支持作为上级平台)
8. 收到一个目录上报消息,更新内存中的数据
9. 更新ssrc为被叫返回的值
10. 新函数query_device_list

srs_app_gb28181_sip.hpp
1. 在调试界面给摄像头加上名称显示
2. 每个设备加上item_list,用于存储目录;新函数clear_device_list和新函数dumpItemList
3. 新函数clear_device_list

srs_app_http_api.cpp
1. 删除通道参数分解为id和chid
2. 新的接口sip_query_devicelist,用于查询所有设备的目录

srs_sip_stack.cpp
1. GB2312转UTF-8类
2. 被叫返回的ssrc初始化
3. parse_xml声明修改
4. 对XML内容进行字符集检测和转换
5-7. parse_xml定义修改
8. SIP BODY里面也有可能有\r\n
9-10. 防止恶意SIP消息 by vicious sip prober
11-12. 新的XML解析目录代码
13. 获取被叫返回的ssrc

srs_sip_stack.hpp
1. 依赖vector
2. 每个设备加上item_list,用于存储目录
3. 被叫返回的ssrc
4. parse_xml声明修改
4 years ago
yinjiaoyuan fe65c7bf84 For 2034, GB28181: Support transport over TCP 4 years ago
winlin 9908433bc8 For #1508, Transform http header name to upper camel case. 4.0.54 4 years ago
winlin 07c04a042a URI: Refine uri parser 4 years ago
winlin 5709ee1b63 For #1657, add https configs 4 years ago
winlin 385e055c7b For #1657, Fix read bug. 4.0.53 4 years ago