Commit Graph

5341 Commits (6d64490d738ff6b8f51f80dce80bb1297bec9416)

Author SHA1 Message Date
winlin 10ffb2da36 HTML5 video tag resolution adaptive. 4.0.59 4 years ago
winlin 26dec1b037 Release 4.0.58
Merge #2109, Fix bugs for GB28181.
Merge #2109, Refine srs_string_split.
Fix memory leak and bugs for RTC.
4 years ago
winlin b6843428c6 Fix build warnings 4 years ago
winlin 81d78310a0 Fix build warnings 4 years ago
winlin 61f62ceec6 Fix build warnings 4 years ago
winlin 473942c6f6 Kernel: Add utest for srs_string_split 4 years ago
winlin 8580b1e5fb Merge branch '4.0release' into develop 4 years ago
winlin f8266fe3b7 Add usage for --cherrypy=on|off when configure 4 years ago
winlin bfa156247c Merge branch '4.0release' into develop 4 years ago
winlin 6c7ffdeedf Merge branch '3.0release' into 4.0release 4 years ago
winlin d520679547 Refine code for changing id of stat to string 4 years ago
winlin 4f013404e3 Refine stat id 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
johzzy 3c14a96bdd
fix: html5 video tag resolution adaptive. (#2128) 4 years ago
winlin 248085edfe For #2109, Add more utest for srs_string_split 4 years ago
winlin 2492b726af RTC: Fix memory leak 4 years ago
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>
4 years ago
winlin 6cf93557e1 RTC: Fix publish RTC ssrc bug 4 years ago
winlin fbbdf5ba0e RTC: Fix audio track NULL bug 4 years ago
winlin 040893efde Add research for UDP binding 4 years ago
winlin 155587d2c1 RTC: Fix parse error stap playload crash bug 4 years ago
winlin ebe38f7337 RTC: Fix RTX bug 4 years ago
winlin 78fcaaf7b1 RTC: Fix memory leak 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 af8bf67606 Refine player 4 years ago
winlin 92588c0872 Merge branch '4.0release' into develop 4 years ago
winlin 18d049accc Support disable CherryPy. 4.0.57 4 years ago
jinxue.cgh 7f081b4178 RTC: Refine TWCC from 200ms to 50ms 4 years ago
winlin c3938ddfd2 Research: Add cost analysis 4 years ago
winlin a4d1b3e2ca Research: Add cost analysis 4 years ago
winlin ec212b7413 Merge branch '4.0release' into develop 4 years ago
winlin 764909c6cf Clear disposing then free resources to avoid reuse addresses 4 years ago
winlin 6afdf3addf Merge branch '4.0release' into develop 4 years ago
winlin e8fa92e3d1 Refine logs for resource manager 4 years ago
winlin 5949eee4f4 Keep resources when dispoing to avoid reuse addresses. 4 years ago
winlin 9217fad73b Hotfix: Print resource address when manager dispose it 4 years ago
winlin 4d18835f3c Fix build fail 4 years ago
winlin 90b61ad952 Merge SRS4 4 years ago
winlin 5ebf034aea For #1694, Refine API for nb_bytes 4 years ago
winlin c17474627b Merge SRS3 4 years ago
winlin 25c76c1e8a Fix #1694, Support DVR 2GB+ MP4 file. 3.0.155 4 years ago
winlin 576be75f00 Merge branch '4.0release' into develop 4 years ago
winlin c97e943b07 Merge SRS3 4 years ago
winlin ab5ddd24e2 Fix #1548, Add edts in MP4 for Windows10. 3.0.154 4 years ago
winlin 721173e6af MP4: Fix warnings 4 years ago
winlin 1502560bcf Update conf 4 years ago
winlin 9caeb606bf ST: Support show coroutines. 4 years ago
winlin c7c6d8778a RTC: Fix warnings 4 years ago
jinxue.cgh 5309dbe18b RTC: Refine RTCP process 4 years ago
winlin 18ae8d8571 RTC: Fix SDP bug for firefox 4 years ago
winlin aad7c448bf For #1998, Support Firefox. 4 years ago
winlin 0c113ff084 For #1998, support firefox 4 years ago
winlin c5457e8241 RTC: Support unified-plan 4 years ago
winlin 27db60cc23 Fix #1996, Heap off-by-one in utest 4 years ago
winlin c796c0d093 Fix #1689, fix typo 4 years ago
莫战 b38f30c3ee support query parsing and escape 4 years ago
莫战 dc7124cd05 support base64 encode 4 years ago
jinxue.cgh 58b75c6f1b tfsfu: add play red pt negotiate 4 years ago
winlin 140f8b0fce For #1998, refine PT for firefox, support RED 4 years ago
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.
4 years ago
ghostsf d3e153e504
fix: update CMakeLists.txt for rtc (#2042) 4 years ago
Jesse Xi 8515f5a91e
incomplete_len 在大华摄像头下,因为大华包头对音频的不标准处理,可能为负值,而sizeof(SrsPsPacketStartCode) 返回的是unsigned 类型, 因些增加判断 (#2039)
Co-authored-by: jesse.xi <jj.xi@tianrang-inc.com>
4 years ago
winlin c779d95246 GB28181: Remove chinese comments. 4 years ago
winlin 977e027d86 SIP: Fix build fail for Mac 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 751dab56d8 RTC: Refine player and publisher 4 years ago
winlin 529264f238 RTC: Refine player and publisher 4 years ago
winlin 3cf3047f97 Add conf/rtc_live.conf 4 years ago
winlin 7521bc86ad For #1998, Update conf 4 years ago
winlin 7136af21de For #1998, TODO: FIME: Should check packetization-mode=1 also. 4 years ago
winlin 5d27c62e95 For #1998, fix fetch remote payload bug. 4.0.56 4 years ago
winlin 4650d47082 For #1998, Support Firefox, use PT in offer. 4.0.55 4 years ago
winlin 57b5204a10 For #1998, Set default fmtp for H264 when transmux RTMP to RTC 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 efca38cd89 Player: Change default HTTP-API port to 1985 for WebRTC 4 years ago
winlin e085250245 Update players 4 years ago
winlin 32c1832d64 For #1657, refine code 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
winlin 4618bfc137 For #1657, fix the http read bug 4 years ago
winlin 6dc9824495 For #1657, fix the http read bug 4 years ago
winlin 79655adea0 For #1657, fix the http read bug 4 years ago
winlin c3f23f4c23 For #1657, fix the http read bug 4 years ago
winlin a20f02ffe1 For #1657, Read cached data first in SSL. 4.0.48 4 years ago
winlin a49b2d7b0e For #1657, Support HTTPS Callback, HTTPS API, HTTPS FLV, etc. 4.0.47 4 years ago
winlin 30ba5a32ed For #1657, Support HTTPS Streaming 4 years ago
winlin faf53927e8 For #1657, Fix utest fail 4 years ago
winlin 272ca9d0f6 For #1657, Support HTTPS API 4 years ago
winlin 7916214e27 For #1657, refine api for http 4 years ago
winlin 5782b45978 For #1657: Refine code 4 years ago
winlin 2fedb683e8 For #1657, refine code 4 years ago
winlin c3d290013e For #1657, handle on_message_done 4 years ago
winlin 4b082ea96c For #1657, refine http api disconnect log 4 years ago
winlin 74799a31e3 For #1657, refine on_http_message with response writer 4 years ago
winlin d67b050935 For #1657, fix the jsonp bug 4 years ago
winlin fc21b31714 For #1657, refine the context for disposing 4 years ago
winlin b492d59df0 For #1657: Refine code 4 years ago
winlin 0a3a38762a For #1657: Remove duplicated code, merge http api with conn 4 years ago
winlin 9cf4203201 For #1657: Refine code 4 years ago
winlin 24125b9770 For #1657: Refine connection arch, remove hierachy 4 years ago
winlin 2a14dc0ebd For #1657: Refine TCP connections arch 4 years ago
winlin 4ba66b388b For #1657: Refine TCP connections arch 4 years ago
winlin 3038dd473d For #1657, refine connection interface 4 years ago
winlin 0a82719bd3 Refine connection structure 4 years ago
winlin 7c68487bf7 For #1657, Fix utest fail 4 years ago
winlin d2df045d0e For #1657, enable HTTPS by default 4 years ago
winlin 5577d19b61 For #1657, Refine https-client code 4 years ago
winlin d552a1a5fb For #1657, support HTTPS client, for http-callback. 4.0.45 4 years ago
winlin 08e19406ef Player: Refine code 4 years ago
winlin a28f98581e Refine cid for source 4 years ago
winlin 365d3b8bda Merge SRS3.0 4 years ago
winlin 9a963c6fd2 Fix #509, Always malloc stack on heap. 3.0.153 4 years ago
winlin e71d770a26 Update 4 years ago
winlin e830ca7d0c Research: Add huge coroutine test program 4 years ago
winlin 71c9732bff Support gdb/srs.py to stat coroutines. 4.0.44 4 years ago
winlin 8c1eca98b0 Merge SRS3.0 4 years ago
winlin 86f8cbb5eb Remove some global elements for debugging. 3.0.152 4 years ago
winlin b348539687 Remove some global elements for debugging. 3.0.152 4 years ago
winlin 9f9e3a5d42 Use global _srs_server for debugging. 3.0.151 4 years ago
winlin bf5e2add83 Refine source cid, track previous one. 3.0.150 4 years ago
winlin ae56293b27 Research: Add simple ST 4 years ago
winlin 941fdebd24 Research: Add mmap demo 4 years ago
winlin 534fcabbd5 Research: Update players 4 years ago
winlin 44e550e523 Research: Add badalloc 4 years ago
winlin a42da57448 Refine comments 4 years ago
winlin a7961e558b Research: Learn about the function call 4 years ago
winlin a060befebf Merge branch '3.0release' into 4.0release 4 years ago
winlin 5e7fe096a9 Refine player pages 4 years ago
winlin f08a1a1b10 Refine etc script to collect stderr logs 4 years ago
winlin 07ecc25071 Merge branch '3.0release' into 4.0release 4 years ago
winlin 7b68330651 Add hls.realtime.conf for low-latency HLS. 3.0.149 4 years ago
winlin adadbb7e9c Merge branch '3.0release' into 4.0release 4 years ago
winlin 8445d5543b Refine script and startup logs. 3.0.148 4 years ago
winlin 99afdb361f Merge branch '3.0release' into 4.0release 4 years ago
winlin aac170b75e Refine build script 4 years ago
winlin 0a09b53fc1 Refine build script 4 years ago
winlin a51e275414 Merge SRS3 4 years ago
winlin 6dc3d85ded Allow FFmpeg if exists at /usr/local/bin/ffmpeg. 3.0.147 4 years ago
winlin 1d92ff73fb Fix build script 4 years ago
winlin be1a1d99de Merge SRS3 4 years ago
winlin e1ff69f292 Refine build script, use libssl in docker. 3.0.146 4 years ago
winlin f036460164 Update default srs.conf, enable HLS and HTTP-FLV 4 years ago
winlin 4ff8a055c5 Update conf to follow wiki 4 years ago
winlin cc6b71e1ae Update conf to follow wiki 4 years ago
winlin d5a0ad3dd8 RTC: Use FFmpeg to transcode aac to opus 4 years ago
winlin 97880f6bb7 ST: Allow set the default stack size 4 years ago
winlin a14f26971b RTC: add comment for DTLS packet 4 years ago
winlin 9ef8e1bd86 RTC: Refine js for player 4 years ago
winlin 72f87e7cbc RTC: Refine js for player 4 years ago
winlin 07ea733901 Merge branch 'develop' into feature/rtc 4 years ago
winlin bce55d2789 Merge branch '4.0release' into develop 4 years ago
winlin 913d920ec5 Merge branch '3.0release' into 4.0release 4 years ago
winlin 3f3a23f978 Fix #1987, Fix Kbps resample bug. 3.0.145 4 years ago
winlin 9c11e5077f Fix Kbps resample bug 4 years ago
winlin b602aef56f Merge branch 'develop' into feature/rtc 4 years ago
winlin 39dc118c00 Merge branch '4.0release' into develop 4 years ago
winlin 20293e7e5d Merge 3.0release 4 years ago
winlin 5342596fc0 Update README for #1780 4 years ago
winlin 726ac03e22 Change stable release to 3.0 4 years ago
winlin 13af54171f For #1780, build fail on ubuntu:focal. 3.0.144 4 years ago
winlin ba6462aab4 RTC: Refine DTLS ARQ, use step interval 4 years ago
winlin e61391028e RTC: Refine utest for DTLS 4 years ago
winlin 776f24cf3d Refine resource manager, ignore unsubscribed handler 4 years ago
chenhaibo ba29095d10 RTC: fix memory leak bug 4 years ago
winlin 42a2dea5e0 Refine code 4 years ago
winlin 4ccb83834d Fix Kbps resample bug 4 years ago
winlin 99d9d02579 RTC: Print server stats every 5s 4 years ago
winlin 4795244716 Fix stat get time bug 4 years ago
jinxue.cgh dc3756b8b2 RTC: Compatible with SSRC without mslabel. 4 years ago
winlin fb6c2fdf80 RTC: Use event notify for stream source 4 years ago
jinxue.cgh 2b47b42213 RTC: Refine PLI request log. 4 years ago
winlin 1a33452e95 Refine resource manager, fix loop and context switching bug 4 years ago
winlin 033e2f9210 Add utest for resource manager 4 years ago
winlin 7e3dfa7149 GB28181: Fix build fail 4 years ago
winlin 4e2fca2b0f Fix utest fail 4 years ago
winlin 253aa23fb1 RTC: Extract resource manager. Use any UDP packet to keep alive. 4.0.43 4 years ago
winlin 7c682a99c9 RTC: Set to alive when got any packet 4 years ago
winlin 8bf677e3c8 Refine code 4 years ago
winlin 1661876633 Fix build fail 4 years ago
winlin 64705d1cc8 RTC: Refine resouce management 4 years ago
winlin 1173d35e33 RTC: Add api in track 4 years ago
winlin a19aa82029 RTC: Refine log 4 years ago
winlin 5b3f278243 RTC: Refine log 4 years ago
winlin 7459f287e0 System: Add srs duration api 4 years ago
winlin f7faa13dc5 RTC: Cover connection manager coroutine switch when dispoing conn 4 years ago
jinxue.cgh 27b85c7390 RTC: Fix clear zombie bug 4 years ago
winlin 2a3b5e5290 RTC: Fix mid generation bug 4 years ago
winlin b4544acc11 Fix build fail 4 years ago
winlin 5ec5f98dcf RTC: Refine sdp for multiple streams 4 years ago
winlin fe66755bab RTC: Init RTP extension types 4 years ago