ziyue
|
5144b84ee7
|
添加bom头
|
2022-04-10 23:58:56 +08:00 |
|
alexliyu7352
|
f128b35b18
|
解决多pps问题
解决某些流因为多pps而导致不能播放的问题.
|
2022-04-10 23:43:44 +08:00 |
|
alexliyu7352
|
08de795220
|
Update H264.h
|
2022-04-10 23:38:42 +08:00 |
|
alexliyu7352
|
a0c1bc13cc
|
修复多次调用onShutdown的bug (#1552)
当HlsPlayer拉取索引失败后会触发PlayerProxy的重试机制.
但是这里就有一个bug会导致重试次数不准确.
因为HlsPlayer播放失败会调用onShutdown.
然后回调PlayerProxy.
之后如果触发重试, 那么在HlsPlayer析构的时候又会在调用一次onShutdown.
这时候是安全的, 因为_on_shutdown已经被置空.
但是如果重试时又再次失败, 那么首先会调用
onPlayResult
这时候在PlayerProxy中会再次触发重试, 紧接着HlsPlayer析构, 又会调用一次onShutdown, 那么就又会触发一次重试.
修复方法有很多, 最简单的就是直接在
onShutdown中判断如果没有_demuxer就不需要父类的onShutdown方法来释放资源与重连了.
因为针对HlsPlayer来说, 如果重试拉取索引没有成功, 应该没有什么资源需要在onShutdown方法中释放了.
当然更完善的修复应该是在PlayerProxy中增加相关的判断逻辑, 给rePlay一个状态.
确保rePlay执行完成前, 不再执行一次rePlay.
具体哪种方式, 大佬您可以看着办.
|
2022-04-10 19:09:16 +08:00 |
|
xiongziliang
|
e065b1dfba
|
子进程重启失败时,不应通知守护进程退出,确保子进程重启成功
|
2022-04-09 21:02:54 +08:00 |
|
xiongziliang
|
c334dcfd38
|
Revert "子进程重启失败时,不断重试,避免重启失败 (#1545)"
This reverts commit 471a8b77
|
2022-04-09 20:57:00 +08:00 |
|
alexliyu7352
|
471a8b7735
|
子进程重启失败时,不断重试,避免重启失败 (#1545)
* Update main.cpp
* 双重保险, 避免重启失败
业务繁忙的服务器当子进程崩溃后,
虽然延时了3秒, 但是如果服务器负载很高, 或者开启了coredump
会导致拉起子进程时, 仍旧端口占用导致子进程重启失败而直接退出主进程.
因此, 这里做了双重保险, 当子进程拉起时如果端口占用, 那么子进程会继续重试.
|
2022-04-09 20:37:36 +08:00 |
|
xiongziliang
|
a1b350c9f0
|
startSendRtp接口udp发送不指定端口时,从端口池获取端口
|
2022-04-09 10:33:27 +08:00 |
|
xiongziliang
|
a6e82799f5
|
openRtpServer接口新增re_use_port参数
|
2022-04-09 10:26:15 +08:00 |
|
xiongziliang
|
6073175e75
|
Merge branch 'master' of github.com:ZLMediaKit/ZLMediaKit
|
2022-04-09 10:23:33 +08:00 |
|
alexliyu7352
|
78d32702e2
|
修复由于识别不出关键帧而导致hls不能切片. (#1551)
2.修复由于丢弃sei帧导致ffplay不能正常播放
|
2022-04-09 10:22:41 +08:00 |
|
xiongziliang
|
6c0fea4c46
|
Merge branch 'master' of https://gitee.com/xia-chu/ZLMediaKit
|
2022-04-07 20:39:34 +08:00 |
|
alexliyu7352
|
75b17b3a6a
|
避免m3u8文件为chunked时崩溃 (#1543)
* Update HttpChunkedSplitter.h
* 避免m3u8文件为chunked时崩溃
具体问题见
https://github.com/ZLMediaKit/ZLMediaKit/issues/1407
当数据最后小于2个字节时, 应该放弃回调.
做个保险, 避免导致溢出后崩溃.
这个bug很难出现, 但是的确存在. 一些特殊的服务器采用chunked返回的m3u8文件解析时, 有可能会遇到.
* Update HttpChunkedSplitter.cpp
Co-authored-by: 夏楚 <771730766@qq.com>
|
2022-04-06 14:16:48 +08:00 |
|
alexliyu7352
|
e4262222f4
|
hls拉流时应该适当重试 (#1541)
* hls拉流时应该适当重试
hls拉取索引文件失败时, 不应该直接上报,而应该内部适当重试几次.
避免由于网络抖动造成的客户端播放不流畅.
* Update HlsPlayer.cpp
|
2022-04-05 19:49:22 +08:00 |
|
alexliyu7352
|
efc3e78ba0
|
使用emplace_back优化代码 (#1542)
少了一次构造调用,为什么不用呢?
|
2022-04-05 19:32:02 +08:00 |
|
xiongziliang
|
8da23da35c
|
添加utf-8 bom头
|
2022-04-03 18:38:07 +08:00 |
|
xiongziliang
|
2818e371b8
|
完善startSendRtp接口
|
2022-04-03 18:37:22 +08:00 |
|
xiongziliang
|
de0738b1d1
|
Merge branch 'feature/rawrtpsend' of github.com:ZLMediaKit/ZLMediaKit
|
2022-04-03 17:34:51 +08:00 |
|
夏楚
|
7ed8429759
|
Merge pull request #1537 from alexliyu7352/alexliyu7352-patch-19
修复HlsPlayer播放器BUG
|
2022-04-03 17:33:38 +08:00 |
|
alexliyu7352
|
007164ac9b
|
崩溃重启时间改成3秒 (#1536)
在负载比较重的机器上重启子进程太快了.
很容易导致端口仍旧还未释放完毕导致的错误
端口已被占用
从而主进程直接退出.
因此适当延长重启的间隔时间
|
2022-04-03 17:32:38 +08:00 |
|
xiongziliang
|
9ea6faa9ce
|
Merge remote-tracking branch 'origin/master'
|
2022-04-03 17:27:59 +08:00 |
|
xiongziliang
|
949bfd3922
|
Merge branch 'js_datachannel' of github.com:ZLMediaKit/ZLMediaKit
|
2022-04-03 17:12:58 +08:00 |
|
xiongziliang
|
1ed793fe97
|
初步实现webrtc datachannel sdp握手
|
2022-04-03 17:12:23 +08:00 |
|
xiongziliang
|
03dfcbad36
|
优化webrtc sdp处理相关代码
|
2022-04-03 17:10:39 +08:00 |
|
alexliyu7352
|
a7476e436a
|
修复HlsPlayer播放器BUG
当拉取加密流时, 因为不能正常播放, 所以不会触发playresult.
因此一直不会回调api请求.
|
2022-04-01 20:59:58 +08:00 |
|
xgj
|
29ceddd23d
|
fix startsendrtp pt error
|
2022-04-01 19:15:35 +08:00 |
|
xgj
|
9d532cf16b
|
fix startsendrtp pt error
|
2022-04-01 19:12:37 +08:00 |
|
xgj
|
61625f458f
|
for webapi startsendrtp can send raw rtp
|
2022-04-01 18:28:09 +08:00 |
|
Xiaofeng Wang
|
d5b8613858
|
Merge pull request #1525 from wendelong/dev
修正未初始化导致的播放异常问题
|
2022-03-29 16:05:54 +08:00 |
|
wendelong
|
97ea8090ad
|
修复HLS播放导致程序异常的BUG
|
2022-03-29 13:43:17 +08:00 |
|
xiongziliang
|
62543202a5
|
精简进程管理相关代码
|
2022-03-27 22:37:41 +08:00 |
|
xiongziliang
|
ae99662a3d
|
修复编译警告
|
2022-03-27 21:57:05 +08:00 |
|
xiongziliang
|
4b9b022690
|
优化进程管理代码: #1518
|
2022-03-27 21:48:13 +08:00 |
|
alexliyu7352
|
43c5d05d8f
|
使用clone替代fork (#1518)
使用clone替代fork
因为fork子进程有时会导致提前写时复制, 进而影响性能.
而vfork又会引起父进程阻塞
所以使用clone来产生子进程运行ffmpeg
|
2022-03-27 21:25:40 +08:00 |
|
xiongziliang
|
5879947325
|
webrtc url添加session参数,用于hook追踪会话唯一性
|
2022-03-27 21:12:59 +08:00 |
|
xiongziliang
|
b0af3334c1
|
修复firefox上webrtc echo测试无法通过的问题: #1493
|
2022-03-26 22:11:50 +08:00 |
|
Dw9
|
822a401f30
|
优化端口池范围限定逻辑 (#1508)
|
2022-03-26 10:15:18 +08:00 |
|
xgj
|
24c6f28ef8
|
zlm rtc js sdk update for data channel
|
2022-03-24 18:20:10 +08:00 |
|
xiongziliang
|
a16b6cbc59
|
mp4切片逻辑提高对音视频交织性差的流的兼容性能
|
2022-03-20 14:52:15 +08:00 |
|
xiongziliang
|
19c7d1c406
|
删除多余的日志打印
|
2022-03-19 10:54:08 +08:00 |
|
xiongziliang
|
b127d8c2a9
|
rtsp/GB28181随机端口,支持端口范围设置
|
2022-03-13 20:50:25 +08:00 |
|
xiongziliang
|
4314006551
|
调整nack相关参数
|
2022-03-13 19:22:19 +08:00 |
|
xiongziliang
|
94282d240e
|
修复编译问题
|
2022-03-12 20:27:22 +08:00 |
|
xiongziliang
|
aef2ae65af
|
优化代码
|
2022-03-12 19:29:58 +08:00 |
|
xiongziliang
|
2ff293e2e5
|
Merge branch 'master' of github.com:ZLMediaKit/ZLMediaKit
|
2022-03-12 19:28:02 +08:00 |
|
xiongziliang
|
b8277974aa
|
webrtc sdp msid不存在时,不添加
|
2022-03-12 19:27:32 +08:00 |
|
Dw9
|
cc91f10103
|
修复关闭音频无法进行webrtc echo测试的bug (#1493)
|
2022-03-12 19:21:57 +08:00 |
|
xiongziliang
|
76372cd34b
|
修好addStreamProxy接口获取参数失败的问题
|
2022-03-12 15:23:45 +08:00 |
|
xiongziliang
|
d239ada9ac
|
精简代码
|
2022-03-12 15:18:12 +08:00 |
|
xiongziliang
|
9ae6abfbf4
|
更新addStreamProxy接口postman配置文件
|
2022-03-12 15:15:52 +08:00 |
|