xialixin@kanzhun.com
|
4df6fa540f
|
For #2200, Enable RTC and FLV for GB28181
|
2021-02-18 21:51:49 +08:00 |
|
xbpeng121
|
47422b7819
|
GB28181: 无法对接平台问题及一些小bug (#2109)
* 1-新增srs_string_split2函数,该函数支持空串也能按照原有顺序进行切分并放入数组
2-SrsGb28181Device增加属性字段,并在收到catalog命令时能够更新该属性
3-修复sip包解包不严谨bug(body中有可能会有SRS_RTSP_CRLFCRLF那么导致header_body[1]就不一定是body了可能只是body的一部分)
* 1-修复停用rtp多路复用参数(invite_port_fixed)不起作用bug
* bugfix: 当srs发送invite时会指定一个ssrc作为流媒体序列号,但有些平台发流时并不使用这个作为ssrc,而是自己新生成一个。(修复该bug是在invite response时解析内容中的sdp,把对方生成的流媒体序列号ssrc读出来,并且更新srs的channel映射)
* Update push.gb28181.conf
恢复成原来的conf
* bugfix,在取得muxer时需要更新。之前写反了
* Merge branch 'develop' into 4.0release
* 解决冲突时,优先选择原有代码(还原选择develop的代码)
* 解决冲突时,优先选择原有代码(还原选择develop的代码)
* 解决冲突时,优先选择原有代码(还原选择develop的代码)
* 解决冲突时,优先选择原有代码(还原选择develop的代码)
* 修改sdp_map相同属性的连接符
* 解决冲突时,优先选择原有代码(还原选择develop的代码)
* 修改sdp_map相同属性的连接符
* 解决冲突时,优先选择原有代码(还原选择develop的代码)
* 解决冲突时,优先选择原有代码(还原选择develop的代码)
* 回退原来代码
* 删除parse_sdp存储至map相关代码
* 格式恢复
* 格式恢复
* 恢复格式
* srs_string_split() 函数的bugfix
Co-authored-by: xbpeng <xianbin.peng@sibat.cn>
|
2021-01-06 15:37:02 +08:00 |
|
PieerePi
|
3d5c18c25a
|
GB28181 code crashed in ffmpeg after commit "RTC: Use FFmpeg to transcode aac to opus" <d5a0ad3dd8 >. (#2057)
Change the size from 64K to 256K.
|
2020-11-30 11:02:30 +08:00 |
|
Jesse Xi
|
8515f5a91e
|
incomplete_len 在大华摄像头下,因为大华包头对音频的不标准处理,可能为负值,而sizeof(SrsPsPacketStartCode) 返回的是unsigned 类型, 因些增加判断 (#2039)
Co-authored-by: jesse.xi <jj.xi@tianrang-inc.com>
|
2020-11-17 16:44:37 +08:00 |
|
winlin
|
c779d95246
|
GB28181: Remove chinese comments.
|
2020-11-16 00:06:03 +08:00 |
|
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声明修改
|
2020-11-15 23:14:34 +08:00 |
|
yinjiaoyuan
|
fe65c7bf84
|
For 2034, GB28181: Support transport over TCP
|
2020-11-15 22:50:59 +08:00 |
|
winlin
|
1661876633
|
Fix build fail
|
2020-09-19 10:41:58 +08:00 |
|
winlin
|
64705d1cc8
|
RTC: Refine resouce management
|
2020-09-19 10:30:05 +08:00 |
|
winlin
|
4eae93d27b
|
Rename SrsCoroutineManager to SrsConnectionManager
|
2020-09-11 17:20:41 +08:00 |
|
winlin
|
2f22a3d38b
|
For #1926, refine code
|
2020-08-30 12:43:55 +08:00 |
|
jasongwq
|
7e5572c5e1
|
FIX:When 28181 stream stopped,Stream API does not remove it
|
2020-08-30 12:42:23 +08:00 |
|
kyxlx550
|
d02b560217
|
remove 28181 is_aac define
|
2020-08-30 12:06:34 +08:00 |
|
kyxlx550
|
5864ea3472
|
supprot ps jitbuffer different timestamp of audio and video
|
2020-08-30 12:06:34 +08:00 |
|
kyxlx550
|
65a23418ed
|
notes w_ps_file define
|
2020-07-02 09:06:05 +08:00 |
|
kyxlx550
|
1bbf5c8126
|
fix ps to h264 frame_size < 0 checkt
|
2020-07-02 09:06:05 +08:00 |
|
kyxlx550
|
83c2586d79
|
support audio g711
|
2020-07-02 09:06:05 +08:00 |
|
kyxlx550
|
e506191484
|
fix rtmp muxer cycle sleep
|
2020-07-02 09:06:05 +08:00 |
|
kyxlx550
|
ed82d60aac
|
fix while sleep time
|
2020-06-08 18:27:03 +08:00 |
|
kyxlx550
|
2172209321
|
ps to rtmp via source, h264 start code with replace nalulen
|
2020-06-07 21:51:06 +08:00 |
|
winlin
|
215b1c234b
|
Refine the local ip and interface retrieve
|
2020-05-09 10:40:25 +08:00 |
|
kyxlx550
|
6a070a9a64
|
support sip ptz cmd
|
2020-04-20 21:34:18 +08:00 |
|
kyxlx550
|
fb23739113
|
fix use gb28181 log id
|
2020-04-17 17:03:03 +08:00 |
|
kyxlx550
|
33b91cd6f2
|
fix gb28181 api error code
|
2020-04-16 12:30:11 +08:00 |
|
kyxlx550
|
28bde1d448
|
fix rtmp send timeout, first key frame wait
|
2020-04-11 20:36:28 +08:00 |
|
winlin
|
cf48a5594d
|
Refactor code for #1691
|
2020-04-09 08:37:28 +08:00 |
|
xialixin
|
d2b8b937d6
|
fix generate ssrc, rtmp muxer cycle sleep, ps steam parase etc..
|
2020-04-05 13:53:14 +08:00 |
|
xialixin
|
92d351ef35
|
fix 'output' format define; support 'host' auto get; time config use SRS internal format; support auto create stream channel on/off
|
2020-04-04 16:07:23 +08:00 |
|
xialixin
|
5e4fdfd1d4
|
fix after RTMP is closed, empty PPS and SPS. sip client sockaddr set
|
2020-04-04 16:07:23 +08:00 |
|
xialixin
|
ac8acc0b22
|
fix 28281 to 28181, sip heart message, timeout channel peer ip and port reset
|
2020-04-04 16:07:23 +08:00 |
|
winlin
|
d81cde695d
|
Refactor code
|
2020-03-31 22:48:38 +08:00 |
|
winlin
|
6012ac4eb0
|
Refine code
|
2020-03-31 22:30:57 +08:00 |
|
xialixin
|
c99fb99ab6
|
refactor gb28181, supporting SIP server enable, multiplex, API interface
|
2020-03-31 00:39:10 +08:00 |
|
xialixin
|
8b4f84e336
|
fix push.gb28181.conf, gb28181conn repeat call serve()
|
2020-03-20 10:38:38 +08:00 |
|
xialixin
|
cbe9c1dabc
|
Support gb28181 sip over udp, ps steam over rtp
|
2020-03-20 00:01:48 +08:00 |
|