夏楚
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