154 Commits

Author SHA1 Message Date
langhuihui
26dfd0b5cb feat: remove puller bad pull 2024-10-08 08:54:50 +08:00
langhuihui
6360213cd7 feat: use rwlock 2024-06-13 09:01:24 +08:00
langhuihui
9b574f3ddc fix: reduce 2024-06-07 08:57:55 +08:00
langhuihui
6e3c86d012 fix: avoid auth puller 2024-03-28 17:24:39 +08:00
langhuihui
f320e61803 fix: subscriber wait track timeout 2024-02-11 10:29:11 +08:00
langhuihui
25e15d0492 fix: rtp relay 2023-11-03 14:10:48 +08:00
langhuihui
afabc2777b feat: add track ReaderCount prop 2023-10-17 20:10:48 +08:00
langhuihui
7ff64a914e feat: update aurora to v4 2023-09-20 14:28:10 +08:00
langhuihui
21b86ef655 feat: add sync mode ,add pool size 2023-08-17 19:33:13 +08:00
langhuihui
6c29e525e5 feat: api can return json fomart now
feat: pull on subscribe event use InvitePublish to instead *Stream
fix: pull remote stream publish cause bugs
fix: Concurrency MarshalJSON Tracks

desc:
- API 现在可以返回{"data":xx,"code":0,"msg":"ok"}格式
- 按需拉流的事件的类型从*Stream修改为InvitePublish
- 远程拉流频繁重连后导致多路远程流同时写入同一个track
- 在并发序列化Tracks时导致错误,通过加lock解决
2023-08-12 19:22:03 +08:00
langhuihui
1a347b5a0b feat: add stop subscribe api, show reasons for subscriber closure 2023-08-06 14:16:06 +08:00
langhuihui
fb489001a9 fix: data track play 2023-07-10 16:53:39 +08:00
langhuihui
6a4610df1d feat: Prevent concurrent read and write issues when publishers catch up with subscribers after blocking them
desc: 防止订阅者阻塞后,发布者追上订阅者产生并发读写问题
2023-06-30 10:22:13 +08:00
langhuihui
b87416b78e feat: add insert sei
feat: add engine init done event
refactor: remove ring_lock
fix: retry connect to console
fix: h265 sps parse error
fix: concurrent publish

desc:
- 增加插入SEI帧的功能
- 增加engine初始化完成事件
- 删除ring_lock,DataTrack和MediaTrack共用一个ring
- 修复console无限重连导致远程服务器崩溃问题
- 修复h265 sps解析错误问题
- 修复并发发布导致的问题
2023-06-16 22:27:34 +08:00
langhuihui
fc7ac81c4e fix: g711 override memory
fix: PacketizeRTP memory leak
fix: avoid read files beyond the log path
2023-05-25 19:12:01 +08:00
langhuihui
528180b1dc feat: change data track to custom track 2023-05-16 22:49:00 +08:00
langhuihui
4f0e0b4de7 feat: remove ps to ps plugin,add idletimeout
decs: 将ps处理逻辑移入ps插件重,增加idletimeout配置,用于首次发布空闲超时断开连接,增加对订阅者消费过慢的处理,增加dataTrack中元素的回收
2023-05-14 15:27:24 +08:00
langhuihui
da92a2238f 修复内置鉴权,音频轨道因IDR锁环并发问题,增加Internal配置,mp4重放能力 2023-04-29 21:57:40 +08:00
langhuihui
2eea5c3706 1、增加内置鉴权机制(同腾讯云)
2、增加trace级别日志功能
3、消除rtp包的padding
4、自动创建BytesPool
5、StreamName修改为除去app后的部分
2023-04-24 13:43:50 +08:00
langhuihui
e9177794cb 新增环境变量覆盖配置功能
兼容偶尔时间戳不对的情况 2023-04-23 10:18:40 +08:00
langhuihui
9dd9fe6cea 修复日志打印序列化报错问题 2023-04-15 08:37:22 +08:00
langhuihui
187a7d86d3 1、支持enhanced-rtmp
2、优化ts解析的pes拼接逻辑
3、增加订阅者写入缓存配置
4、增加对流的主流程耗时过多时的告警
2023-04-12 13:40:34 +08:00
dexter
bfde37db72 支持多语言日志,增加心跳事件广播,兼容一开始缺少 vps 的流 2023-04-04 20:10:49 +08:00
dexter
5086fba6a3 修复续推,修复跳帧前限速,实现只有视频轨道时订阅者不再无效等待 2023-03-28 19:23:19 +08:00
dexter
25a8add7a7 事件上报 2023-03-28 13:26:54 +08:00
dexter
336b0ae759 提高时间戳精度,修复rtsp写入和rtp补完问题 2023-03-23 09:36:49 +08:00
dexter
7e42a85ebf 对于avcc的时间戳如果为0则写1,防止后面误判成非rtmp体系 2023-03-14 09:35:36 +08:00
dexter
e92fd1edfd 修复订阅时如果无音频时首个视频帧没有被订阅的bug
引入v3版的ps解包逻辑
修复非rtmp系的首个绝对时间戳初始化
2023-03-09 18:56:01 +08:00
dexter
3461bebd41 新增ps的publisher,frame中新增adts数据 2023-02-28 20:09:13 +08:00
dexter
fd2c7b8cb6 VideoFrame和AudioFrame增加track的指针方便访问track,rtp写入采用内存复用机制 2023-02-26 10:36:37 +08:00
dexter
4d008cfc5e 为hls和flv record增加一些辅助功能 2023-02-22 13:37:32 +08:00
dexter
3d01e28d82 ps流解析移入引擎,重新移除clockrate 2023-02-20 00:17:10 +08:00
dexter
d1e504381e 修复data track订阅问题 2023-02-15 21:12:42 +08:00
dexter
d6797d34a7 修复WritePESPacket功能,AddTrack增加Promise 2023-02-14 20:53:09 +08:00
dexter
b24fd63354 优化HLS写入内存复用 2023-02-11 22:09:47 +08:00
dexter
dde2b00fc1 修复订阅无音频的RTP的panic问题,WriteAVCC传入指针 2023-02-08 22:33:24 +08:00
dexter
eafd4f6aa2 1、引入ClockRate, 用于RTP时间戳处理(MPEG2中的时间戳是90KHZ)
2、修复控制流Sleep传入的时间单位错误
3、优化TS格式解析内存复用,减少内存分配
2023-02-08 14:00:07 +08:00
dexter
323ac7204e 1、当发布者离线时没有订阅者时,流的超时时间从1s改为10ms。
2、Track增加离线状态,当发布者离线时,Track状态改为离线状态,当发布者重新上线时,Track状态改为在线状态。
3、Track在恢复在线后,记录时间戳的差值,保持后续时间戳和之前的连续。
4、进一步优化订阅者读取音视频同步逻辑。
2023-02-06 07:58:56 +08:00
dexter
4d9c1350d1 1、增加SErepublish事件表示再次发布成功事件,使得SEPublish事件表示第一次发布成功。
2、修复push时ReConnectCount没有计数增加。
3、使用github.com/quic-go/quic-go v0.32.0版本。
4、修复订阅模式>1时没有从IDR帧开始的问题。
2023-02-03 21:28:30 +08:00
dexter
f2847be29f rtp改成链表形式 2023-02-01 10:42:50 +08:00
dexter
b27e032435 rtp打包内存回收bug 2023-02-01 01:29:02 +08:00
dexter
db6f8de3a7 优化amf读取 2023-01-30 10:35:43 +08:00
dexter
092719a61d 对配置中的时间进行统一处理 2023-01-29 15:05:19 +08:00
dexter
a5602c5afc 实现无锁内存池 2023-01-25 20:31:10 +08:00
dexter
5c5747e669 修复AAC订阅读取过迟问题 2023-01-18 23:25:40 +08:00
dexter
b0dcecdebc 重构Track写入架构,增加sub配置项可配置指定track订阅的参数名
修复首次写入AbsTime的值
2023-01-18 20:54:14 +08:00
dexter
964ac02169 1.对拉流时已存在的Publisher增加判空
2.优化ts流读取平滑处理
3.设置speedlimit默认值为500
2023-01-10 09:16:27 +08:00
dexter
5b51e8c494 1.修复读取ts中aac格式数据多次flush问题
2.修复subscribe结束时判断IsClosed调用对象错误
3.增加DefaultYaml功能
2023-01-03 18:55:32 +08:00
dexter
95fff02162 重构订阅者集合,减少轨道等待 2022-12-29 17:51:59 +08:00
dexter
1e1a86cd4b 引擎中增加对订阅者下线的及时响应 2022-12-18 14:27:38 +08:00