Commit Graph

2117 Commits

Author SHA1 Message Date
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
xiongziliang 80eb6dc402 协议解析最大支持4MB分包: #2026 2022-10-29 22:57:32 +08:00
xiongguangjie 0a71e06d4a united some code style 2022-10-19 14:55:39 +08:00
xiongguangjie 7b87985f74 Merge remote-tracking branch 'origin/master' 2022-10-19 14:27:49 +08:00
xiongguangjie 0d2e035215 rtsp and rtp h264 lowlatency mode config 2022-10-19 14:20:53 +08:00
ziyue ff6e9f4fc7 修复流注销时,hls无法播完最后一个切片的问题: #1955 2022-10-18 19:23:20 +08:00
ziyue ac1abb34da 新增媒体流flush机制:#1996 2022-10-16 19:54:17 +08:00
ziyue 80eef693c6 精确mp4录制时长:#1795 2022-10-16 16:44:54 +08:00
xiongguangjie bbdcc44eb0 mute audio maker avoid uint32_t cycle and 8k aac a frame is 128ms 2022-10-11 16:53:27 +08:00
ziyue 2b64245c14 优化代码 2022-10-08 10:47:09 +08:00
xiongziliang c790254f46 修复关闭mp4录制不能触发无人观看事件问题:#2010 2022-10-06 13:06:54 +08:00
ziyue 34838b1b26 rtmp点播采用简单握手,发送心跳包,兼容fms服务器: #2007 2022-09-30 13:36:43 +08:00
xiongguangjie bfebcd62c7 rtp packet sort set init seq 2022-09-28 15:29:11 +08:00
xiongguangjie 9f716dd8b8 fix gb startsendpassive use random port return immediately not wait 2022-09-26 15:50:02 +08:00
夏楚 037dd646d1
Merge pull request #1994 from Dw9/master
修复rtsp 推pcm L16, 空指针的异常
2022-09-26 10:27:30 +08:00
Dw9 6f1a45db8a 修复推rtsp L16崩溃 2022-09-25 12:13:09 +08:00
夏楚 b9a4b3e71a
消除编译警告 2022-09-24 19:07:45 +08:00
ziyue 15affeff1d 优化关闭媒体源相关逻辑: #1963 2022-09-18 20:36:47 +08:00
xiongziliang 12551be33c 提炼ProtocolOption赋值相关逻辑 2022-09-16 23:31:37 +08:00
custompal 08789454c3
rtsp支持指定播放单一track (#1937) 2022-09-13 16:27:00 +08:00
夏楚 4a35ddbddb
Merge pull request #1942 from mtdxc/reduce_code
简化代码
2022-09-09 11:10:55 +08:00
custompal d853075175
RtpServer新增tcp主动模式支持 (#1938) 2022-09-09 10:56:28 +08:00
cqm 999e0b274e 简化代码:
- MediaSource引入shortUrl和getUrl来简化日志输出
- WebApi引入fillSockInfo
2022-09-07 11:47:15 +08:00
WuPeng f765e5365b 修正在指定配置文件forwarded_ip_header的值后,无法获取不通过代理播放的客户端IP。 2022-09-06 21:13:11 +08:00
ziyue 4f47b7a5fe 修复getMediaPlayerList获取http-flv播放器列表时崩溃的问题 2022-09-05 14:59:46 +08:00
xiongziliang 5825f8b469 修复错误注释 2022-09-03 16:32:10 +08:00
xiongziliang 06c6654ed5 精简代码 2022-09-03 16:32:10 +08:00
xiongziliang c8ea6490cd 修复直接拉流代理时同协议流无法注册的问题 2022-09-03 16:32:10 +08:00
xiongziliang 20f1275c58 rtsp拉流、rtp单端口推流新增支持获取丢包率: #1877 2022-09-03 16:32:09 +08:00
PioLing 0948a3df31
支持在addStreamProxy和on_publish中控制单个流是否开启时间戳覆盖 (#1930) 2022-09-03 09:54:09 +08:00
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