custompal
0d6509ce03
统一部分变量名和代码样式风格
2022-08-30 21:24:25 +08:00
custompal
04aa3ef41f
增加获取媒体流播放器列表功能
2022-08-30 21:05:19 +08:00
xiongzilaing
679c79802f
整理媒体事件相关代码,删除无须重载时的多余代码逻辑
2022-08-28 17:25:56 +08:00
xiongziliang
f0ae5a1bd7
优化日志提示
2022-08-27 11:00:24 +08:00
xiongziliang
0cab9c8d16
rtp发送去除重连机制
2022-08-27 10:59:15 +08:00
xiongziliang
6a4297845f
新增发送rtp被动关闭hook
2022-08-27 10:53:47 +08:00
xiongziliang
c2ab45f78d
完善线程安全设计
2022-08-27 10:17:06 +08:00
rqb500
00acea369e
修复接收rtsp、gb28181等rtp流转为其他协议播放时可能卡顿的bug ( #1906 )
...
* 修复获取ntp_stamp时计算溢出的bug
2022-08-26 11:42:40 +08:00
ziyue
44ba971cb6
Merge branch 'master' of github.com:ZLMediaKit/ZLMediaKit
2022-08-23 14:13:36 +08:00
ziyue
208b0865bd
修复全局变量初始化顺序错乱导致崩溃的问题
2022-08-23 14:11:32 +08:00
Xiaofeng Wang
a06b4321be
cmake: fix install cxx api headers
...
Close #1882
2022-08-22 13:11:17 +08:00
xiongziliang
c6a0e3ad66
rtp发送启停支持触发观看人数统计事件
2022-08-20 13:16:25 +08:00
xiongziliang
9f0c15a4f0
startSendRtp接口支持rtcp接收超时主动停止
2022-08-20 12:48:27 +08:00
Dw9
30984d2076
mp4录制支持作为观看者参与播放人数统计 ( #1880 )
2022-08-16 11:47:24 +08:00
ziyue
6382fcb3be
确保on_publish事件回调时线程安全
2022-08-11 18:36:17 +08:00
ziyue
b34db64961
修复非法aac rtp包导致的除0崩溃问题: #1869
2022-08-10 10:44:34 +08:00
ziyue
795b4dbbd3
修复http文件服务器对特殊字符文件不兼容的bug:#1866
2022-08-10 10:37:49 +08:00
ziyue
099845b329
FMP4Packet时间戳类型改成64位
2022-08-08 17:57:29 +08:00
ziyue
35791aac89
优化代码,去除编译警告,修复拼写错误
2022-08-08 17:36:07 +08:00
ziyue
9c3b8a6a95
时间戳改为64位
2022-08-08 17:13:39 +08:00
ziyue
143580d780
修复编译警告
2022-08-08 15:28:43 +08:00
ziyue
663d167837
格式化代码
2022-08-05 17:55:48 +08:00
ziyue
ba947cb6b5
调整switch case语句缩进
2022-08-05 17:42:17 +08:00
ziyue
f85de2e108
精简复用rtp encoder创建相关代码
2022-08-05 17:36:51 +08:00
ziyue
ec3fe4350a
修复开启时间戳覆盖后崩溃的bug: #1848
2022-08-02 11:06:33 +08:00
Xiaofeng Wang
70c7a7aa57
依赖 ZLMediaKit 的模块需要继承宏定义以及依赖
2022-08-01 17:48:11 +08:00
ziyue
316301e910
确保rtsp直接拉流代理支持GOP缓存: #1843
2022-08-01 11:35:38 +08:00
ziyue
afcf247464
完善mpegts/ps容器对aac音频的兼容: #1801
2022-07-29 18:05:16 +08:00
ziyue
ace989d378
完善rtp server日志打印
2022-07-29 17:57:52 +08:00
ziyue
24db0454a8
不支持的协议直接抛异常, 防止非法推拉流:#1725
2022-07-29 17:32:30 +08:00
ziyue
5babe63cdb
修复Windows编译问题
2022-07-29 15:47:06 +08:00
ziyue
7d8b212a3c
修复rtmp汇报窗口太小导致循环递归的bug:#1839
2022-07-29 12:02:00 +08:00
CharleyWangHZ
2685f3cdc2
Update MediaSource.h
2022-07-28 16:43:03 +08:00
夏楚
76df34de81
Merge pull request #1825 from wasphin/feature/cmake
...
整理 CMakeLists.txt
2022-07-28 14:27:44 +08:00
dingcan
23e0abde04
Update RtpProcess.cpp
2022-07-27 14:13:54 +08:00
dingcan
0a678661e3
Update RtpProcess.cpp
2022-07-27 10:02:15 +08:00
dingcan
532932fd2d
Update RtpProcess.h
2022-07-26 14:44:32 +08:00
dingcan
b8d17565d7
修改代码格式
2022-07-26 14:42:42 +08:00
dingcan
c1b4ccd041
Update RtpProcess.cpp
2022-07-26 11:57:09 +08:00
dingcan
ed6c80cf07
新增rtp udp收流增加丢包率
2022-07-26 11:21:19 +08:00
Xiaofeng Wang
9d3ead61de
整理 CMakeLists.txt
2022-07-25 00:22:30 +08:00
ziyue
ec7fe5cc9a
整理frame相关代码,完善FrameStamp重载函数
2022-07-22 16:20:47 +08:00
ziyue
b19574cea7
防止内存越界
2022-07-18 15:41:18 +08:00
xiongguangjie
b53ad2cc2d
for rtsp sdp pt more check
2022-07-17 00:30:12 +08:00
xiongguangjie
3eaf7897a7
rtsp player trust sdp pt ,ingore other pt compatible hik nvr record
2022-07-17 00:26:07 +08:00
xiongguangjie
cffc0743d7
format code use clang-format
2022-07-14 22:49:31 +08:00
xiongguangjie
602b475a3c
for rtc send can receive rtcp xr, player can calculate rtt , for metaRTC player send rtcp xr
2022-07-12 19:26:17 +08:00
xiongguangjie
14da5ab2d8
when start send rtp wait key rtp previous drop ( #1789 )
2022-07-09 22:30:43 +08:00
xiongguangjie
09a8d53150
Merge remote-tracking branch 'origin/master'
2022-07-07 17:46:37 +08:00
xiongguangjie
4108e81d2f
avoid multi rtmp player metadata
2022-07-07 17:44:19 +08:00
Dw9
c4988e7cfc
修复mk_track_create创建的track无法初始化复用器的bug( #1784 , #1778 )
2022-07-07 16:56:54 +08:00
xiongziliang
121b78e5dd
推流器主动断开时,避免开启断流续推功能
2022-07-02 15:36:44 +08:00
xiongziliang
7a24a22661
完善推流判断逻辑
2022-07-02 13:13:16 +08:00
xiongguangjie
87dd1c7f7f
avoid loopback ffmpeg push stream exit receive deleteStream message after broken pipe
2022-07-02 12:33:32 +08:00
alexliyu7352
9314a6699b
兼容ffmpeg4.x ( #1758 )
2022-06-29 11:02:43 +08:00
CharleyWangHZ
28350c0d05
Optimize Decoder inheritance relationship ( #1760 )
2022-06-29 11:01:16 +08:00
xiongguangjie
d622481619
fix multi aac frame in one frame result flv.js play audio error
2022-06-26 00:54:31 +08:00
xiongguangjie
266aaf9e0b
fix rtsp and rtmp on_flow_report player or pusher judge error
2022-06-24 09:06:46 +08:00
baiyfcu
9acd1c2b36
修复on_flow_report player状态
2022-06-23 18:08:21 +08:00
Dw9
1c5380eead
Update MP4Recorder.cpp
...
fix #1679
_muxer->openMP4 创建非法的文件夹会失败抛出异常 所以_full_path_tmp等都是空字符串
delete_file的时候 就会从此盘符的""(full_path_tmp)目录挨个删除了。
复现建议新建个盘符...
2022-06-19 17:27:03 +08:00
xiongziliang
d30869d0c9
支持获取http反向代理真实客户端ip: #1388
2022-06-18 22:10:46 +08:00
xiongziliang
6291ee704c
http文件服务器修复访问安全漏洞
2022-06-18 21:44:16 +08:00
xiongziliang
d72af3e61a
兼容不规范的rtsp url: #904
2022-06-18 21:19:26 +08:00
xiongziliang
ba0eaf26fc
时间戳跳变最大阈值调整为3秒
2022-06-18 21:08:34 +08:00
xiongziliang
b351f4c7e5
优化日志提示
2022-06-18 21:06:18 +08:00
xiongziliang
7f98f9a750
删除重复的获取gmt offset相关代码
2022-06-18 13:27:23 +08:00
custompal
771844d065
去除rtp_sender_mtx ( #1722 )
...
* 去除rtp_sender_mtx
* 无人观看定时器指定为MediaSource对象所属poller以确保读取观看数是线程安全的
Co-authored-by: xiongziliang <771730766@qq.com>
2022-06-18 13:22:57 +08:00
xiongguangjie
fe652e46b4
rtmp session when client stop publish not set push src null avoid judge player or pusher error
2022-06-16 10:57:48 +08:00
xiongguangjie
b22e1cf937
fix g711u or g711a rtp judge error
2022-06-16 10:04:46 +08:00
xiongguangjie
5479820748
const payload type variable start's letter is lower case
2022-06-16 09:59:09 +08:00
xiongguangjie
6a337adc91
for rtp server can config pt
2022-06-15 00:20:53 +08:00
xiongguangjie
f8373302d0
change srt streamid like srs srt streamid
2022-06-11 21:37:41 +08:00
xiongziliang
8fba694473
注释多余代码,消除编译警告
2022-06-11 15:14:14 +08:00
xiongziliang
fd11c53a78
Merge branch 'feature/srt' of github.com:ZLMediaKit/ZLMediaKit
2022-06-11 15:07:58 +08:00
xiongziliang
f6b4eb418f
优化录制相关代码
2022-06-11 14:18:55 +08:00
xiongziliang
97116e1208
完善getOwnerPoller相关逻辑
2022-06-11 13:08:58 +08:00
xiongziliang
b6d3ec5251
完善获取丢包率pull request; 新增MediaSource::getOwnerPoller接口
2022-06-11 12:56:03 +08:00
Leon
be995f9cd2
!17 【功能请求】 /index/api/getMediaList接口 增加LOSS字段用于统计每个轨道丢包率反馈
...
* update webrtc/WebRtcPusher.h.
* update webrtc/WebRtcPusher.cpp.
* update webrtc/WebRtcTransport.h.
* update webrtc/WebRtcTransport.cpp.
* update src/Common/MediaSource.h.
* update src/Common/MediaSource.cpp.
* update server/WebApi.cpp.
2022-06-11 04:31:06 +00:00
xiongguangjie
89b135400c
Merge remote-tracking branch 'origin/master' into feature/srt
2022-06-04 15:47:47 +08:00
xiongziliang
df9a9649b0
Merge branch 'master' of github.com:ZLMediaKit/ZLMediaKit
2022-06-04 11:08:13 +08:00
xiongziliang
b23cbaa0f8
on_publish hook新增continue_push_ms参数,用于断连续推延时控制
2022-06-04 11:06:35 +08:00
xiongguangjie
b9f66ca1ec
add srt push string
2022-06-03 20:38:35 +08:00
xiongguangjie
1891c4e391
add srt push type
2022-06-03 15:02:07 +08:00
taojishou
59dcd03b70
修改hls拉流后closestream崩溃的bug ( #1678 )
...
* 修改hls拉流后closestream崩溃的bug
Co-authored-by: 夏楚 <771730766@qq.com>
2022-06-01 13:05:49 +08:00
xiongziliang
cea30f8180
修复低版本gcc编译问题:#1667
2022-05-29 22:13:07 +08:00
xiongziliang
ea6ef2779e
新增url判空逻辑
2022-05-29 21:36:34 +08:00
xiongziliang
fd4145a622
完善对rtp负载为空处理逻辑:#1661
2022-05-28 10:34:54 +08:00
xiongziliang
6596eec069
Merge branch 'rtc_audio_delay' of github.com:mtdxc/ZLMediaKit
2022-05-28 10:21:48 +08:00
xiongziliang
93201f40d3
优化日志提示
2022-05-28 09:47:48 +08:00
cqm
3110284302
修复rtc单独播放音频延时高问题
2022-05-27 09:39:03 +08:00
夏楚
e2908e9775
cmake构建时自动生成mk_export头文件,解决msvc链接设备问题 ( #1660 )
...
* 解决msvc下链接问题
* CMAKE添加自动生成mk api export头文件
* 兼容非cmake构建时情况
Co-authored-by: baiyfcu <baiyfcu@gmail.com>
2022-05-26 20:30:43 +08:00
ziyue
cb0e5c6c57
全面更新整理c sdk
2022-05-25 15:51:24 +08:00
ziyue
9736badcea
优化编解码相关代码
2022-05-25 15:51:17 +08:00
ziyue
fa70af7cce
移动FFmpeg相关代码
2022-05-25 15:51:02 +08:00
xiongziliang
30dbac2c70
提高对不规范GB28181流的兼容性,防止视频轨道被忽略
2022-05-20 21:52:53 +08:00
xiongguangjie
b61cce85bd
修复拉取srs rtmp 流 play 命令参数类型不对的bug(参考vlc -2000 为number 类型) ( #1644 )
2022-05-19 19:01:23 +08:00
ziyue
c7d7999f53
兼容gcc4.8编译器
2022-05-18 20:07:54 +08:00
xiongziliang
251fe1f77c
优化随机端口分配逻辑
2022-05-14 23:34:33 +08:00
xiongziliang
8231c5c293
新增GB28181 tcp passive被动发送接口(startSendRtpPassive)
2022-05-14 23:25:22 +08:00
xiongziliang
b4166d5cfe
修复startSendRtp接口发送ipv4 udp地址失败的bug: #1635
2022-05-14 17:14:38 +08:00
xiongziliang
f1555a5501
防止忽略shutdown事件
2022-05-13 23:54:04 +08:00
xiongziliang
3e869c1f1d
修复https 302 跳转http相关bug
2022-05-13 23:24:17 +08:00
xiongziliang
fdbfccb32e
hls/http-ts播放器在消费完frame时再触发shutdown事件
2022-05-13 23:22:00 +08:00
xiongziliang
9e6ff0e798
优化头文件引用: #1627
2022-05-13 20:48:22 +08:00
WuPeng
5bc313bafe
增加长期保存hls切片的功能,segKeep=0为不长期保存,segKeep=1为长期保存。此功能部分等效于segNum=0的情况,不同的是这个保留不会在m3u8文件中体现。
2022-05-10 17:32:50 +08:00
ziyue
9861091b18
优先使用ipv4地址
2022-05-10 14:48:05 +08:00
ziyue
45494c020b
bug fixed
2022-05-10 10:44:12 +08:00
ziyue
d037acbf62
完善ipv6支持
2022-05-08 17:06:10 +08:00
ziyue
a44334acaf
全面支持ipv6
2022-05-08 16:33:33 +08:00
xiongziliang
a95bf960e0
完善ipv6支持
2022-05-08 09:25:47 +08:00
xiongziliang
d66845425c
完善ipv6网络适配
2022-05-08 00:26:01 +08:00
ziyue
3062ea0e7c
初步支持ipv6: #576 , #1406
2022-05-07 20:06:08 +08:00
ziyue
200a193c04
openRtpServer新增ssrc参数修改为追加至函数末尾, 确保代码逻辑一致无歧义: #1572
2022-04-28 17:44:35 +08:00
alexliyu7352
c1d2adebae
rtmp拉流的兼容性改进 ( #1595 )
...
* 修复play指令的bug
* 修改MSG_AGGREGATE的时间戳处理逻辑
这里参考了ffmpeg的方式来计算时间戳.
* add bom
2022-04-28 14:13:09 +08:00
xiongziliang
974055fd17
确保推流器主动断开时,不开启断连续推特性: #1559
2022-04-16 21:37:07 +08:00
wangcker
e712639e33
openrtpserver接口新增ssrc参数,强制过滤不属于本端口的视频流,以解决视频串流问题 ( #1572 )
2022-04-16 15:12:49 +08:00
xiongziliang
24472ee346
修复aac adts头大于7个字节时的兼容性问题
2022-04-16 14:13:55 +08:00
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
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
alexliyu7352
a7476e436a
修复HlsPlayer播放器BUG
...
当拉取加密流时, 因为不能正常播放, 所以不会触发playresult.
因此一直不会回调api请求.
2022-04-01 20:59:58 +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
wendelong
97ea8090ad
修复HLS播放导致程序异常的BUG
2022-03-29 13:43:17 +08:00
xiongziliang
ae99662a3d
修复编译警告
2022-03-27 21:57:05 +08:00
Dw9
822a401f30
优化端口池范围限定逻辑 ( #1508 )
2022-03-26 10:15:18 +08:00
xiongziliang
a16b6cbc59
mp4切片逻辑提高对音视频交织性差的流的兼容性能
2022-03-20 14:52:15 +08:00
xiongziliang
b127d8c2a9
rtsp/GB28181随机端口,支持端口范围设置
2022-03-13 20:50:25 +08:00
xiongziliang
0f1120b8a6
on_publish hook新增多种选项
2022-03-12 14:34:48 +08:00
xiongziliang
1cf0a0cc20
bug fix
2022-03-12 14:02:12 +08:00
xiongziliang
4dc621e1bb
转协议选项抽象为ProtocolOption对象
2022-03-12 13:24:23 +08:00
xiongziliang
ed661b1cf1
修改无法删除hls目录的bug:#1485
2022-03-12 10:57:39 +08:00
xiongziliang
2d88115b3f
完善http直播url解析规则pr:#1467
2022-03-12 10:04:36 +08:00
xiongziliang
81c0635bf2
Merge branch 'add_schema_query_string' of github.com:mtdxc/ZLMediaKit
2022-03-12 09:53:07 +08:00
alexliyu7352
090593f67c
hls拉取索引文件避免循环重试 ( #1474 )
...
当hls拉取索引文件失败时会触发重试.
但是play失败会调用一次rePlay, OnShutdow又会调用一次的rePlay.
由于m3u8文件非常小, 很大可能上短时间马上就会重试成功.
但是由于有两次的rePlay所以很可能再次析构了player, 又循环触发了更多的rePlay.
所以在播放成功后, 应该取消掉定时器
2022-03-12 09:44:47 +08:00
alexliyu7352
4be3c349be
mpeg-ts解析丢弃不完整的包 ( #1478 )
...
* 丢弃不正确的包
因为网络抖动或者拉流超时导致ts包不全.
这里丢弃掉有问题的包, 避免客户端解码中断
* Update TSDecoder.cpp
* 格式化代码
Co-authored-by: 夏楚 <771730766@qq.com>
2022-03-12 09:41:15 +08:00
alexliyu7352
276f763c08
hls拉流动态计算切片超时时间 ( #1477 )
...
* 动态计算切片超时时间
设置最大超时时间倍数和最小倍数,然后根据上一个切片的下载情况动态增加或者减少切片的超时时间.
* Update HlsPlayer.cpp
2022-03-12 09:39:33 +08:00
alexliyu7352
b4241e12d5
hls拉流新增支持mime类型 ( #1476 )
...
一些流服务器输出mime头有可能时audio/x-mpegurl, 所以这点的判断不能写的太死了.
2022-03-12 09:36:28 +08:00
alexliyu7352
2c63916973
http-ts拉流新增支持mime类型( #1475 )
...
ts切片有些mime头并不是只有这两种,
比如youtube的ts切片头就是application/octet-stream
2022-03-12 09:35:22 +08:00
cqm
4cfac989b3
支持?schema=rtmp/ts/fmp4格式
2022-03-03 19:45:47 +08:00
ziyue
d88fe077ed
on_publish hook新增originType字段
2022-03-02 18:03:44 +08:00
ziyue
4af83cbe7c
修复ENABLE_MEM_DEBUG时编译失败的问题
2022-03-01 19:00:50 +08:00
xiongziliang
8324a9fe43
修复rtsp推流访问空指针的bug:#1456
2022-02-28 17:20:20 +08:00
xiongziliang
b82cd5a500
确保ntp时间戳获取失败时,webrtc rtp重传缓存列队长度正常
2022-02-27 01:02:54 +08:00
ziyue
b2bb37dc5c
http: 修复32位系统下,下载3GB以上文件失败的问题: #1446
2022-02-23 17:03:13 +08:00
ziyue
4a7f5796ba
修复ts文件大于3GB时,获取文件大小异常的问题
2022-02-23 17:01:53 +08:00
ziyue
147ba6147c
rtsp/rtp: 过滤干扰的rtp pt, 提高兼容性: #1445
2022-02-22 16:53:05 +08:00
ziyue
a15d59cf23
hls/ts播放器改成绝对时间戳:#1389
2022-02-22 11:45:41 +08:00
ziyue
cb00dbab0f
在track就绪前,强制split frame,防止sps pps未被获取到
2022-02-17 14:32:49 +08:00
ziyue
c997d11bd1
修复mp4点播时,sps pps太长导致获取失败的问题
2022-02-17 14:31:28 +08:00
xiongguangjie
9c45fca761
根据配置禁用mmap缓存 ( #1429 )
2022-02-17 10:35:10 +08:00
ziyue
304c898a3a
完善http文件获取相关代码
2022-02-16 16:58:13 +08:00
xiongziliang
45d9bcd5f4
ts解析失败时清空split缓存
2022-02-13 22:02:16 +08:00
xiongziliang
2e9d77e8e1
删除多余ts split代码
2022-02-13 21:53:21 +08:00
xiongziliang
83c1f29253
HLS: 解决hls断流重新生成后异常的bug
2022-02-13 21:06:32 +08:00
夏楚
e37982adee
优化hls媒体流注册与无人观看清理机制 ( #1421 )
...
* 优化hls媒体流注册与无人观看清理机制
* 优化hls cookie管理
* bug fixed
2022-02-12 16:24:55 +08:00
ziyue
a2b6344861
修复hls m3u8返回content-type异常的问题
2022-02-11 16:36:40 +08:00
ziyue
49fc17d7e0
hls m3u8文件直接通过内存读写
2022-02-11 16:21:19 +08:00
ziyue
642c9c075a
修复设置cookie错误的bug
2022-02-11 15:14:34 +08:00
ziyue
36f24527a4
http cookie减少互斥锁,优化性能
2022-02-11 14:33:11 +08:00
ziyue
c510f3765a
关闭小文件mmap预加载功能
2022-02-11 14:02:55 +08:00
ziyue
984715a018
修复获取共享mmap大小bug
2022-02-11 13:40:41 +08:00
ziyue
8188aa0d53
非必要不调用fopen
2022-02-11 13:10:56 +08:00
ziyue
3f6f26731a
ts小文件先加载到内存
2022-02-11 12:49:03 +08:00
ziyue
96503967fc
屏蔽sendfile特性
2022-02-11 12:03:45 +08:00
ziyue
832c8d0d80
优化mktime性能问题
2022-02-11 11:54:12 +08:00
ziyue
d541ed2572
修复编译警告
2022-02-11 11:13:43 +08:00
ziyue
8338773767
hls/http-ts播放器新增性能测试模式
2022-02-11 11:11:30 +08:00
ziyue
91c0a563c3
确保mmap缓存记录表不膨胀
2022-02-10 21:23:50 +08:00
ziyue
dc672b14e3
确保32位系统支持超过4GB文件下载
2022-02-10 21:06:51 +08:00
ziyue
ba213346bc
http文件服务器mmap方案采用共享方式
2022-02-10 20:57:23 +08:00
ziyue
72caa43c97
主动关闭的流不支持断流续推: #1401
2022-02-09 14:31:40 +08:00
ziyue
595182cebb
Revert "当调用mk_media_source_close(ptr, 1);时,主动注销流 ( #1401 )"
...
This reverts commit c97aa8483e
.
2022-02-09 14:21:35 +08:00
ziyue
81747d114e
Merge branch 'master' of github.com:ZLMediaKit/ZLMediaKit
2022-02-09 11:48:51 +08:00
ziyue
cd1ca2c18c
http-flv直播后缀由.flv改成.live.flv(目的是防止与flv文件下载冲突)
2022-02-09 11:48:15 +08:00
xiongziliang
8c30f11c17
修复windows下编译错误
2022-02-05 21:32:56 +08:00
xiongziliang
1dd3d6f1ac
忽略SIGPIPE信号
2022-02-05 20:39:24 +08:00
xiongziliang
0402646f7c
防止命名空间歧义
2022-02-05 01:01:29 +08:00
xiongziliang
4505f8ff4f
仅http协议开启sendfile优化
2022-02-05 01:00:48 +08:00
夏楚
d13e31c21b
尝试使用sendfile优化http文件服务器 ( #1411 )
2022-02-04 23:02:19 +08:00
夏楚
c72cf4cbcc
整理命名空间 ( #1409 )
...
* feat: remove using namespace mediakit in header files.
(cherry picked from commit d44aeb339a8a0e1f0455be82b21fe4b1b536299f)
* feat: remove using namespace mediakit in FFmpegSource.h
* feat: remove using namespace mediakit in RtpExt.h
* feat: remove using namespace mediakit in header files.
* feat: remove using namespace std in header files.
* feat: remove using namespace std in header files when zltoolkit remove std in header
* 补充命名空间
* 整理命名空间
* 整理命名空间2
* 修复macos ci
* 修复编译问题
* 修复编译问题2
* 修复编译问题3
Co-authored-by: Johnny <hellojinqiang@gmail.com>
Co-authored-by: Xiaofeng Wang <wasphin@gmail.com>
2022-02-02 20:34:50 +08:00
joshuafc
c97aa8483e
当调用mk_media_source_close(ptr, 1);时,主动注销流 ( #1401 )
...
* 当调用mk_media_source_close(ptr, 1);时,主动注销流
主动调用上述函数时,期望不再等待RtmpSession.cpp:49处getPoller()->doDelayTask(continue_push_ms, [push_src]() { return 0; });捕获的指针,等待析构时反注册,而是立即反注册。
* `MediaSource::close`逻辑执行成功后执行`unregist`
2022-01-27 14:56:18 +08:00
xiongziliang
3bf6ec8939
修复获取推流所有权导致引用计数紊乱的bug: #1397
2022-01-26 00:37:51 +08:00
ziyue
756ec1364b
websocket客户端触发事件时确保对象强引用有效
...
同时修复websocket客户端判断alive返回false的bug
2022-01-25 11:44:51 +08:00
ziyue
4f27894302
添加bom头
2022-01-24 14:25:37 +08:00
ziyue
bc583e80b5
合并pr: #1391
2022-01-24 14:23:36 +08:00
ziyue
96061f1d36
Merge branch 'fix_rtc_g711_play' of github.com:ZLMediaKit/ZLMediaKit
2022-01-24 14:16:19 +08:00
xgj
341459fbf5
fix non rtc push rtc play g711 audio loss
2022-01-24 11:57:24 +08:00
ziyue
0ae9a8c8c8
Revert "添加递归溢出检测代码: #1363 "
...
This reverts commit 8937d9ea92
.
2022-01-24 11:38:36 +08:00
ziyue
80ecd2098e
修复编译警告
2022-01-24 10:48:15 +08:00
ziyue
100822f079
HLS: 修复时间戳回退导致不生成ts切片的bug: #1381 , #1386
2022-01-21 18:00:44 +08:00
ziyue
3a8e954255
Merge branch 'master' of github.com:ZLMediaKit/ZLMediaKit
2022-01-21 16:11:22 +08:00
ziyue
5007578202
hls/ts 播放器不做content-length严格限制
2022-01-21 16:10:27 +08:00
xiongziliang
f46d909bba
添加bom头,解决msvc编译问题
2022-01-20 22:49:47 +08:00
ziyue
bf191aa902
去除多余头文件
2022-01-20 15:42:53 +08:00
ziyue
88dc8d0a73
重写http客户端异常处理机制
2022-01-20 15:17:19 +08:00
ziyue
0f905b7333
优化http-ts播放器日志提示
2022-01-19 22:53:21 +08:00
ziyue
ee6ad66a6d
HTTP: 重写http相关超时管理机制
2022-01-19 22:50:44 +08:00
ziyue
81cf93a2bf
openRtpServer接口强制关闭reuse_port属性,防止端口冲突
2022-01-19 17:44:58 +08:00
ziyue
8937d9ea92
添加递归溢出检测代码: #1363
2022-01-17 14:47:55 +08:00
wangcker
e8b0993493
给openrtpserver接口添加enable_reuse参数 ( #1372 )
...
* 修改rtpopen逻辑
* 给openrtpserver接口添加enable_reuse端口
2022-01-14 21:53:01 +08:00
JayChen0519
a3e628449e
解决rtsp以MULTICAST方式拉流导致的奔溃问题 ( #1368 )
2022-01-14 13:14:30 +08:00
ziyue
75465311d9
修复丢包导致aac确实导致内存越界的bug: #1363
2022-01-14 13:09:47 +08:00
ziyue
d52fc4c31f
Refine: 优化rtsp相关代码
2022-01-12 15:24:28 +08:00
ziyue
5b6ff0af27
完善mingw编译环境的适配
2022-01-11 14:09:57 +08:00
ziyue
fdcc29e0ed
修复http客户端复用header无法更新的bug: #1349
2022-01-11 10:44:49 +08:00
xiongziliang
60f11df1ea
Revert "修复302跳转时, 如果跨域,header不正确的问题 ( #1349 )"
...
This reverts commit 741b197f
2022-01-11 09:18:36 +08:00
ziyue
412d280cd7
修复断连续推转协议失效的bug
2022-01-10 17:34:39 +08:00
ziyue
1dabc22347
修正错误注释
2022-01-10 17:00:25 +08:00
ziyue
f5efd232a9
rtsp/rtmp推流支持断连续推: #1240 , #1300
2022-01-10 16:43:57 +08:00
xiongziliang
262af8dfeb
修复编译问题
2022-01-09 15:12:23 +08:00
xiongziliang
7b04385bc8
合并http-ts播放器特性: #1336
2022-01-09 15:01:23 +08:00
xiongziliang
a4c69e61cd
Merge branch 'patch2' of github.com:alexliyu7352/ZLMediaKit
2022-01-09 14:54:21 +08:00
Dw9
819599ac25
修复获取帧率逻辑 ( #1293 )
2022-01-09 14:50:54 +08:00
alexliyu7352
741b197f31
修复302跳转时, 如果跨域,header不正确的问题 ( #1349 )
2022-01-09 14:32:59 +08:00
xiongziliang
f4d8eb4515
Rtmp: 获取h264sps/aac config失败时打印rtmp包内容
2022-01-08 16:28:13 +08:00
xiongziliang
6e445614b4
申请udp端口使用全局互斥锁保护,防止端口重复分配
2022-01-08 16:07:08 +08:00
ziyue
fd6e4b6342
MPEG: 优化http-ts性能: #1342
2022-01-06 15:30:09 +08:00
ziyue
5a592e6db6
优化循环池性能
2022-01-06 14:30:44 +08:00
alexliyu7352
3a0857ea31
当url并不是m3u8文件时, 避免拉取hls流出错 ( #1341 )
2022-01-05 20:01:19 +08:00
ziyue
ed4291bf3d
Merge branch 'master' of github.com:ZLMediaKit/ZLMediaKit
2022-01-04 16:54:51 +08:00
ziyue
3ccd48e7a9
HLS: 返回全部切片数据后,链接断开不报错: #1332
2022-01-04 16:53:19 +08:00
alexliyu7352
6f9f93cb97
忘记删除很早很早以前注释掉的代码了
2022-01-04 15:46:48 +08:00
Alex
4792f6213b
新增Ts拉流
2022-01-04 15:32:59 +08:00
alexliyu7352
a441168004
修正不使用resetWhenReplay选项时, MediaSource会重复注册的问题 ( #1330 )
2022-01-04 14:47:41 +08:00
ziyue
389dd5f54b
MPEG: 优化ts/ps muxer内存malloc和拷贝性能
2021-12-31 11:01:56 +08:00
ziyue
c0afcc48e5
malloc大内存警告环境变量改名为MEM_WARN_SIZE
2021-12-31 10:26:36 +08:00
xiongziliang
9cf6fea03e
修复编译问题
2021-12-30 22:12:36 +08:00
ziyue
84f3aa0748
完善内存统计并在malloc大内存时打印backtrace
2021-12-30 20:34:56 +08:00
ziyue
7f6be9e118
Refine: 消除编译警告
2021-12-30 15:28:27 +08:00
ziyue
940fe333db
尝试解决全局malloc统计相关变量提前销毁的bug
2021-12-30 15:28:27 +08:00
ziyue
1a6a62a304
malloc确保内存对齐
2021-12-29 20:57:35 +08:00
夏楚
15297a3ca3
添加内存malloc次数分布统计 ( #1322 )
2021-12-29 20:48:15 +08:00
ziyue
098ecf542a
部分代码移至第三方库
2021-12-29 14:18:52 +08:00
ziyue
5ae5c66256
Typo: 修复拼写错误
2021-12-28 21:29:00 +08:00
ziyue
89870190e9
MPEG: 整合复用ts/ps生成代码
2021-12-28 21:21:01 +08:00
ziyue
dce6b27f4f
Http-FLV: http-flv直播采用绝对时间戳并支持las
2021-12-28 21:21:01 +08:00
ziyue
30b63ad656
Rtmp: rtmp分发改成绝对时间戳
2021-12-28 21:21:01 +08:00
ziyue
b749cfb8a3
TS: hls/http-ts 改为绝对时间戳
2021-12-28 21:21:01 +08:00
夏楚
878ce87329
支持线程内存malloc统计 ( #1317 )
2021-12-27 17:40:15 +08:00
xiongziliang
7f649b94e5
Rtmp: 修复openssl未开启导致链接失败的问题: #1301
2021-12-26 19:58:30 +08:00
xiongziliang
98d435ef50
Rtmp: 修复openssl未开启导致编译失败的问题: #1301
2021-12-26 18:34:55 +08:00
ziyue
3d44c772ac
HLS: hls播放器解析ts失败时,清空数据以便恢复播放
2021-12-24 19:58:27 +08:00
ziyue
b1f68b9563
Splitter公开一些方法
2021-12-24 19:57:03 +08:00
ziyue
3cba8fca79
分包器缓存太多时主动清空数据
2021-12-24 17:47:15 +08:00
ziyue
5832de7ed8
HLS: ts分包器主动丢弃非法数据
2021-12-24 14:25:01 +08:00
ziyue
c25ff6400f
HLS: hls播放解决播放下一个切片导致数据丢失的bug: #1294
2021-12-24 13:29:16 +08:00
ziyue
0bf75529a2
HTTP: 确保http请求结束后不再触发超时事件
2021-12-24 13:26:42 +08:00
ziyue
f89abfaf67
HTTP: 优化http客户端代码,并修复重定向时超时的bug: #1306
2021-12-24 11:25:55 +08:00
ziyue
4e01c29833
Rtmp: 优化复杂握手c0c1生成算法性能
2021-12-22 22:20:28 +08:00
ziyue
ab14585a81
Rtmp: rtmp客户端支持复杂握手,兼容某些rtmp服务器
2021-12-22 22:06:19 +08:00
ziyue
2e9ff3ed3c
HLS: 修复hls直播ts/m3u8文件更新导致mmap失效,触发bus error的bug
2021-12-22 16:08:23 +08:00
ziyue
fe575af0d8
Merge branch 'master' of github.com:ZLMediaKit/ZLMediaKit
2021-12-22 14:06:46 +08:00
ziyue
6a044f0726
HLS: 修复http客户端连接复用导致hls播放异常的bug: #1294
2021-12-22 14:03:05 +08:00
xiongziliang
ee13ca57c2
Merge branch 'master' of github.com:ZLMediaKit/ZLMediaKit
2021-12-17 22:40:42 +08:00
xiongziliang
0feac7c924
MP4: mp4开始点播确保MediaSource注册后再返回
2021-12-17 22:33:08 +08:00
alexliyu7352
0d5ef99724
http客户端支持简单验证协议 ( #1289 )
...
* 加速track的准备速度
* 重命名为isAllTrackReady
* 无须缓冲帧时,暂不用转换为可缓存帧
* 支持简单验证协议
* 优化代码
Co-authored-by: 夏楚 <771730766@qq.com>
2021-12-17 17:48:05 +08:00
alexliyu7352
0b2e55429d
HLS: 加速track就绪速度 ( #1286 )
...
* 加速track的准备速度
* 重命名为isAllTrackReady
* 无须缓冲帧时,暂不用转换为可缓存帧
Co-authored-by: 夏楚 <771730766@qq.com>
2021-12-17 14:47:17 +08:00
ziyue
5e2967d94a
HLS: 合并hls m3u8刷新延时相关pr( #1281 )
2021-12-17 11:40:54 +08:00
Alex
0c1159959c
拉去hls索引文件时, 不能仅仅只是按照m3u8文件中的分段时间来拉取, 这样在网络延迟的情况下很容易出现问题, 根据规范与ffmpeg中的实现修改如下
2021-12-17 02:04:28 +08:00
ziyue
120879df0f
HTTP-FMP4: 修复http-fmp4直播秒开问题
2021-12-16 17:46:03 +08:00
ziyue
4291c31493
FMP4: http-fmp4直播提升流畅度
2021-12-16 12:09:49 +08:00
ziyue
f4b6a6bd40
MP4: 修复mp4解复用定时器精度太高时读取文件太快的bug
2021-12-16 10:50:31 +08:00
ziyue
b3dd440151
MP4Demuxer: MP4解复器支持获取track并添加frame输出回调
2021-12-15 20:51:26 +08:00
ziyue
283188bedb
MP4Demuxer: 提高MP4解复用器接口灵活度
2021-12-15 20:50:35 +08:00
xiongguangjie
5bffc98541
hls 录像支持直播时移 ( #1275 )
...
* hls live record support seek
* 调整代码风格
Co-authored-by: 夏楚 <771730766@qq.com>
2021-12-15 16:43:49 +08:00
xiongguangjie
50c6c2513d
修复rtsp tcp 推送到 rtsp-simple-server 失败的问题, ( #1274 )
...
* for push rtsp to rtsp-simple-server remeber annoce response sessionid and setup tcp add mode=record
* fix push rtsp to rtsp-simple-server over udp error add mode=record
* 优化代码
Co-authored-by: 夏楚 <771730766@qq.com>
2021-12-14 17:17:05 +08:00
Xiaofeng Wang
54367fef31
修正连 node ws 服务端失败问题 ( #1262 )
...
Fix #1251
参考: https://datatracker.ietf.org/doc/html/rfc6455#section-4.2.1
Sec-WebSocket-Key base64 解码后长度应该是 16 字节.
2021-12-08 14:17:34 +08:00
ziyue
e483424858
Refine: 删除无效代码
2021-12-01 22:14:28 +08:00
ziyue
c2b0f3c07b
Refine: 修复hls播放器丢失首帧关键帧的问题
2021-12-01 22:09:05 +08:00
ziyue
8f60ec9900
Refine: 精简复用MediaSink相关代码
2021-12-01 21:38:31 +08:00
ziyue
84baf920c1
GB28181: ps解析失败触发断言时,丢弃所有数据
2021-12-01 17:02:06 +08:00
ziyue
78bcd9e868
Merge branch 'master' of github.com:ZLMediaKit/ZLMediaKit
2021-11-30 18:05:06 +08:00
ziyue
4700ab77de
Feature: 新增转协议超时等相关配置项( #1241 )
2021-11-30 18:04:43 +08:00
xiongziliang
8b24088ab1
Refine: h264 rtp encoder不再过滤sei、aud帧
2021-11-28 21:15:03 +08:00
ziyue
3a99440296
Refine: 优化代码,减少拷贝
2021-11-23 15:59:18 +08:00
xiongziliang
97f7255f0a
Performance: 使用循环池优化rtmp分发性能
2021-11-21 11:34:20 +08:00
xiongziliang
5404a5266a
Performance: 使用循环池优化http-flv分发性能
2021-11-21 11:28:14 +08:00
ziyue
0b79de9d13
MediaSource: 禁止重复推送一个已经注册的流
2021-11-19 15:33:16 +08:00
ziyue
afdc5e4267
Refine: 优化tcp/udp服务器异常管理断开机制
2021-11-19 15:26:33 +08:00
ziyue
b13a0f5b79
Splitter: 全局限制内存使用量,防止内存溢出
2021-11-19 11:27:27 +08:00
ziyue
0281cb6a11
GB28181: 修复tcp推流时,流异常可能导致死循环的bug
2021-11-19 11:09:55 +08:00
xiongziliang
a5fc3b04d3
Refine: 删除多余代码
2021-11-13 00:31:32 +08:00
xiongziliang
b0343acf8c
Refine: 提炼精简代码
2021-11-13 00:24:38 +08:00
ziyue
56b7a8a97b
Merge branch 'master' of github.com:ZLMediaKit/ZLMediaKit
2021-11-10 15:30:57 +08:00
ziyue
ac41a1e933
RtmpPlay: 兼容无metadata的rtmp流
2021-11-10 15:25:24 +08:00
Xiaofeng Wang
9aaf3ce2ff
优先使用静态 payload type 值 ( #1206 )
2021-11-10 14:45:37 +08:00
ziyue
e51a78ebdc
MediaSink: 确保收到数据后才触发TrackReady回调
2021-11-10 14:35:37 +08:00