Commit Graph

99 Commits

Author SHA1 Message Date
langhuihui
72922ce539 fix: redcue 2024-06-18 09:23:44 +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
0c7bd27176 fix: reduce ring 2024-06-04 08:49:59 +08:00
dexter
35ff76f224 refactor: type = 2024-04-04 10:03:42 +08:00
langhuihui
b58e926819 feat: remove sei track 2024-02-26 17:16:49 +08:00
langhuihui
048c7eb0a8 feat: fit wrong timestamp 2024-01-11 13:46:51 +08:00
langhuihui
f41ff387ba feat: add av1 and opus 2023-11-17 17:17:34 +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
934d3cf9d4 fix: fetch summary timeout 2023-09-06 13:36:19 +08:00
langhuihui
21b86ef655 feat: add sync mode ,add pool size 2023-08-17 19:33:13 +08:00
langhuihui
1a347b5a0b feat: add stop subscribe api, show reasons for subscriber closure 2023-08-06 14:16:06 +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
fffadf5703 dev: use sync.Cond 2023-06-09 16:29:13 +08:00
langhuihui
ac7a26c6e2 feat: add waitGroup 2023-06-08 09:34:00 +08:00
langhuihui
f4fb7881f7 增加Stream NeverTimeout属性,用于纯数据轨道的流保持不关闭
消除一处魔法数字
将TCP监听增加TLS支持
2023-06-04 11:02:45 +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
e9177794cb 新增环境变量覆盖配置功能
兼容偶尔时间戳不对的情况 2023-04-23 10:18:40 +08:00
langhuihui
9dd9fe6cea 修复日志打印序列化报错问题 2023-04-15 08:37:22 +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
6e874008e4 Stream增加一个GetType方法用于获取发布者类型
增加了一个获取本地ip的util方法
pushPS采用rtp v1版
2023-03-13 13:07:04 +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
10a188a1ac parse config一处判断无效value 2023-02-15 19:32:05 +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
3d060e07cf 1、Media结构体去除了泛型
2、删除了ring_av,AVRing的读写逻辑分离,增加了AVRingReader结构体
3、AVFrame去除泛型,音视频数据由数组改为链表
4、去除PlayContext结构体,由AVRingReader代替
5、增加通用的内存池和可回收元素的泛型链表实现
2023-02-02 11:55:27 +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
b306f65a7a 修复DTS生成时遇到PTS超过循环的情况 2023-01-30 22:17:34 +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
b77e57b1bb 改变avcc类型 2023-01-20 18:59:26 +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
881fe5abd9 将amf0编码器和解码器放到codec/amf.go中,增加MallocSlice函数用于减少内存复制,
对写入avcc音频进行长度判断
2023-01-16 09:22:16 +08:00
dexter
964ac02169 1.对拉流时已存在的Publisher增加判空
2.优化ts流读取平滑处理
3.设置speedlimit默认值为500
2023-01-10 09:16:27 +08:00
dexter
a4c3c28fb4 refactor:
1、增加鉴权机制
2、去除IO类型的泛型
3、对停止拉流条件修正:当按需订阅造成流停止的情况纳入停止条件。
4、修复TS格式写入PMT的PID值
5、对于存在多PPS的情况进行兼容
2022-12-15 08:40:05 +08:00
dexter
7a23da59c6 👌 IMPROVE: 消除decconfig结构中的flv格式,优化重连后的republish逻辑 2022-11-27 17:37:45 +08:00
dexter
37ca67d64b 📦 NEW: 新增丢帧机制 2022-11-22 11:18:30 +08:00