imp_rayjay
eedf262059
新增支持mjpeg负载的mp4文件点播 ( #2898 )
2023-10-12 17:26:53 +08:00
PioLing
6348e64cdf
确保hls播放器持续播放 ( #2896 )
...
在hls注销后,hls cookie会继续存活60秒,在此期间,如果hls流重新注册,将导致无法继续播放;
通过此修改,在hls注销后每3秒查询一次MediaSource,可以在性能和功能间保持平衡。
2023-10-12 11:05:41 +08:00
fruit Juice
c25e76311f
修复相对时间戳模式下时间戳回退导致音视频不同步的问题 ( #2894 #2877 )
...
加大时间戳回退容忍度,最大回退阈值改成与跳变最大幅度一致
2023-10-11 14:52:16 +08:00
alexliyu7352
fdc00d5a02
增加jemalloc工具类, 增加jemalloc内存统计分析 ( #2885 )
...
增加jemalloc工具类, 增加jemalloc内存统计分析
2023-10-10 11:48:56 +08:00
夏楚
9f6930390a
IP白名单支持ipv6 ( #2858 )
...
Fix #2855
2023-09-26 14:48:19 +08:00
xia-chu
d542eca4d7
http-flv拉流客户端支持压测模式
2023-09-23 20:34:43 +08:00
xia-chu
e3e7495c90
新增webrtc播放器datachannel消息广播机制和接口
2023-09-02 12:53:56 +08:00
xia-chu
39dd886ec1
优化获取播放器列表相关功能
2023-09-02 12:07:42 +08:00
xia-chu
d286ac1d73
NoticeCenter支持安全类型转换,解决监听者参数类型不一致导致的bug
2023-09-02 11:22:28 +08:00
xia-chu
c35b5e9215
rtp过滤逻辑限制version字段
2023-09-02 10:50:25 +08:00
waken
fef85da771
修复调用close_stream同时调用getMediaList引发的崩溃 ( #2800 )
...
复现条件:chrome打开webrtc
demo网页,网页会每秒调用getMediaList。添加一条rtsp拉流,然后再调用close_stream,会偶现进入RtspPlayer::getPacketLossRate函数,然后_rtcp_context为空拿不到指针
2023-08-31 10:53:46 +08:00
xia-chu
06a6d26491
提高http文件服务器安全性
2023-08-26 19:43:11 +08:00
xia-chu
cb4ab21548
修复rtsp组播遍历迭代器导致崩溃的bug
2023-08-26 11:34:22 +08:00
xia-chu
f3f4b49332
修复设置点播速度后时间戳跳跃问题
2023-08-26 11:34:12 +08:00
xia-chu
895e93cb6a
端口池分配端口改成无序分配
...
解决zlmediakit重启后端口重复分配导致国标串流问题
2023-08-20 12:19:53 +08:00
xia-chu
90c164f7f7
rtsp播放器过滤非法的回复 ( #2760 )
...
提高对一些rtsp流的兼容性
2023-08-20 11:19:57 +08:00
xia-chu
2e05119df1
修复访问http目录下索引文件相关的bug
2023-08-12 15:54:12 +08:00
xia-chu
08299b6652
mp4录制新增追踪日志
2023-08-12 15:50:09 +08:00
xia-chu
2378617dd8
修复前向声明导致的编译问题
2023-08-08 16:06:29 +08:00
夏楚
383da1e09e
优化代码 ( #2741 )
...
删除无效的配置项,
同时修复编译警告
2023-08-05 21:30:01 +08:00
夏楚
98a3b8ab91
推流结束时,发送eof控制信令给rtmp播放器 ( #2711 #2723 )
2023-08-05 09:26:52 +08:00
夏楚
ff225114ec
修复rtsp服务可能无法发送rtp给nat内播放器的bug ( #2737 #2740 )
...
在udp connect rtsp播放器内网端口后,可能导致过滤掉其公网端口发送的打洞包;
从未无法完成与rtsp播放器udp端口的双向通信。
Socket::bindPeerAddr修改成软绑定时,只是保存发送目标地址,不会导致打洞包的过滤。
2023-08-05 09:25:35 +08:00
夏楚
2935bc1932
修复sdp全局信息未保存问题 ( #2739 )
...
解决rtsp拉流代理时无法区分直播点播问题
2023-08-05 09:24:52 +08:00
夏楚
63a50104fa
rtp ntp时间戳采用透传方式 ( #2719 )
2023-07-29 23:04:26 +08:00
夏楚
5a2bf8d196
完成对enhanced rtmp videocodecid的兼容 ( #2718 )
...
请查阅: https://github.com/veovera/enhanced-rtmp/issues/8
2023-07-29 23:03:28 +08:00
夏楚
bd8ad2eabf
优化enhanced-rtmp解析性能 ( #2717 )
2023-07-29 13:24:21 +08:00
夏楚
00b3c5184a
修复RtpProcess析构中抛异常导致崩溃的问题 ( #2714 )
...
WarnP(this) 时会调用get_peer_ip()接口,此接口可能抛异常;
析构中抛异常可导致程序直接退出。
2023-07-29 13:24:07 +08:00
夏楚
73c8a5faf4
统一设置单字节对齐方式 ( #2716 )
...
__attribute__((packed)) 替换为 #pragma pack(push, 1)
2023-07-29 13:07:22 +08:00
夏楚
54194fe501
兼容不规范的rtmp推流器 ( #2417 #2715 )
...
有些rtmp推流器在服务器返回鉴权成功前就开启推送流数据
2023-07-29 13:06:36 +08:00
夏楚
eaecf9a56c
ip白名单添加局域网ip 10段 ( #2712 )
2023-07-29 13:04:06 +08:00
xia-chu
c1f6517471
在开启on_http_access hook时,访问http文件(或目录)ip白名单机制不生效
...
on_http_access hook优先级更高,关闭on_http_access hook时才采用ip白名单机制,防止两种鉴权机制间的冲突
2023-07-27 15:54:03 +08:00
xia-chu
dfae1aee97
修复设置allow_ip_range为空后,无法关闭鉴权相关bug
2023-07-27 15:29:11 +08:00
xia-chu
22e3872cd4
优化ip过滤逻辑性能
2023-07-26 16:45:47 +08:00
xia-chu
098046cb1d
新增http api与http文件访问ip白名单限制机制,默认禁止公网访问
2023-07-26 16:33:21 +08:00
xiongguangjie
e8f8b48d38
fix rtsp player pull hik record stream ( #2624 #2701 )
...
修复rtsp 拉流 sdp中全局a:control:获取失败的bug
2023-07-25 15:47:28 +08:00
xia-chu
9317665058
支持enhanced-rtmp(H265)
2023-07-22 23:13:44 +08:00
xia-chu
b580d6c736
修复判断是否为增强型rtmp协议相关bug
...
有符合整型右移7位可能为-1(而不是1)
这样将导致在处理增强型rtmp时,判断关键帧和配置帧失败
2023-07-22 20:09:59 +08:00
xia-chu
3e9a8b9d8b
优化函数命名
...
isCfgFrame -> isConfigFrame
getAacCfg -> getConfig
2023-07-22 19:46:26 +08:00
xia-chu
780a1eb9fc
完善rtmp关键帧与配置帧判断逻辑
2023-07-22 19:46:26 +08:00
xia-chu
a86398b6db
优化与完善rtmp协议相关代码
...
rtmp相关常量由宏改为枚举
明确rtmp包一些字段赋值含义
2023-07-22 19:46:25 +08:00
夏楚
47add54465
新增支持enhanced-rtmp h265 推流 ( #2694 )
2023-07-22 17:31:39 +08:00
夏楚
b44ca8fd6f
rtmp协议支持更新metadata ( #2669 #2692 )
2023-07-22 17:31:23 +08:00
夏楚
a97f1e503d
提高http/rtsp header解析兼容性 ( #2670 #2693 )
2023-07-22 17:31:02 +08:00
夏楚
09aa38334e
H264 rtsp sdp生成正确的packetization-mode ( #2691 )
2023-07-22 17:30:39 +08:00
夏楚
a17e842da2
兼容ffmpeg6.0 ( #2648 #2689 )
2023-07-22 17:29:09 +08:00
xiongguangjie
19d6f1a003
FLV player avoid script data first element not string ( #2679 #2680 )
...
兼容不规范的flv流,比如livegbs产生的flv流metadata flv tag解析异常
2023-07-20 17:13:26 +08:00
xiongguangjie
4e33f5b477
rtsp player add query param for content-base ( #2637 )
...
rtsp以content-base为基准,增加url的query参数(根据抓包分析,vlc是这样处理的),以兼容海康rtsp录像流与
直播流,主要是为了兼容这两个issue: #2624 #2501
2023-07-10 10:53:02 +08:00
johzzy
d41afa5d48
fix typo. ( #2644 )
2023-07-09 10:25:10 +08:00
xia-chu
f55e13f9da
c sdk新增on_mk_media_send_rtp_stop事件回调
2023-07-08 22:34:09 +08:00
夏楚
beae515bb2
新增无人观看自动关闭流(无须hook返回)功能 ( #2643 )
...
auto_close参数适用于配置文件、addStreamProxy接口、on_publish hook
2023-07-08 21:36:34 +08:00
夏楚
e52c1cc510
修复addFFmpegSource添加的流事件拦截可能失效问题 ( #2642 #2629 )
...
此pr主要为了修复 #2629,通过新增getMuxer接口,
可以直接获取到所有协议共享的MultiMediaSourceMuxer对象,
在此对象完成事件拦截,防止某种协议事件丢失。
同时调整了下FFmpegSource.cpp代码格式。
2023-07-08 21:35:09 +08:00
夏楚
077566d1e1
新增支持on_publish hook返回stream_replace替换流id ( #2641 )
2023-07-08 21:32:04 +08:00
Nick
07a1a929ad
修复HLS点播时下载切片过快的bug ( #2635 #2628 )
...
Co-authored-by: xia-chu <771730766@qq.com>
2023-07-08 10:18:09 +08:00
a-ucontrol
c86e6ba3f1
Fix build issue with uclibc ( #2625 #2631 )
2023-07-06 20:07:49 +08:00
xiongguangjie
788915c7f7
修复mp4解复用器输出sps pps帧时设置起始头长度错误问题 ( #2627 )
...
mp4解复用器在解析mp4文件时,当获取到mp4头中sps/pps等配置帧信息时,创建相应的Frame未设置prefix size;导致后续输入H264Track分帧逻辑异常。
2023-07-06 15:47:30 +08:00
XiaoYan Lin
cb0579a16d
新增支持hls-fmp4直播( #2603 #977 #1965 )
...
同时主要优化点包括:
1、编译宏特性开关优化。
2、转协议复用器相关创建代码移动至Recorder类。
3、转协议复用器onAllTrackReady函数修改为addTrackCompleted。
4、startRecord/stopRecord/isRecording接口新增支持ts/fmp4/hls-fmp4协议。
Co-authored-by: xia-chu <771730766@qq.com>
Co-authored-by: linxiaoyan87 <linxiaoyan87@foxmail.com>
2023-07-02 12:02:33 +08:00
夏楚
6aa4b741a3
修复通用rtp解码器输入小时间戳增量流在丢包时不再输出帧数据的bug ( #2589 )
...
如果rtp时间戳增量很小,在rtp时间戳在转换单位为毫秒时无变化,
从而被认为是上一帧数据,由于处于丢包状态,此rtp数据将被一直丢弃。
2023-06-28 14:56:24 +08:00
xiongguangjie
d5bf99a27b
ts or ps muxer not support mjpeg video codec ignore it ( #2593 )
2023-06-28 14:56:06 +08:00
夏楚
db8e9182cc
新增配置项指定H264 rtp打包是否优先采用stap-a模式 ( #2582 )
...
H264 rtp打包模式是否采用stap-a模式(为了在老版本浏览器上兼容webrtc)还是采用Single NAL unit packet
per H.264 模式 有些老的rtsp设备不支持stap-a rtp,设置此配置为0可提高兼容性
2023-06-26 10:04:16 +08:00
Luosh
24d210f61d
修复NTP时间戳计算精度不足导致误差累积问题 ( #2576 #2570 )
...
ntp时间戳计算精度由毫秒调整为微秒,解决误差累积问题。
2023-06-21 17:20:39 +08:00
Talus
9f753b5e5f
RTSP支持强制协商RTP传输方式 ( #2572 )
...
当客户端发起RTSP SETUP的时候,如果rtp传输类型和配置不一致则返回461 Unsupported
transport。迫使客户端切换到对应rtp传输协议并重新SETUP;目前支持FFMPEG和VLC。
2023-06-21 15:35:27 +08:00
夏楚
7e117b1c7f
新增支持http-flv播放器 ( #2562 )
2023-06-17 10:29:27 +08:00
johzzy
03770ff409
Replace the tuple (vhost/app/stream) with MediaTuple. ( #2560 )
2023-06-17 10:28:01 +08:00
xia-chu
2410419911
忽略非法的rtcp ntp时间戳
...
有些设备在发送sender report rtcp时,其rtp和ntp时间戳一直为0,将导致zlmediakit计算出的ntp时间戳异常
2023-06-17 10:14:20 +08:00
xia-chu
ccddb84a19
修复跨域问题: #2548
2023-06-17 09:15:50 +08:00
Luosh
23e24d07e6
解决存在b帧情况下,rtsp播放不同步问题 ( #2550 #2549 )
...
在根据rtsp pts生成ntp时,由于pts可能回退,旧有逻辑不允许回退将导致ntp异常
2023-06-13 17:39:43 +08:00
夏楚
5ca4ed53b2
防止析构函数抛异常导致崩溃问题 ( #2546 )
2023-06-11 22:07:15 +08:00
xiongziliang
fe37005526
兼容http body超过声明大小的情况
2023-06-11 09:22:28 +08:00
夏楚
5f936663b4
统一处理content-length, 修复http get请求带body不兼容问题( #2528 #2544 )
2023-06-10 20:49:21 +08:00
xiongguangjie
67d5c42007
Fix addStreamProxy rtsp url user or pass contain special char result in auth failed ( #2545 )
2023-06-10 18:46:30 +08:00
夏楚
d3f1c2fab1
mp4录制文件名添加索引号,防止一秒内生成多个同名文件导致覆盖 ( #2542 )
...
实测发现 如果在点播推流时 如果切片大小设置比较小 一秒钟可能产生多个mp4切片
以前切片名称粒度最小为一秒 所以会存在文件覆盖问题
2023-06-10 14:56:23 +08:00
xia-chu
64b8079ac1
优化函数命名风格
...
FindField改名为findSubString
2023-06-10 14:55:40 +08:00
xia-chu
31944a92ad
重写Parser代码实现
2023-06-10 14:55:40 +08:00
xia-chu
af0ebf4633
优化Parser代码命名
2023-06-10 14:55:40 +08:00
xia-chu
52c7bc1d34
精简HttpServer代码
2023-06-10 14:55:40 +08:00
xia-chu
fff53cf0e2
格式化HttpSession.cpp代码
2023-06-10 14:55:40 +08:00
夏楚
e4acc59bec
媒体时间戳默认改为相对时间戳,通过时间戳矫正器解决跳跃和回退问题 ( #2523 )
...
通过用户反馈发现,遇到较多直播源时间戳混乱问题,包括rtsp流之rtcp ntp时间戳混乱,国标流时间戳混乱问题。
之前默认采用源流绝对时间戳,但是由于时间戳混乱会导致hls切片异常或视频播放不了等问题。
故默认改成相对时间戳(modify_stamp=2),通过时间戳矫正器过滤了时间戳跳跃以及回退问题(强制加1ms),
同时保留了对之前时间戳覆盖(modify_stamp=1)的兼容。
该修改同时兼容点播流,在点播流开启时间戳覆盖时,不起实质作用(采用原始绝对时间戳)。
2023-06-03 17:34:34 +08:00
xiongziliang
af57691bc8
c++14相关代码替换为c++11代码
2023-06-02 21:43:24 +08:00
fruit Juice
7970138966
Fix MP4Reader available speed range bug ( #2516 )
2023-06-01 14:29:19 +08:00
百鸣
14537bfbc7
解决ws-flv和http-flv的累积时延问题( #2509 )
2023-05-31 23:16:16 +08:00
xiongguangjie
11a39c68c4
修复海康rtsp点播拉流seek相关bug( #2501 #2511 )
2023-05-31 09:59:41 +08:00
Johnny
0232caf068
add MediaTuple
2023-05-30 11:01:27 +08:00
Johnny
f4ee607feb
add RtspMediaSource::Clone
2023-05-30 11:01:27 +08:00
a-ucontrol
51e9313275
Make available the media_info variable for the class inherited from WebRtcSession and HttpSession. ( #2505 #2461 )
2023-05-29 14:48:13 +08:00
dengjfzh
18dbbc8d19
降低TCP RTP 2字节头被误判为EHOME头的风险 ( #2502 )
...
当TCP RTP包大小为256字节时,可能触发RtpSplitter::onSearchPacketTail误判为EHOME格式。
这个修改一旦检测到数据不是EHOME格式,则后续不再进行尝试,以减小误判的风险。
2023-05-27 22:27:10 +08:00
dengjfzh
032a2ac91d
修复TCP RTP 2字节头被误判为4字节头的问题 ( #2499 )
...
当RFC4571封装的RTP包大小在0x2400到0x24ff之间时,会被误认为是RTSP Interleaved
封装的数据。因为0x24正好是'$'的ASCII码,而RtpSplitter::onSearchPacketTail通过'$'来识别RTSP
Interleaved数据。暂时没有想到什么好的办法能够百分之百的正确区分RFC4571数据和RTSP
Interleaved数据。增加一个状态变量记录之前的状态,一旦检测到数据不是RTSP
Interleaved格式,则后续不再进行尝试,以减小误判的可能性。
2023-05-26 17:34:47 +08:00
Kiki
7e4010df83
修复startSendRtp接口gop缓存功能可能失效的问题 ( #2455 )
...
如果帧序列为SPS PPS SEI IDR,那么GOP缓存会从IDR开始,导致解码器未获取到SPS PPS从而不能秒开
2023-05-18 16:35:54 +08:00
xia-chu
4fa04d6a37
优化PlayerProxy代码
2023-05-13 00:14:35 +08:00
xia-chu
0afe75229e
修复拉流代理获取流信息可能访问空指针的bug
...
此bug由 #2448 引入,触发条件:
- 1.配置文件rtsp.directProxy设置为0
- 2.调用addStreamProxy代理rtsp流
在非直接代理情况下,PlayerProxy::_media_src为空,导致访问空指针。
2023-05-13 00:02:06 +08:00
老衲不出家
f6ac39ade5
新增允许所有跨域请求配置项 ( #2449 )
...
配置项为http.allow_cross_domains
2023-05-12 11:47:22 +08:00
codeRATny
1136b0a3c0
Adding new features for proxy player ( #2448 )
...
Add some functions for the proxy player, such as:
getting stream information (basic video/audio information)
callbacks for any connection and disconnection from the server
And now you can set delay between reconnections. See proxy player
constructor
2023-05-12 11:20:31 +08:00
Per-Arne Andersen
350e262433
Added support for GCC 13 ( #2452 )
...
GCC Does not explicitly include stdint. This update includes them where needed.
A very minor change that would allow GCC13 and above to compile
correctly. In newer versions, cstdint is not implicitly included, hence
it errors out during compilation for some files.
2023-05-11 09:58:48 +08:00
BackT0TheFuture
e97e0d86bd
修复rtmp多层级url解析异常问题 ( #2435 )
...
解析多层级rtmp url会丢失某些层级信息: #2433
2023-05-05 17:34:32 +08:00
xiongguangjie
ffed4b3bb2
format code style for pusher and player
2023-05-03 21:46:25 +08:00
xiongguangjie
7c89c1655f
add getProxyPusherInfo and getProxyInfo restful api
2023-05-03 18:52:11 +08:00
Johnny
bfec1b1e0e
fix typo
2023-05-02 20:41:13 +08:00
alexliyu7352
9a9040ecda
Merge pull request #2428 from alexliyu7352/patch-56
...
避免服务器端返回content-length=0时,TsPlayer不能正确释放的问题
2023-04-28 23:46:22 +08:00
xia-chu
19c5323633
修复startSendRtp发送mp4文件时崩溃问题:#2429
2023-04-28 23:02:48 +08:00
xia-chu
ac46f5499e
修复编译错误: #2416
2023-04-28 22:44:57 +08:00
xia-chu
8c049d4e28
实现whip/whep delete相关功能
...
通过whip/whep 回复http头中的Location url进行删除资源
新增delete token随机数实现删除鉴权
2023-04-28 22:36:58 +08:00
xia-chu
d2349f01bd
使用static_pointer_cast优化性能
2023-04-28 22:04:38 +08:00
xia-chu
cdf97e7605
更新zltoolkit,适配最新代码
2023-04-28 22:04:09 +08:00
Alex
b3d4188fde
避免服务器端返回content-length=0时,TsPlayer不能正确释放的问题
2023-04-28 01:33:17 +08:00
xiongguangjie
64553797bd
h265 rtp pack avoid 1387 size nal fu-a only one end packet and first satrt end not exist try fix #2425
2023-04-27 19:54:47 +08:00
lijin
38e05ab8cb
添加addStreamProxy对非法url异常捕获处理 ( #2412 )
...
确保抛出异常时,原有代理拉流对象被正常移除,后续可以更新正确url
2023-04-24 14:32:34 +08:00
xiongziliang
c8a20f85f6
直接打印SockException类
2023-04-23 00:10:18 +08:00
xiongziliang
de8249592e
Session类构造析构跟踪日志统一在底层网络框架打印
2023-04-22 23:58:17 +08:00
xiongziliang
7a95c87a29
优化代码
...
空构造和析构函数替换为缺省
去除多余分号
2023-04-22 21:59:26 +08:00
xiongziliang
b5a0a2e858
新增动态更新rtp server过滤ssrc接口updateRtpServerSSRC( #2390 )
2023-04-21 23:08:48 +08:00
xiongziliang
bb26fead1e
rtmp协议metadata设置title字段
2023-04-21 22:25:06 +08:00
Johnny
ce16a0a9b6
Fix compile warnings
2023-04-21 21:12:42 +08:00
xiongguangjie
30182701f5
fix vlc can't play mp4 of jpeg #2388
2023-04-19 19:40:58 +08:00
xia-chu
f1438986ad
修复stopSendRtp后无法触发无人观看事件的问题
2023-04-18 10:54:49 +08:00
Dw9
978143c86d
rtp级联(ps/ts/es)新增支持gop缓存功能 ( #2395 )
...
该修改主要解决rtp级联(调用startSendRtp接口)未做gop缓存导致上级无法秒开的问题。
同时通过RingBuffer对象线程隔离的特性,实现了在断连续推场景下归属线程切换导致的线程安全问题。
用户如未使用rtp级联功能,请修改配置文件关闭GOP缓存(rtp_proxy.gop_cache=0)以便节省内存。
---------
Co-authored-by: 夏楚 <771730766@qq.com>
2023-04-17 12:19:24 +08:00
王成
3a6f660619
新增Assert异常类型,解决国标重复推流不注销问题 ( #2393 )
...
Co-authored-by: wangcheng <wangcheng@xwmail.com>
Co-authored-by: xia-chu <771730766@qq.com>
2023-04-14 15:10:48 +08:00
xiongguangjie
67d8837442
rtp h265 packet like h264
2023-04-06 19:54:59 +08:00
夏楚
599208dd6a
修复全局变量构造先后顺序导致启动崩溃的问题
2023-04-06 16:16:28 +08:00
alexliyu7352
7fcd88d02a
避免hls拉流时m3u8文件出现问题或直播结束后,无限重试 ( #2357 )
...
Co-authored-by: xiongziliang <771730766@qq.com>
2023-04-05 20:36:44 +08:00
xiongziliang
384c8677ea
startSendRtp接口在发送ps时支持只发送音频: #2217
2023-04-01 23:48:57 +08:00
ljx0305
ca7efd5941
修正ssrc轮回为0时,ssrc重复分配为1的bug( #2327 )
2023-03-24 16:19:22 +08:00
mtdxc
98ec6b68d9
HttpRequester支持失败重试功能( #2323 )
2023-03-23 14:46:45 +08:00
xiongziliang
dfd37ff350
时间戳处理新增接口支持获取相对时间戳
2023-03-22 21:19:16 +08:00
baiyfcu
950f33bd3f
新增windows中_M_ARM64 _M_ARM _M_X64 CPU指定集识别
2023-03-17 02:04:00 +08:00
baiyfcu
a754a22680
修复在WINDOWS上cpu类型无法判断BUG
2023-03-17 01:31:56 +08:00
ljx0305
1dec350dcd
修正on_rtp_server_timeout hook时获取的端口非真实端口 ( #2297 )
...
在调用openRtpServer接口时,如果传入的端口为0(随机端口), 那么在触发on_rtp_server_timeout hook时的端口为0
2023-03-15 14:54:18 +08:00
TempoTian
5ae34d666e
提高 rtmp tcUrl 解析兼容性 ( #2303 #2298 )
2023-03-13 20:42:31 +08:00
xia-chu
b9fa5f9b5e
实例汇报时间改成60分钟一次
...
同时新增程序启动日期、是否开启编译ffmpeg选项
2023-03-13 20:29:18 +08:00
xia-chu
96e1cf8146
优化cpu类型判断宏
2023-03-12 18:45:37 +08:00
xia-chu
843e3423cf
新增实例上报功能: #2294
2023-03-12 00:14:22 +08:00
mtdxc
15dc854e94
修复http multi form上传文件名相关bug( #2293 )
2023-03-11 21:08:39 +08:00
xia-chu
1bab0b8e31
修复WebSocket线程安全问题,同时新增内置客户端、服务端心跳机制。
2023-03-11 11:08:14 +08:00
xia-chu
c2a8d46a64
提高c sdk mk_media对象线程安全
2023-03-11 11:02:20 +08:00
xia-chu
ba4296e180
修复断连续推情况下线程迁移导致崩溃的bug:#2283
...
如果一个MultiMediaSourceMuxer对象上挂载了很多个RtpSender对象,
这些对象会绑定MultiMediaSourceMuxer的OwnerPoller(归属线程),
在断连续推发生时,对应的MultiMediaSourceMuxer对象OwnerPoller线程
将发生变更,导致与RtpSender对象的线程不一致。
2023-03-11 10:34:58 +08:00
xia-chu
4cc2982a2c
重写jitter buffer算法,修复seq回环时可能丢包的bug
2023-03-11 10:17:31 +08:00
ljx0305
1cc0f51c07
replace ffmpeg deprecated api avpicture_fill to av_image_fill_arrays ( #2279 )
2023-03-09 15:24:32 +08:00
ziyue
23296ae5fa
加大参数冗余,提高webrtc抗丢包能力
2023-03-07 10:37:44 +08:00
ziyue
d05c9d5f51
重写jitter buffer长度控制算法,提高webrtc/rtp抗丢包能力
2023-03-06 21:04:50 +08:00
xiongguangjie
d6e9a4fb90
remove PSParser mistake comment
2023-03-06 19:33:34 +08:00
xiongziliang
9fdb3de8b2
优化rtp排序抖动缓存算法,提高webrtc/rtsp抗丢包性能
2023-03-06 00:31:11 +08:00
baiyfcu
a5c3db4ee1
修复逻辑判断不严禁XSS攻击,server在windows debug运行时拒绝服务攻击:#2213
2023-03-03 14:44:59 +08:00
xiongziliang
539d6299f0
rtp服务器单端口模式收到相同ssrc推流时延时关闭RtpSession对象(防止频繁创建销毁对象)
2023-02-28 22:56:29 +08:00
xiongziliang
c2e1083493
复用rtp/rtcp判断逻辑过滤非rtp包: #2247
2023-02-28 22:23:30 +08:00
xiongziliang
8f108395a5
rtp服务器过滤非rtp包: #2247
...
防止非法数据干扰后续处理逻辑对rtp ssrc/pt等的绑定
2023-02-26 21:13:49 +08:00
ziyue
1f2ef82b46
新增支持获取gop大小与间隔信息: #1570
...
getMediaList/getMediaInfo接口、on_media_changed hook新增支持字段如下:
{
"codec_id" : 0,
"codec_id_name" : "H264",
"codec_type" : 0,
"fps" : 0.0,
"frames" : 1119, #累计接收帧数,不包含sei/aud/sps/pps等不能解码的帧
"gop_interval_ms" : 1993, #gop间隔时间,单位毫秒
"gop_size" : 60, #gop大小,单位帧数
"height" : 556,
"key_frames" : 21, #累计接收关键帧数
"ready" : true,
"width" : 990
}
2023-02-20 16:11:10 +08:00
alexliyu7352
2f8dab66c5
http地址支持相对路径 ( #2223 )
...
* 部分hls中会出现类似[../]或者[./]的相对地址, 因此写了一个解析的方法
* 有时候上游http协议不规范会导致直接输出eof, 特别是在自动重试机制开启下, 容易造成定时器没办法初始化从而拉不到流但是session一直存在,所以需要做一个判断,如果没数据直接报错
2023-02-20 10:52:00 +08:00
xiongziliang
5bcfba1da4
startSendRtpPassive接口新增连接超时参数:close_delay_ms
2023-02-17 23:02:09 +08:00
xiongziliang
8f0ba6988b
openRtpServer接口新增only_audio参数,优化语音对讲场景
2023-02-17 22:48:39 +08:00
ziyue
b3ba6d4214
完善mk_transcode相关接口
2023-02-11 11:35:37 +08:00
ziyue
f6cba98a8e
修复FrameDispatcher可能导致死锁的问题
2023-02-06 14:19:43 +08:00
xiongziliang
6eb36ec883
获取MediaSource信息相关接口返回帧数相关字段:#1570
2023-02-05 22:04:14 +08:00
xiongziliang
a0955d956a
优化代码风格
2023-02-05 22:00:36 +08:00
xiongguangjie
a52e9d6ba8
fix h264 no idr nal sps pps sei i slices
2023-02-04 18:17:06 +08:00
ziyue
6078ca3e81
修复hls注册抛异常可能导致的bug
2023-02-02 11:21:49 +08:00
xiongziliang
44f4e9acd4
openRtpServer udp多端口模式默认绑定发送端地址,防止多路同时推流时ssrc冲突问题
2023-01-08 21:35:50 +08:00
xiongziliang
0374e7a660
startSendRtp接口支持同时接收流:#2109,#2149
2023-01-07 22:36:30 +08:00
Dw9
3b3a83b524
修复MediaSource在startSendRtp后无法注销的bug ( #2187 )
2023-01-07 21:31:46 +08:00
ziyue
f5755a17e7
合并 #2183
2023-01-02 12:08:20 +08:00
ziyue
08c47ff4f0
Merge branch 'feature/editable_rtsp_sdp' of github.com:a-ucontrol/ZLMediaKit
2023-01-02 11:59:56 +08:00
ziyue
77e46353ce
新增支持mjpeg es rtp流
...
mpegts/g711 payload改成固定模式
2022-12-30 18:04:15 +08:00
ziyue
ae950606cb
修复JPEGTrack无法就绪的bug
2022-12-30 18:03:21 +08:00
Ikko Ashimine
fda77f0daf
!23 fix typo in RtspSession.cpp
...
* fix typo in RtspSession.cpp
2022-12-30 17:25:58 +08:00
Alexandr
afa6465178
Changes to MP4Muxer for CodecJPEG
2022-12-30 08:56:57 +03:00
Alexandr
dc26bbf145
protected virtual bool sendRtspResponse(...)
2022-12-30 08:50:30 +03:00
a-ucontrol
eed5f02380
rtsp/rtp 新增支持mjpeg编码 ( #2166 )
...
* Trying to send mjpeg via MultiMediaSourceMuxer
* Improved JPEGRtpEncoder::inputFrame code but still not working
* 优化代码
* 完善jpeg相关逻辑
* Micro fix
* FrameJPEG renamed to JPEGFrame according to ZLM style
* Modified JPEGRtpEncoder::inputFrame and JPEGRtpEncoder::rtp_send_jpeg
* getVideoHeight(), getVideoWidth() and getVideoFps() in JPEGTrack
* mjpeg rtp打包避免内存拷贝/修复mjpeg rtp解包huffman_table size字段错误的bug
* 支持mjpeg pix type
* 优化性能
* add bom header
2022-12-21 15:32:16 +08:00
monktan89
56ccd4332a
提高rtsp播放器兼容性: #2159
2022-12-14 15:08:24 +08:00
xiongziliang
04422b31b6
完善非法url提示:#2129
2022-12-04 16:21:08 +08:00
老衲不出家
f05a9501fa
Unified code style ( #2137 )
2022-12-02 14:43:06 +08:00
monktan89
68ea5465cc
修复addStreamProxy后,马上startSendRtp,触发的无人观看事件回调是MediaSourceNull的信息,导致无法关闭流bug( #2120 )
2022-11-29 11:33:16 +08:00
mtdxc
754073918a
Header refactor ( #2115 )
...
* 优化MultiMediaSourceMuxer头文件包含
* 将MediaSinkDelegate和Demux移到MediaSink中
* MediaSource头文件重构, 独立出PacketCache.h
精简Frame和Track的头文件
* Rtmp头文件重构
* Rtsp头文件重构
* webrtc头文件重构
* 规范.h头文件包含,并将其移到.cpp中:
- 尽量不包含Common\config.h
- Util\File.h
- Rtsp/RtspPlayer.h
- Rtmp/RtmpPlayer.h
* 删除多余的Stamp.h和Base64包含
2022-11-29 11:07:13 +08:00
xiongziliang
50fa671564
修复析构中调用getOwnerPoller抛异常导致崩溃的bug:#2117
2022-11-26 10:16:47 +08:00
ziyue
188ee1f61a
消除编译警告
2022-11-19 09:37:49 +08:00
ziyue
68948288e0
TcpSession/UdpSession统一为Session类
2022-11-19 09:33:10 +08:00
ziyue
fc433de9ac
适配webrtc AV1编码: #2091
2022-11-18 16:47:02 +08:00
ziyue
255ccb4265
精简rtp服务器相关代码
2022-11-18 16:43:00 +08:00
ziyue
df14924a99
优化rtmp服务器兼容性: #2078
2022-11-15 20:53:24 +08:00
ziyue
034e29b25a
修复rtsp basic鉴权相关bug: #2087
2022-11-15 20:52:27 +08:00
xiongguangjie
87353534af
fix rtp server process removed server not clear
2022-11-14 14:04:57 +08:00
xiongziliang
9bb6a2f828
全面整理转协议相关配置文件
2022-11-12 23:56:28 +08:00
xiongziliang
946945ce7b
优化代码
...
整理代码
2022-11-12 22:06:09 +08:00
samosirl
6ffbcbfde5
优化Ehome协议兼容性 ( #2063 )
2022-11-12 21:03:54 +08:00
xiongziliang
b54f50c7c0
修复hls流注销时相关bug:#2082
2022-11-12 09:57:47 +08:00
夏楚
a37268f003
格式化代码
2022-11-12 01:52:49 +00:00
xiongguangjie
bc63142712
add rtp server timeout hook
2022-11-10 16:58:02 +08:00
Aven
af554bc376
update media-server ( #2075 )
...
* fix c2065 and c2051 error on windows, and the head file mpeg-ts-proto.h is also deprecated
* update media-server to 357ef88
2022-11-09 17:44:38 +08:00
xiongziliang
44fd6b86bc
完善版本信息
2022-11-06 00:38:14 +08:00
xiongziliang
0053148139
优化MultiMediaSourceMuxer相关代码
2022-11-05 20:47:33 +08:00
ziyue
2b804514e1
修复mp4点播流线程安全检查失败bug
2022-11-01 22:02:28 +08:00
ziyue
5877d3942e
RtpServer确保超时回收
2022-11-01 17:54:41 +08:00
ziyue
2cdeddeb2c
RtpServer支持udp与tcp模式并存
2022-11-01 17:27:27 +08:00
ziyue
60d96f4f3b
优化FrameDispatcher相关代码
2022-11-01 16:52:52 +08:00
ziyue
d04761c2c6
Merge branch 'FrameDispatcher_addDelegate_refactor' of github.com:mtdxc/ZLMediaKit
2022-11-01 16:36:43 +08:00
ziyue
bfe118d94e
修复RtpProcess析构导致的线程问题
2022-11-01 16:05:23 +08:00
ziyue
f5a032c9a0
Merge branch 'master' of github.com:ZLMediaKit/ZLMediaKit
2022-11-01 14:08:36 +08:00
cqm
dde352542b
private FrameWriterInterfaceHelper
2022-11-01 12:03:49 +08:00
cqm
ac3d7bd21f
add addDelegate with std::function, remove FrameWriterInterfaceHelper
2022-11-01 12:03:04 +08:00
ziyue
520945c2e9
提高线程安全性
2022-11-01 10:53:38 +08:00
xiongguangjie
d2c64b1f09
Merge remote-tracking branch 'origin/master'
2022-10-31 19:04:04 +08:00
xiongguangjie
613aae8bc3
rtp server only tcp mode is none use udp server
2022-10-31 18:47:42 +08:00
ziyue
918b1fce6c
修复hls/ts拉流崩溃问题:#2057
2022-10-30 23:50:20 +08:00
xiongziliang
9498b96b95
确保rtp推流线程安全性
2022-10-30 21:36:35 +08:00