Commit Graph

94 Commits

Author SHA1 Message Date
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
f677b9885c feat: ReturnValue return raw data if data is string or number 2024-03-15 09:29:39 +08:00
langhuihui
0280cfa655 feat: add amf3 protocol, audio track attach when get data 2024-03-07 20:48:20 +08:00
langhuihui
b58e926819 feat: remove sei track 2024-02-26 17:16:49 +08:00
langhuihui
fea867a287 fix: rtmp encode nil value 2024-02-02 10:15:33 +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
6c6a28855d fix: promise never return 2023-11-16 09:55:22 +08:00
langhuihui
8ffe3d3d55 feat: 兼容不规范的 rtp 包 2023-10-27 11:21:58 +08:00
langhuihui
b604cdd2eb feat: pull and push support regexp 2023-09-27 13:17:38 +08:00
langhuihui
934d3cf9d4 fix: fetch summary timeout 2023-09-06 13:36:19 +08:00
langhuihui
f89b75ecb1 fix: memory leak 2023-08-29 09:41:28 +08:00
langhuihui
3d14717f69 feat: speed up sse output 2023-08-21 14:50:56 +08:00
langhuihui
3fac2cd570 feat: add more config format when call Run 2023-08-21 08:45:41 +08:00
langhuihui
81f518c086 fix: stderr_windows 2023-08-18 14:40:11 +08:00
langhuihui
b979636281 feat: make diffrent fatal.log 2023-08-18 12:43:58 +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
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
d3b26d69fc refactor: change Streams to sync.Map 2023-05-23 20:57:26 +08:00
langhuihui
e21f8f765a fix: change tracks to sync.Map to void dead lock 2023-05-21 14:27:57 +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
379e658e24 feat: support EnhancedRTMP 2023-05-04 09:40:18 +08:00
langhuihui
2f71561bcd 修复pool中一处重复计算byteLength的错误,增加PrintTs配置 2023-04-20 13:01:46 +08:00
dexter
bfde37db72 支持多语言日志,增加心跳事件广播,兼容一开始缺少 vps 的流 2023-04-04 20:10:49 +08:00
dexter
25a8add7a7 事件上报 2023-03-28 13:26:54 +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
fd2c7b8cb6 VideoFrame和AudioFrame增加track的指针方便访问track,rtp写入采用内存复用机制 2023-02-26 10:36:37 +08:00
dexter
18fe901a0e rtp判断空包,音频rtp包不判断marker 2023-02-21 21:32:07 +08:00
dexter
10a188a1ac parse config一处判断无效value 2023-02-15 19:32:05 +08:00
dwdcth
4ac71967a0 修复fatal.log分割符输出 2023-02-15 09:25:48 +08:00
banshan
35257ecb2b 修复fatal.log不生成 2023-02-13 16:29:29 +08:00
dexter
b24fd63354 优化HLS写入内存复用 2023-02-11 22:09:47 +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
881fe5abd9 将amf0编码器和解码器放到codec/amf.go中,增加MallocSlice函数用于减少内存复制,
对写入avcc音频进行长度判断
2023-01-16 09:22:16 +08:00