q191201771
|
46c0b47911
|
(1) [refactor] DumpFile增加文件头信息,每个数据块包含类型 (2) [feat] demo/pullrtsp和CutomizePub支持DumpFile (3) [test] 整理DumpFile的测试
|
2 years ago |
q191201771
|
b993ba818c
|
do inner test only once on MacOS to save time
|
2 years ago |
q191201771
|
c5eaa242c4
|
[test] fix sdp test depends on the lal version which could be changed
|
2 years ago |
q191201771
|
6a222ea2de
|
[opt] http-api: relay pull接口增加调试参数,可用于保存rtsp数据用于分析
|
2 years ago |
q191201771
|
e9572aed9e
|
[opt] rtmp2mpegts的时间戳重打从0开始,兼容时间戳太大时vlc播放不了的问题
|
2 years ago |
q191201771
|
de49bd6bb8
|
[feat] HTTP-API增加start_rtp_pub接口(接口内部待实现)
|
3 years ago |
q191201771
|
a036db8131
|
[feat] gb28181: 基本完成PubSession
|
3 years ago |
q191201771
|
44dd886b38
|
[opt] 允许没有输入流时先创建rtsp SubSession
|
3 years ago |
q191201771
|
26a10947e3
|
[refactor] rename HttpSubSession -> BasicHttpSubSession
|
3 years ago |
q191201771
|
60d52898c3
|
[refactor] 整理session stat相关的代码
|
3 years ago |
q191201771
|
56543378d0
|
[patch] HTTPAPI: 1. 完善relay pull回源相关的功能 2. kick_session支持踢掉pull session
|
3 years ago |
q191201771
|
3b6ae774e8
|
[feat] lalserver: HTTP API新增start_relay_pull接口,并同时支持rtmp和rtsp
|
3 years ago |
q191201771
|
8482b9e0c6
|
[refactor] base.AvPacket的时间戳类型修改为int64, avpacket_stream.go移入package base
|
3 years ago |
q191201771
|
f3abd233a3
|
prev commit patch
|
3 years ago |
q191201771
|
6718316ae9
|
[feat] demo: customize_lalserver,演示向lalserver中输入音频加视频
|
3 years ago |
q191201771
|
eb7bb115d8
|
[feat] lalserver支持集成自定义协议的输入流
|
3 years ago |
q191201771
|
8824038415
|
- [refactor] 转换mpegts使用remux.Rtmp2MpegtsRemuxer不再依赖hls.Muxer - [opt] lalserver: relay push增加超时检查,增加带宽统计 - [refactor] 所有interface类型以i字母开头
|
3 years ago |
q191201771
|
93302705c7
|
[feat] httpts支持gop缓冲,提高秒开 #129
|
3 years ago |
q191201771
|
11c412cf84
|
- [refactor] 将rtmp转ts的代码从hls重构至remux中 - [fix] mpegts: 修复单音频场景,有一帧音频重复的问题
|
3 years ago |
q191201771
|
8c0d272fad
|
1. [refactor] 重构logic.Group 2. [test] 修复CI环境的innertest
|
3 years ago |
q191201771
|
c3314bc7d2
|
[test] innertest开启音视频和单音频和单视频三种情况的测试
|
3 years ago |
q191201771
|
f87903761c
|
[test] innertest可测试单音频和单视频的情况
|
3 years ago |
q191201771
|
443c9e39b9
|
1 [test] innertest增加httpts sub测试 2 [refactor] rtmp转mpegts的代码从package hls重构到remux(进行中)
|
3 years ago |
q191201771
|
0f21334964
|
[opt] 支持pkg层面控制日志 #62
|
3 years ago |
q191201771
|
86c4b950db
|
[feat] hls: 增加delete_threshold配置,用于配置过期TS文件的保存时间
|
3 years ago |
q191201771
|
5e5e96f73a
|
[test] innertest增加m3u8文件检测
|
3 years ago |
q191201771
|
f16b1f8d4f
|
- [feat] simple auth增加支持rtsp,httpts,hls协议 - [feat] simple auth鉴权可配置后门鉴权参数 - [opt] simple auth鉴权参数的md5值兼容大小写
|
3 years ago |
q191201771
|
8154e40069
|
[test] innertest http api
|
3 years ago |
q191201771
|
03ccfa0e5f
|
1. rtmp.PushSession和PullSession可配置WriteBuf和ReadBuf大小,以及WriteChanSize 2. 整理完所有error返回值 3. 提高测试覆盖率
|
3 years ago |
q191201771
|
ad547d0010
|
[test] 提高测试覆盖
|
3 years ago |
q191201771
|
eb742feb8d
|
测试各session的ISessionUrlContext接口
|
3 years ago |
q191201771
|
e3578157f4
|
mod messages:
- [perf] rtmp合并发送功能使用writev实现
- [refactor] 可定制性: logic: 抽象出ILalServer接口;业务方可在自身逻辑中创建server,选择是否获取notify通知,以及使用api控制server
- [refactor] 兼容性: 再增加一个配置文件默认搜索地址
- [refactor] 可读性: logic: ServerManager和Config不再作为全局变量使用;去除entry.go中间层;iface_impl.go移入innertest中;signal_xxx.go移入base中
|
3 years ago |
q191201771
|
151db29064
|
[test] 去掉单元测试时不必要的错误日志
|
3 years ago |
q191201771
|
528444e582
|
messages:
- [refactor] 使用httpflv.Tag.Payload()
- [refactor] 新增函数remux.FlvTag2RtmpChunks()
|
4 years ago |
q191201771
|
731bed099a
|
(#87) [refactor] 重构lal整个项目的命名规则
|
4 years ago |
q191201771
|
344a2c82b1
|
messages:
- [feat] HTTP端口复用:HTTP-FLV, HTTP-TS, HLS可使用相同的监听端口。HTTPS类似 #64
- [feat] HTTPS:支持HTTPS-TS, HLS over HTTPS(之前已支持HTTPS-FLV) #66
- [feat] WebSocket:支持WebSocket[s]-TS(之前已支持WebSocket[s]-FLV)#66
- [feat] 配置灵活。增加`default_http`。HTTP-FLV,HTTP-TS,HLS可以独立配置监听地址相关的项,也可以使用公共的`default_http`
- [refactor] 重构httpflv.SubSession和httpts.SubSession的重复代码
|
4 years ago |
q191201771
|
2c5bb92601
|
messages:
- [fix] package rtsp: 修复rtsp aac可能出现崩溃。支持aac fragment格式(一个音频帧被拆分成多个rtp包)
- [feat] lalserver: 新增配置项hls.cleanup_mode,支持三种清理hls文件的模式,具体说明见 https://pengrl.com/lal/#/ConfigBrief
- [doc] 启用英文版本README.md作为github首页文档展示
- [refactor] package rtprtcp: 重构rtp unpacker,业务方可以使用默认的container,protocol策略,也可以自己实现特定的协议解析组包策略
- [refactor] lalserver: 整理配置文件加载与日志初始化部分的代码
- [doc] lalserver: 新增配置项conf_version,用于表示配置文件的版本号
- [doc] lalserver: 启动时日志中增加lal logo
- [doc] 新增文章《rtmp中的各种ID》,见 https://pengrl.com/lal/#/RTMPID
- [doc] 新增文章《rtmp handshake握手之简单模式和复杂模式》,见 https://pengrl.com/lal/#/RTMPHandshake
|
4 years ago |
q191201771
|
3df6ee4027
|
1. [refactor] 使用新的unique id生成器,提高性能 2. [refactor] 统一各Session接口
|
4 years ago |
q191201771
|
942b5da52d
|
messages:
- [feat] rtsp,pull支持interleaved(over tcp)模式。demo/pullrtsp2pushrtmp和demo/pullrtsp可通过运行参数选择是否使用over tcp模式
- [feat] rtsp,pull支持auth digest验证
- [feat] rtsp,pull支持定时发送GET_PARAMETER rtsp message进行保活(对端支持的情况下)
- [fix] rtsp,输入流音频不是AAC格式时,保证视频流可正常remux成其他封装协议
- [fix] rtsp,pull开始时发送dummy rtp/rtcp数据,保证对端能成功发送数据至本地
- [fix] rtsp,将以下包返回给上层:rtsp pub h265, single rtp packet, VPS, SPS, PPS, SEI
- [fix] rtsp,修改rtsp.AVPacketQueue的行为:当音频或者视频数量队列满了后,直接出队而不是丢弃
- [fix] sdp,修复解析及使用sdp错误的一些case
- [refactor] rtmp/httpflv/rtsp,统一所有PullSession:超时形式;Pull和Wait函数
- [fix] avc,尝试解析scaling matrix
|
4 years ago |
q191201771
|
5df6f4b94e
|
commit messages:
- [feat] 新增rtsp pull拉流客户端,`/app/demo/pullrtsp`
- [feat] 实现rtsp pull session
- [feat] rtsp sub支持interleaved模式
- [feat] 新增package remux
- [refactor] 整体重构package rtsp
- [fix] 正确处理大于2字节的AudioSpecificConfig
|
4 years ago |
q191201771
|
80e4a83067
|
[fix] windows undefined syscall.Kill, use logic.Dispose in pkg innertest directly
|
4 years ago |
q191201771
|
0f94f8d4b2
|
1. [feat] 支持HTTP-TS长连接拉流 2. [feat] 在hls直播基础上,同时支持hls录制回放功能
|
4 years ago |
q191201771
|
ee8de29f7e
|
messages:
- [feat] package rtsp: 支持rtp h264 STAP-A格式
- [fix] package avc: 修复解析sps中PicOrderCntType为2无法解析的bug
- [fix] package sdp: 修复解析sdp fmtp中aac config长度大于4无法解析的bug
- [refactor] package logic: 重构Group,将不同类型的输入流、输出流进行抽象,逻辑统一
- [refactor] package rtprtcp: 将RTPComposer重命名为RTPUnpacker
- [test] 使用wontcry30s.flv作为单元测试用的音视频文件
- [chore] 使用Makefile管理build, test
- [chore] CI跑1.9和master两个Go版本,跑linux、macos、windows三个平台,跑build和test两个脚本
- [doc] 增加文档: https://pengrl.com/p/20080/
|
5 years ago |
q191201771
|
afb7850b87
|
messages:
- [feat] lalserver集成rtsp pub功能。支持接收rtsp(rtp/rtcp)推流,转换为rtmp,httpflv,hls格式供拉流使用
- [refactor] 新增package sdp,rtprtcp,将package rtsp中对应的内容独立出来
- [refactor] 新增package base,整理lal项目中各package的依赖关系。该工作还在进行中
- [feat] package rtmp: 增加BuildMetadata函数
|
5 years ago |
q191201771
|
4f8757579f
|
messages:
- [feat] 部分rtsp代码,目前已经粗略完成pub的前期交互,可接收到rtp,rtcp数据
- [test] innertest中对hls生成的文件做md5验证
- [refactor] 整理日志
- [doc] 增加PR规范
- [chore] 下载单元测试用的test.flv失败,本地文件大小为0时,去备用地址下载
- [refactor] 所有回调函数的名字,从CB后缀改为On前缀
|
5 years ago |
q191201771
|
353f837c8e
|
messages:
- [feat] lalserver增加回源功能
- [fix] rtmp.AMF0.ReadObject函数内部,增加解析子类型EcmaArray。避免向某些rtmp服务器推流时,触发断言错误
- [fix] 解析rtmp metadata时,兼容Object和Array两种外层格式
- [refactor] 重写了lalserver的中继转推的代码
|
5 years ago |
q191201771
|
b3024c8a4e
|
messages:
- [feat] lalserver增加中继转推(relay push)功能,可将接收到的推流(pub)转推(push)到其他rtmp类型的服务器,支持1对n的转推
- [feat] package rtmp: 新增函数amf0::ReadArray,用于解析amf array数据
- [refactor] `rtmp/client_push_session`增加当前会话连接状态
- [fix] demo/analyseflv: 修复解析metadata的bug
- [perf] httpflv协议关闭时,不做httpflv的GOP缓存
- [refactor] logic中的配置变更为全局变量
- [refactor] lal/demo移动到lal/app/demo
- [refactor] 日志整理
|
5 years ago |
q191201771
|
9af3b44753
|
Changes:
- [refactor] app/lals重命名为app/lalserver,避免描述时容易和lal造成混淆
- [refactor] 将app/lalserver的大部分逻辑代码移入pkg/logic中
- [test] 将所有package的Server、Session等内容的实例测试收缩至package innertest中,多个package都可以共用它做单元测试
- [refactor] lalserver配置中增加显式enable字段,用于开启关闭特定协议
- [refactor] 各package的Server对象增加独立的Listen函数,使得绑定监听端口失败时上层可以第一时间感知
- [feat] demo/analyseflv,增加I帧间隔检查,增加metadata分析
- [fix] package avc: 修复函数CalcSliceType解析I、P、B帧类型的bug
- [refactor] package aac: 函数ADTS::PutAACSequenceHeader检查输入切片长度
- [reafactor] package aac: 删除函数CaptureAAC
- [feat] 增加demo/learnrtsp,pkg/rtsp,开始学习rtsp
|
5 years ago |